Computer systems
CS-202 / 8 credits
Teacher(s): Argyraki Aikaterini, Chappelier Jean-Cédric, Kashyap Sanidhya
Language: English
Summary
This course will teach operating systems and networks in an integrated fashion,emphasising the fundamental concepts and techniques that make their interaction possible/practical. Core lectures will be coupled with C programming lectures and assignments for hands-on experience.
Content
We will communicate these concepts and techniques through examples at different layers of the stack and draw connections/parallels between different aspects of computing systems.
- The role of the Operating System
- File systems
- Virtual memory
- Efficient resource management
- Networked applications
- The Internet
- Transport layer
- Network layer
- Link layer
- Data-centers and cloud systems
Learning Prerequisites
Required courses
- CS-107 Introduction à la programmation
- CS-108 Pratique de la programmation orientée-objet
- CS-173 Fundamentals of Digital Systems
Important concepts to start the course
- Basic Programming
- Basic computer architecture
Learning Outcomes
By the end of the course, the student must be able to:
- Manage key elements of operating systems and networks
- Critique the design of an OS or network protocol
- Design and implement C programs and network applications
- Compare different OS functions and network protocols
- Investigate simple OS and network attacks
- Investigate the correctness of C programs through debugging
Teaching methods
- Ex cathedra
- Hands-on exercise sessions
Expected student activities
- Participate in lectures and exercise sessions
- Answer quizzes
- Submit programming assignments
- Take midterm and final exams
Assessment methods
- Programming assignments (by groups of two)
- Midterm and final exam
- Quizzes
Supervision
Office hours | Yes |
Prerequisite for
CS-311 The Software Enterprise - from ideas to products
CS-300 Data-Intensive Systems
In the programs
- Semester: Spring
- Exam form: Written (summer session)
- Subject examined: Computer systems
- Courses: 4 Hour(s) per week x 14 weeks
- Exercises: 2 Hour(s) per week x 14 weeks
- Lab: 2 Hour(s) per week x 14 weeks
- Type: mandatory
- Semester: Spring
- Exam form: Written (summer session)
- Subject examined: Computer systems
- Courses: 4 Hour(s) per week x 14 weeks
- Exercises: 2 Hour(s) per week x 14 weeks
- Lab: 2 Hour(s) per week x 14 weeks
- Type: mandatory
- Semester: Spring
- Exam form: Written (summer session)
- Subject examined: Computer systems
- Courses: 4 Hour(s) per week x 14 weeks
- Exercises: 2 Hour(s) per week x 14 weeks
- Lab: 2 Hour(s) per week x 14 weeks
- Type: optional
- Semester: Spring
- Exam form: Written (summer session)
- Subject examined: Computer systems
- Courses: 4 Hour(s) per week x 14 weeks
- Exercises: 2 Hour(s) per week x 14 weeks
- Lab: 2 Hour(s) per week x 14 weeks
- Type: optional
- Semester: Spring
- Exam form: Written (summer session)
- Subject examined: Computer systems
- Courses: 4 Hour(s) per week x 14 weeks
- Exercises: 2 Hour(s) per week x 14 weeks
- Lab: 2 Hour(s) per week x 14 weeks
- Type: optional
- Semester: Spring
- Exam form: Written (summer session)
- Subject examined: Computer systems
- Courses: 4 Hour(s) per week x 14 weeks
- Exercises: 2 Hour(s) per week x 14 weeks
- Lab: 2 Hour(s) per week x 14 weeks
- Type: optional