March 7, 2011

Here comes vfork()!

I finally got vfork() working. It's about time...

There is no screenshot this time, since it won't show much, but I know it's working because when I first got it working, init (process 1) was taking up about 100% cpu time while the shell (process 2) waited for user input. I could tell init was running in the background because the activity indicators were running full steam. What this means is that we have full multitasking!! The only major component missing now from having a complete system is the file system.

I haven't merged the code into the trunk yet, as I still want to fix a few related system calls before doing so (such as wait()). If you're interested in seeing the code before then, check out the "vfork" branch in the SVN repository:

svn co https://punix.svn.sourceforge.net/svnroot/punix/branches/vfork