Added waitpid() - Changed process table spinlock to lock and waited waitchans to CVs - Process structs (without AS) hang around after exit if parent hasn’t exited; cleaned up when the parent exits.