Date: Thu, 24 Jun 93 09:33:46 EDT To: burger AT Mailer DOT Uni-Marburg DOT DE Subject: Re: pipes and forks From: engdahl AT brutus DOT aa DOT ab DOT com (Jonathan Engdahl) Reply-To: engdahl AT brutus DOT aa DOT ab DOT com Cc: djgpp AT sun DOT soe DOT clarkson DOT edu > Has anyone out there code that emulates pipes and forks? > Hopefully, using the standard unixish commands? Where possible, > emulating multitasking by pseudotasking, and, where not possible, > yelling an error message? This would greatly simplify porting software, > and should be part of libc.a. I have vfork, wait, spawn, exec, and exit working. I have used these to port make-3.65 with minimal changes to the sources. I have been working on getting the shell working better, and getting make to recover successfully after shell has been spawned. This will be made available when it is ready. I have been distracted for about a week by my new packet radio system, but I guess I am about ready to start back in. It works by creating a table of 32 task slots. Setjmp and longjmp are used to load and store contexts. The only nonportable code is found in the creation of the new stack in vfork. The stubs for pipes are in my code, but I may not need them to port "make", so they may come later - I'm not sure yet. -- Jonathan Engdahl, Sr. Project Engineer | engdahl AT aa DOT ab DOT com N8XVY 313-998-2450 Allen-Bradley Co. | A Rockwell International Company 555 Briarwood Circle, | Industrial Communication Networks Ann Arbor, MI, 48108, USA | system design, software, ASICs