|
- Understand the major mechanisms of current general-purpose operating systems exemplified by Linux.
- Appreciate the design space and trade-offs involved in implementing an operating system.
- Be capable of basic system-oriented programming and providing simple extensions to an operating system.
- Understand the exploitation of vulnerabilities and privilege escalation
Project for TCS students:
- Integrate the knowledge and skills that are taught in the CAO and OS parts.
|
|
Introduction
The module Computer Systems is part of the second year of both the EE- and TCS- bachelor program. It addresses the basics of computer systems (organization and architecture) and offers a specialization into digital hardware design for EE bachelors and operating systems for TCS bachelors. In the project for TCS students, which is mainly dealt with in the last two weeks of the module, TCS students cooperate to design and realize a system integrating all subjects of the first 8 weeks. Within the TCS curriculum, the following topics are included as Cross Cutting Concerns: academic skills, system development, concurrency, and security. All these topics are covered within the module Computer Systems as well. Besides that, 1 EC is reserved for the subject “ICT and Law".
Operating Systems (OS)
An operating system is a resource manager; it basically ensures that all users get their fair share of the resources. The focus is on generic operating system concepts with illustrative examples from Linux wherever appropriate. Topics covered include the structure of the operating system, processes and threads, concurrency, deadlock and starvation, memory management, I/O management and file systems, access control, threats, protection and security. Students will be using mainly Rust and C, and some Java or Python.
Project
In the Module CS project, students learn various techniques from different disciplines that are needed to design, implement and test a (prototype of) a combined hardware-software system. To be able to design, implement and test a combined hardware-software system, knowledge and skills concerning Computer Architecture and Organization (CAO), Operating Systems (OS), and basic mathematics are necessary.
|
 |
|
|
|
 Assumed previous knowledge(additional) requirement(s) for minor students: Maths A level or equivalent and basic programming skills |
Bachelor Technical Computer Science |
| | Required materialsBookAll: Computer Architecture and Organization; An Integrated Approach; Miles J. Murdocca and Vincent P. Heuring;
ISBN 978-0-471-73388-1 |
 | Course materialEE: Calculus, a complete course, Robert A Adams, 8th Edition, ISBN: 9780321781079 |
 | Course materialTCS: Discrete and Combinatorial Mathematics and its Applications” (5e druk) van Ralph P. Grimaldi ISBN 0-321-21103-0 (paperback), 0-201-72634-3 (hardcover). |
 | Course materialProvided by the university for free:
Hardware kit:
- Breadboard (small),
- Breadboard Jumper kit (pins on one side, sockets on the other side),
- Led 5mm,
- LDR (light dependent resistor),
- Resistor 330 ohms through hole,
- Resistor 1Kohms,
- Capacitor 10uF
Pi kit:
- Raspberry Pi model 4- Pi Housing
- Power supply with USB type C cable
- Ethernet cable
- MicroSD card 32 GB
- Micro HDMI to HDMI adapter |
 | Course material- Laptop computer with Ethernet jack and SD card reader (Windows, Linux or MacOS is fine, USB SD card readers or USB Ethernet adapters are fine as well). A tablet computer (IPad, Android) or a desktop machine is not recommended. |
 |
|
 Recommended materials-Instructional modes Lecture 
 | Practical 
 | Project supervised 
 | Self study with assistance 
 | Self study without assistance 
 | Tutorial 
 |
| Tests Operating Systems
 |
|
| |