Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!rutgers!mit-eddie!genrad!decvax!tektronix!uw-beaver!ssc-vax!uvicctr!collinge From: collinge@uvicctr.UUCP (Doug Collinge) Newsgroups: comp.sys.atari.st Subject: Unix on ST (modest proposal) Message-ID: <213@uvicctr.UUCP> Date: Thu, 8-Jan-87 00:47:27 EST Article-I.D.: uvicctr.213 Posted: Thu Jan 8 00:47:27 1987 Date-Received: Fri, 9-Jan-87 21:37:22 EST References: <8701022135.AA07189@ucbvax.Berkeley.EDU> <7472@utzoo.UUCP> <539@eneevax.UUCP> <10979@sun.uucp> Reply-To: collinge@uvicctr.UUCP (Doug Collinge) Organization: University of Victoria, Victoria B.C. Canada Lines: 34 I am not a Unix guru but I think Henry has made a mistake saying that fork() can't be done without an MMU. Here's how: - parent calls fork() - copy data space of parent to a swapping buffer or device. - run parent until she blocks or you get sick of her. - when you want to run the child exchange the contents of the swapping buffer with the data space of the parent. - usually the child will diddle a bit with its data space then exec something else. When he does we exchange the data once more, throw away the swapping buffer, and start up the new process in a newly-allocated area. No more swapping. Of course, the swapping would be pretty tedious for our CPU but we wouldn't really be doing it very often, only when we start up a new process most of the time. So, assuming that we only have three or four processes in our ST I wouldn't expect it to be gross - we have to wait for the disks to spin anyway. Besides, isn't it remarkable how good a blitter the 68k makes? My friend David Harris (C/O me) suggested using the blitter to do the swapping - nice idea. I suggest that a little gizmo could be hooked onto the DMA port that would do the job but it would have to have a buffer in it I guess, probably too expensive. Anyway, I think this could be quite workable on a single user computer like the ST. But I probably have overlooked some guru-some fact of Unix daily life. How about it, Henry? -- Doug Collinge School of Music, University of Victoria, PO Box 1700, Victoria, B.C., Canada, V8W 2Y2 decvax!nrl-css!uvicctr!collinge decvax!uw-beaver!uvicctr!collinge ubc-vision!uvicctr!collinge