Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!cs.utexas.edu!uunet!bfmny0!tneff From: tneff@bfmny0.UUCP (Tom Neff) Newsgroups: comp.realtime Subject: Re: Lightweight Tasks Message-ID: <14502@bfmny0.UUCP> Date: 1 Aug 89 13:39:16 GMT References: <2153@gmu90x.UUCP> <129300004@p.cs.uiuc.edu> <1244@atanasoff.cs.iastate.edu> Reply-To: tneff@bfmny0.UUCP (Tom Neff) Organization: ^ Lines: 17 Intel's iRMX series of realtime multitasking OS's also embody the lightweight task idea. Tasks own little more than a priority and a stack plus a few flags for the dispatcher to look at (like whether to restore the numeric coprocessor's context). The goal is to make creating and using tasks very cheap, so embedded systems can run reliably and fast. iRMX uses the "job" to contain all the extra bushwah associated with UNIX "processes." Jobs own resources, user IDs and so forth. It works quite well. (If anyone but Intel had come up with it, it'd probably be the standard by now. :-) ) As I see it UNIX jams the two disparate "job" and "task" concepts together into one unhappy identity (the process) to the detriment of performance. That's why special "real time" UNIXen are necessary to begin with. -- "We walked on the moon -- (( Tom Neff you be polite" )) tneff@bfmny0.UU.NET