Course description:
This course is designed to equip students with a substantial hands-on experience in solving concrete problems in a computer operating system, via programming, in a laboratory intensive course. Students experiment with many topics in the areas of operating systems and network protocols, including but not limited to: boot loaders, shell, process scheduler, file system, virtual memory, network protocols and packet filtering and manipulation, and device drivers.