Operating Systems 1 (B-KUL-JPI0WO)

This is a translated version. Original version in Dutch.
3 ECTSDutch36 Second termCannot be taken as part of an examination contract
Volckaert Stijn (coordinator) |  Volckaert Stijn |  Andries Alicia (cooperator) |  Mechelinck Ruben (cooperator)
OC Elektronica-ICT - Campus Gent

  • The student has a thorough knowledge of the inner workings of an operating system, organized into thematic module. The student knows which solutions exist for different parts of the operating system (K1).
  • The student has insight into the advantages and disadvantages of the design decisions made in commodity operating systems w.r.t. process and thread management, memory management, file systems, and task scheduling (K1, G3).
  • The student knows the possible architectures for virtual machines and hypervisors, and knows what each type of hypervisor is best suited for (K1, G3).
  • The student can apply the gathered knowledge by re-implementing or modifying some of the basic OS algorithms, or by setting up, configuring, and managing commodity operating systems (I1, I2, P1).

The student has basic knowledge of programming and computer architecture.


This course unit is a prerequisite for taking the following course units:
JPI15G : System and Network Management
JPI0WP : Operating Systems 2

This course is identical to the following courses:
T3WBS2 : Operating Systems
ZA0224 : Operating Systems
B3074W : Operating Systems
T3WBS1 : Operating Systems
JPI27A : Operating Systems 1 (Bridging) (No longer offered this academic year)
YI1491 : Operating Systems 1

Activities

2 ects. Operating Systems 1: Lecture (B-KUL-JLI1EB)

2 ECTSDutchFormat: Lecture18 Second term
OC Elektronica-ICT - Campus Gent

  • Introduction: Definition and roles of an operating system (OS), tasks of an OS, types of OSes, evolution of OSes, structure of an OS, services, system calls, important hardware features and their use in an OS.
  • Processes and Threads: Concepts, creation, management, scheduling, threading models
  • Basic Scheduling: Concepts, algorithms for mono-processor scheduling, trade-offs
  • File Systems: Concepts, implementations, trade-offs
  • Memory Management : Concepts, segmentation, paging, algorithms, trade-offs
  • I/O management: Concepts
  • Virtualization and the Cloud: Concepts, case studies

Textbook: Modern Operating Systems (Andrew S. Tanenbaum, Herbert Bos), Pearson

1 ects. Operating Systems 1: Lab Session (B-KUL-JLI1EC)

1 ECTSDutchFormat: Assignment18 Second term
Volckaert Stijn |  Andries Alicia (cooperator) |  Mechelinck Ruben (cooperator)
OC Elektronica-ICT - Campus Gent

  • Simulation of scheduling algorithms (1 task)
  • Simulation of paging and segmentation techniques (1 task)

Slides, tutorials, and code samples on Toledo

Each task will be worked on during 3 consecutive lab sessions. The students have to give a presentation and demonstration at the end of each task.

Evaluation

Evaluation: Operating Systems 1 (B-KUL-JVI0WO)

Type : Partial or continuous assessment with (final) exam during the examination period
Description of evaluation : Written, Process evaluation
Type of questions : Open questions
Learning material : None


This course is evaluated in two ways. First, there is a written exam. Second, the lab sessions are evaluated by means of a report and a presentation + demo.

Physical attendance of the lab sessions is optional. You must, however, submit a written report and give a presentation + demo for each lab assignment.

Students can extend and improve their previously submitted lab exercises and written reports in EP3.

They can also retake the written exam.