CS471/571 - Operating Systems


  1. Exercise #1:

    Creating processes and pipes to transfer data between them.

  2. Exercise #2:

    Get the resource usage from a spawned command.

  3. Exercise #3:

    Creating basic commands in Xv6.

  4. Exercise #4:

    Creating an iostat() system call and a command to use it in Xv6.

  5. Exercise #5:

    Converting a program to use threads with pthreads.

  6. Exercise #6:

    Creating Unix/Linux commands to interact with an Xv6 filesystem.

  7. Exercise #7:

    Dynamic run-time linking the math library.

  8. Exercise #8:

    Add process scheduling priority (niceness) to Xv6.

  9. Exercise #9:

    Decode the VDSO elf object to get the time.