From owner-freebsd-questions Sat Dec 9 22:03:00 1995 Return-Path: owner-questions Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id WAA00347 for questions-outgoing; Sat, 9 Dec 1995 22:03:00 -0800 (PST) Received: from who.cdrom.com (who.cdrom.com [192.216.222.3]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id WAA00229 for ; Sat, 9 Dec 1995 22:02:46 -0800 (PST) Received: from genesis.atrad.adelaide.edu.au (genesis.atrad.adelaide.edu.au [129.127.96.120]) by who.cdrom.com (8.6.12/8.6.11) with ESMTP id VAA02135 for ; Sat, 9 Dec 1995 21:22:22 -0800 Received: from msmith@localhost by genesis.atrad.adelaide.edu.au (8.6.12/8.6.9) id PAA15082; Sun, 10 Dec 1995 15:59:22 GMT From: Michael Smith Message-Id: <199512101559.PAA15082@genesis.atrad.adelaide.edu.au> Subject: Re: ****HELP***** To: jgoerzen@complete.org (John Goerzen) Date: Sun, 10 Dec 1995 15:59:22 +0000 () Cc: questions@freebsd.org In-Reply-To: <199512072254.QAA01033@complete.org> from "John Goerzen" at Dec 7, 95 04:54:53 pm MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-questions@freebsd.org Precedence: bulk John Goerzen stands accused of saying: > > > Obviously not very experienced with UNIX. If any of the programs > > you are attempting to overwrite happen to be running, you won't be > > able to open them for writing, even as root. You'll obtain EBUSY > > Why would they be running if you boot of the install floppy? Cross purposes here; he's talking about upgrading over a running system. > It would seem to me that to overwrite a file _should_ make the > change in-place, that is, without having to delete, recreate, etc. > At least, that's what DOS and OS/2 do, and I wonder why FreeBSD > would be worse? You don't understand how executable files are handled by FreeBSD. When a program is run, its file effectively becomes a read-only part of the swap space, and parts of the file are swapped in as required to be run. This means that while the program is running, the file can't be changed, or the running program would crash. If you delete the file, it's still referenced (by the kernel, which is running the program), so while the directory entry goes away, the file still exists and the program runs fine. Once you've done this, you can create a new file and matching directory entry without causing any problems. Having said this, I'm fairly sure that the extraction process as currently implemented does actually do the Right Thing. > John Goerzen, programmer and owner | MICRO$oft only exists because some -- ]] Mike Smith, Software Engineer msmith@atrad.adelaide.edu.au [[ ]] Genesis Software genesis@atrad.adelaide.edu.au [[ ]] High-speed data acquisition and (GSM mobile) 041-122-496 [[ ]] realtime instrument control (ph/fax) +61-8-267-3039 [[ ]] "Who does BSD?" "We do Chucky, we do." [[