• rsc's avatar
    · f32f3638
    rsc authored
    Various cleanup:
    
     - Got rid of dummy proc[0].  Now proc[0] is init.
     - Added initcode.S to exec /init, so that /init is
       just a regular binary.
     - Moved exec out of sysfile to exec.c
     - Moved code dealing with fs guts (like struct inode)
       from sysfile.c to fs.c.  Code dealing with system call
       arguments stays in sysfile.c
     - Refactored directory routines in fs.c; should be simpler.
     - Changed iget to return *unlocked* inode structure.
       This solves the lookup-then-use race in namei
       without introducing deadlocks.
       It also enabled getting rid of the dummy proc[0].
    f32f3638