CPSC V 436A A 101 2024W
In this course, students will gain a comprehensive understanding of the challenges and complexities involved in designing and implementing modern operating systems. They will enhance their expertise in systems design, software engineering, project management, and teamwork through hands-on experience. The course explores key operating system concepts, including memory management, scheduling, inter-process communication, inter-core synchronization, and protection mechanisms. Particular emphasis is placed on the development of system architectures that diverge from the traditional monolithic structures of Unix/Linux and Windows. In small groups, students will collaborate to design and build a fully functional operating system, applying knowledge learned in this course and others to a complex software engineering task.