Message-ID: <32813B7E.79E2@gbrmpa.gov.au> Date: Thu, 07 Nov 1996 09:29:34 +0800 From: Leath Muller Reply-To: leathm AT gbrmpa DOT gov DOT au Organization: Great Barrier Reef Marine Park Authority MIME-Version: 1.0 To: Mark Wodrich CC: djgpp AT delorie DOT com Subject: Re: Porting real-time, multiprocess, distrib. OS Kernel to djgpp? References: <1996Nov5 DOT 133017 AT uctvms DOT uct DOT ac DOT za> <327FF2E8 DOT 68B4 AT gbrmpa DOT gov DOT au> <01bbcc19$46d910a0$22901ac4 AT mark-s-pc> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit > > On an 8086? Are you sure? > Yes, I'm sure! ;-) The system uses the system timer to do task switching, > and provides access to kernel routines through a software interrupt (much > like DOS does). The code is designed to be portable, ie. not rely on > "fancy" processor modes. He will be working on a Motorola 68k port as part > of his Masters degree, so it may be easier to tackle the djgpp port once > this has been done. Excellent. It would be easier to write this under a 68000 than a 8086 of course, but I see no reason why this kernel couldn't be written on top of csdpmi w/ DJGPP (I had a rummage through the source for r3 of csdpmi last night... :) > > object orientated - I don't really get this bit, > By object-orientated, I mean that it transparently supports C++ methods > being invoked in response to an event. Events are just messages which are > generated by hardware (keyboard,mouse,cards), or processes running on the > machine (or network!). The kernel checks who is "registered" for an event, > and creates a process for any C++ methods required to run in. Oh, I just couldn't see any difference to this and a normal C task...but then, I don't know much about C++! > > The fact that this guy wrote this on a 8086 is impressive - how much > > free ram do you have after you run it? ;) > The kernel sits on top of DOS, and is pretty small (< 64Kb), so you have > around 500Kb left in real-mode DOS. If the kernel is _that_ small, then it should end up pretty close to the same size using csdpmi for the memory allocation, virtual memory control, etc... > Once again, as far as I know all this works on an 8086. Obviously it was > not trivial to implement... If there is more interest I'll ask the author > to try to explain stuff himself, since I only know second-hand info. Well, if it's 64k, it would run well on an 8086. Now, if you can just convince him to port it to DJGPP... :) > Adios > Mark. Leathal.