This course presents the foundations of computer architecture and organization as well as the fundamentals of operating systems. It covers the basic composition and functionality of a computer, starts from individual components and derives larger units from them. An important aspect is the understanding of mathematical foundations underlying computer circuits, which is why the course takes students from Boolean functions to adders, multiplexers, PLAs, and storage. The result is the basic von Neumann model of a sequential machine, which is treated from a modern perspective. Based on this understanding of computer hardware, the course then deals with the fundamentals of operating systems. Operating systems provide elementary functionality which interacts with specific hardware and provides abstract services for applications that do not need to know details about specific hardware. Typical functionality and services include resource and memory managesoftware enment, process management and processor scheduling, I/O, as well as protection and security mechanisms, all of which are addressed in class. Thus, this course forms the basis for understanding hardware and software interactions in larger systems.
Academic: Solid understanding of computer organization and the interaction of hardware and operating software. Soft skills: Independent and interactive work with a simulation tool, individually as well as in groups.
|Number of credit hours per week||6|
|Presence of students||On-campus|