Graduate Computer Science

CS G712: Intensive Computer Systems

Studies the structure, components, design, implementation, and internal operation of computer systems, focusing mainly on the operating system level. Briefly reviews computer hardware and architecture, including the arithmetic and logic unit, and the control unit. Covers current operating system components and construction techniques, including the memory and memory controller, I/O device management, device drivers, memory management, file system structures, and the user interface. Briefly discusses distributed operating systems, real time systems and addresses issues such as concurrent processes, scheduling, interprocess communication and synchronization. Some relevant distributed algorithms will be discussed as time allows. The course will also cover design and analysis techniques for desirable properties in computer systems selected from the following: functional correctness (in the absence of faults), performance and throughput, fault-tolerance and reliability, real-time response, security, and quality-of-service. Includes examples from real operating systems. The course will emphasize abstraction while programming exercises will be used to facilitate the understanding of concepts.
Credit hours: 4
Course offerings: