Message-ID: <327FF2E8.68B4@gbrmpa.gov.au> Date: Wed, 06 Nov 1996 10:07:37 +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: stwand07 AT uctvms DOT uct DOT ac DOT za 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> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit > I have a friend who has developed a real-time, multiprocess, threaded, > object-orientated, event-driven kernel. Currently it runs on the 8086 > processor, and consists of C++ with Assembly code for the "inner magic". On an 8086? Are you sure? > He is interested in porting this to djgpp (protected mode 80386+). Of course, > he will need to re-code the ASM code for GAS, but I am wondering if it is > possible for him to implement his system on top of a DPMI host. Sounds like a question for Charles! :) But I think if you check through the mail archives, there was a thread of this sort not long ago. I think the end result was that multi-processing was possible, but would require major rewrites of some core sections of the compiler...threading was possible on top of DPMI. object orientated - I don't really get this bit, and event-driven stuff was a bit more edgy (hey, a new word! :) Can someone clarify this? Basically I have gone to using Win95 for multiple DOS shells if I require them, and using the lwp package for multiple threads in my program if they are required... > As it is, his kernel handles all memory allocation, but uses DOS for I/O (using > a semaphore I think, cause DOS isn't always re-entrant). Anyway, is it > possible to install timer, keyboard, and user memory handlers on top of a DPMI > host ? (The interrupt routines should be easy, right?) It'll be really cool > if this system is ported to djgpp, so any feedback is appreciated. The fact that this guy wrote this on a 8086 is impressive - how much free ram do you have after you run it? ;) The DPMI host would handle memory allocation, and all the interrupts are fully implementable under DPMI... > (Oh, the kernel is also distributed, ie. events and processes can be sent > between machines on a network, but this is still in development). Sorry, just can't get passed the 8086 bit... Are you SURE it was on an 8086??? Is it just me, or would writing on the 8086 be more hassle than its worth... Leathal.