From owner-freebsd-hackers Sun Sep 7 15:34:32 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id PAA14890 for hackers-outgoing; Sun, 7 Sep 1997 15:34:32 -0700 (PDT) Received: from brickbat9.mindspring.com (brickbat9.mindspring.com [207.69.200.12]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id PAA14885 for ; Sun, 7 Sep 1997 15:34:27 -0700 (PDT) Received: from bogus.mindspring.com (user-38lc58v.dialup.mindspring.com [209.86.21.31]) by brickbat9.mindspring.com (8.8.5/8.8.5) with SMTP id SAA01401; Sun, 7 Sep 1997 18:34:23 -0400 (EDT) Message-Id: <1.5.4.32.19970907223328.008be880@mail.mindspring.com> X-Sender: kpneal@mail.mindspring.com X-Mailer: Windows Eudora Light Version 1.5.4 (32) Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sun, 07 Sep 1997 18:33:28 -0400 To: Terry Lambert From: "Kevin P. Neal" Subject: Re: Divert sockets.. Cc: freebsd-hackers@FreeBSD.ORG Sender: owner-freebsd-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk At 02:15 PM 9/7/97 +0000, Terry Lambert wrote: >There are a lot of general uses, besides PPP, for interface event >notification. PPP just uses one of them. >let you sleep waiting for a packet "event". But there is no general >event interface, even though it's becoming more and more of a kludge >to not have one (e.g.: say I want to register for a directory change >event because I'm a file browser, and I want to see files show up >immediately, not after 10's of seconds when my poll-the-directory >timer fires off). Well, the Amiga OS had a system for message transferral. You would set up a message port. Do stuff. Then when you have nothing to do you sleep, waiting on a signal. When you get a signal (because you got a message at one of your message ports) then you wake up and check the message. The GUI notified you of events via just this messaging scheme. ARexx programs could direct you to do stuff through another message port. This was so common that most programs main loop's were just a simple Wait() Get Message() Copy Data Out of message Reply Message() Do Stuff() Loop back to Wait(). The File Notification scheme (useful for Terry's file browser) may have used this messaging scheme as well (I honestly don't remember). You certainly could be notified of disk change events (floppy insert/removal, later removable HD change) through messages. Now, here's the question: How difficult would it be to do something like this? It would take some sort of shared memory or other scheme to get the data from one program to another. Or would that be too general? How about just a scheme to get messages to and from the kernel? I love my Amiga, still use it. In fact, I just got NetBSD up and running on it day before yesterday. Bonus. -- XCOMM Kevin P. Neal, Junior, Comp. Sci. - House of Retrocomputing XCOMM mailto:kpneal@pobox.com - http://www.pobox.com/~kpn/ XCOMM kpneal@eos.ncsu.edu Spoken by Keir Finlow-Bates: XCOMM "Good grief, I've just noticed I've typed in a rant. Sorry chaps!"