From owner-freebsd-hackers Fri Jul 28 19:13:28 1995 Return-Path: hackers-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.11/8.6.6) id TAA18447 for hackers-outgoing; Fri, 28 Jul 1995 19:13:28 -0700 Received: from UUCP-GW.CC.UH.EDU (UUCP-GW.CC.UH.EDU [129.7.1.11]) by freefall.cdrom.com (8.6.11/8.6.6) with SMTP id TAA18428 for ; Fri, 28 Jul 1995 19:13:24 -0700 Received: from Taronga.COM by UUCP-GW.CC.UH.EDU with UUCP id AA14232 (5.67a/IDA-1.5); Fri, 28 Jul 1995 20:47:44 -0500 Received: by bonkers.taronga.com (smail2.5p) id AA13326; 28 Jul 95 20:19:27 CDT (Fri) Received: (from peter@localhost) by bonkers.taronga.com (8.6.11/8.6.6) id UAA13323; Fri, 28 Jul 1995 20:19:26 -0500 From: Peter da Silva Message-Id: <199507290119.UAA13323@bonkers.taronga.com> Subject: Re: your mail To: jkh@time.cdrom.com (Jordan K. Hubbard) Date: Fri, 28 Jul 1995 20:19:25 -0500 (CDT) Cc: hackers@freebsd.org In-Reply-To: <8635.806962669@time.cdrom.com> from "Jordan K. Hubbard" at Jul 28, 95 01:17:49 pm X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 1348 Sender: hackers-owner@freebsd.org Precedence: bulk > > > > I disagree. Oh, not in the user interface model, but in the file system > > > > and process model. It takes the UNIX "everything is a file" a logical > > > > evolutionary step forward. > > > Oh great. One of UNIX's worst abortions, taken to extremes (can you > > > say "ioctl() is a bogus ``API'' for controlling behavior?" I thought > > > so).. > > Plan 9 doesn't have IOCTL at all. Just about everything is done with open, > > close, read, and write. > So how do you do "out of band" operations, like telling a tape > drive to skip forward to the next mark? The tape has a "data" and a "control" device. You write commands to the control device. You can read all the Plan 9 papers at plan9.att.com, and there's a lot of very interesting stuff in there. For example, mounts are local to the process, like current directory and environment variables are for UNIX. So when a program is running under 8 1/2 it has a set of devices for the screen and mouse visible. When you run 8 1/2, it opens the *same* devices, so you can run 8 1/2 in a 8 1/2 window... One of the devices is /dev/bitblt. Backups are handled the same way, and you can do things like: find 1995/07*/sys/src/cmd -name '*.c' | xargs grep -i bug If you want to work on the system as it was in July 1995, you do: bind("1995/0701/sys/src", "/sys/src", REPLACE) ...