Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxn!ihnp4!qantel!lll-lcc!lll-crg!seismo!brl-adm!brl-smoke!smoke!rbj@icst-cmr From: rbj@icst-cmr (root) Newsgroups: net.lang.c Subject: Re: multitasking in one process (4.2BSD) Message-ID: <393@brl-smoke.ARPA> Date: Tue, 29-Apr-86 13:29:07 EDT Article-I.D.: brl-smok.393 Posted: Tue Apr 29 13:29:07 1986 Date-Received: Fri, 2-May-86 09:34:02 EDT Sender: news@brl-smoke.ARPA Lines: 34 > > I an not aware of the situation for C++, but there is a stand alone > > Multitasking package avaiable for C (for free). It runs under Unix, > > is compatible with dbx, and can be set to interleave the execution of > > the arbitrary number of tasks every instruction if so desired. It > > I had the mispleasure of porting an application on a standalone > 68000 to a Sun. Only problem was that the application was a set of > multitasking procedures that shared a lot of data structures. > > For efficiency, my only choice was to get the whole mess to run as > one UNIX process. The result is an operating system in a process. > > Unlike what is described above, scheduling is based upon timers, > ASTs (ala VMS) or waiting for an event. While a bitch to debug > itself (mainly because of the 4.2 software timers), you can play > with your whole system under dbx, watching every process. > > It's certainly free. Let me know if anyone is interested. If > there are enough requests, I might even document it and send it to > mod.sources. > > Don Libes {seismo,umcp-cs}!nbs-amrf!libes I once did a similar thing, except it was pretty much round robin and each task checked it's input queue each cycle for work to do. All we had to to was save our regs on our stack, point to the next proc entry, switch stack ptrs (need assembly for this) restore regs and go! Even this provided it's share of education tho! How strange to be sending this cross town & back when I am only a few hundred feet away from you physically (B358 Bldg 223). (Root Boy) Jim Cottrell "One man gathers what another man spills"