From owner-freebsd-chat Mon Sep 8 23:41:38 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id XAA08483 for chat-outgoing; Mon, 8 Sep 1997 23:41:38 -0700 (PDT) Received: from news.IAEhv.nl (root@news.IAEhv.nl [194.151.64.4]) by hub.freebsd.org (8.8.7/8.8.7) with SMTP id XAA08467 for ; Mon, 8 Sep 1997 23:41:33 -0700 (PDT) Received: from LOCAL (uucp@localhost) by news.IAEhv.nl (8.6.13/1.63) with IAEhv.nl; pid 28187 on Tue, 9 Sep 1997 06:41:32 GMT; id GAA28187 efrom: peter@grendel.IAEhv.nl; eto: freebsd-chat@freebsd.org Received: (from peter@localhost) by grendel.IAEhv.nl (8.8.5/8.8.5) id AAA00893; Tue, 9 Sep 1997 00:57:45 +0200 (CEST) Message-ID: <19970909005744.16904@grendel.IAEhv.nl> Date: Tue, 9 Sep 1997 00:57:44 +0200 From: Peter Korsten To: freebsd-chat@freebsd.org Subject: Re: Divert sockets.. References: <19970908081913.36000@pavilion.net> <24706.873711236@time.cdrom.com> <199709081245.OAA29626@bitbox.follo.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.67e In-Reply-To: <199709081245.OAA29626@bitbox.follo.net>; from Eivind Eklund on Mon, Sep 08, 1997 at 02:45:42PM +0200 Sender: owner-freebsd-chat@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Eivind Eklund shared with us: > > [Josef Karthauser ] > > > That's not entirely true. Is it? The 4000 had memory protection and the > > > same O/S. (a500 ran 68000, a4000 ran 68030/40). > > [Jordan K. Hubbard] > > It didn't matter - the way the AmigaDOS service calling conventions > > were designed, you needed to be able to share memory trivially (and > > unprotectedly) with the OS so ye old Guru Meditation was still a > > frequent visitor even with a 68040 chip inside. Only of you used - or wrote - broken software. I've gotten a bit an arrogant approach towards programming after I managed to write programs on my Amiga that didn't crash (the system) and freed all of their allocated memory. :) The difference with Windows and Unix is that you get a 'the appli- cation had performed an illegal operation and will be shut down' or 'segmentation violation' error with those, and the Amiga would give you a 'software error' with the advice to restart the machine. Actually, you had to do quite a lot of harm to get a Guru Meditation (the name comes from the time that Amiga Computers, Inc. still made joysticks and the developers used some kind of twister-like input device to practice staying perfectly balanced while thinking about a problem) right away, without the 'software error' requester. Ah well, GetMsg() simply returned simply the address of that message, but GetMsg()/ReplyMsg() could have been simply adapted to actually copy the message into the memory space of the application that got the message, and free it again. I admit that it's a bit late to make this suggestion. :) > This is actually not quite correct. AmigaOS was partially designed to > allow a fairly high level of memory protection, but unfortunately some > parts allocated by user programs would still have to be publicly > available. And nobody bothered to specify which parts that was. A > real pity; most of the Amiga architecture was beautiful. (LOTS of it > was better than Unix, IMHO) Indeed, indeed. The fact that not everything is a file, for instance? Where are the days that you could call BltMaskBitMapRastPort() or SwapBitsRastPortClipRect() and get away with it? :) Backwards compatibility is one of the things that killed the Amiga (though not it's devoted users, who are a _lot_ more fanatical than the people worshiping deceased royalties or overweight rock-and-roll kings). Event the Amiga 4000/040 was completely hardware compatible with the Amiga 1000. Well, Commodore going belly-up might have had something to do with it, too. And every OS function was in a library. You could replace any part of the OS with a function or a library of your own, if you wanted to. (Which made it exceptionally suitable for virusses, too.) Even things like the scheduler could be patched. Aah, those were the days. What, is it 1997 already? :) - Peter