Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!columbia!rutgers!caip!cbmvax!higgin From: higgin@cbmvax.cbm.UUCP (Paul Higginbottom) Newsgroups: net.micro.amiga Subject: Re: An Idea for an ambitious programmer Message-ID: <860@cbmvax.cbmvax.cbm.UUCP> Date: Wed, 8-Oct-86 18:13:12 EDT Article-I.D.: cbmvax.860 Posted: Wed Oct 8 18:13:12 1986 Date-Received: Thu, 9-Oct-86 05:37:43 EDT References: <762@oswego.UUCP> Reply-To: higgin@cbmvax.UUCP (Paul Higginbottom) Distribution: net Organization: Commodore Technology, West Chester, PA Lines: 23 Keywords: fork() In article <762@oswego.UUCP> jacs4440@oswego.UUCP (Mark Reichert) writes: > I don't have time to work out the numerous details of this, but it would >be really nice if someone out in netland, would try to write the equivalent >of UN*X's fork() syscall. Execute() is nice and all, but sometimes, fork() >would be so much nicer. Maybe someone at C-A could help out a little here. > >ps. while you're at it, exec() would also be nice. > > - mark The exec() and fexec() family of functions are supplied as part of Manx's Aztec C library. They are "trivial" compared to a fork() function. The big problem would be trying to get the new "clone" of the program to start executing in the same "state" as the original. This would mean (as far as I can tell) copying stacks (and adjusting addresses, ugh), initializing all the task stuff appropriately to the original... doesn't sound easy. To get the same program running from the BEGINING isn't hard by using fexecv(). Paul. Disclaimer: I do not work for Commodore, and my opinions are my own.