6 ECTS credits
150 h study time

Offer 1 with catalog number 1019883ANR for all students in the 2nd semester at a (A) Bachelor - preliminary level.

Semester
2nd semester
Enrollment based on exam contract
Impossible
Grading method
Grading (scale from 0 to 20)
Can retake in second session
Yes
Enrollment Requirements
Enrolling in ‘Operating Systems and System Fundamentals’ means that you simultaneously follow 'Structure of Computer Programs 1' or have successfully passed ‘Structure of Computer Programs 1'.
Taught in
English
Faculty
Faculty of Sciences and Bioengineering Sciences
Department
Computer Science
Educational team
Antonio Paolillo (course titular)
Activities and contact hours
26 contact hours Lecture
26 contact hours Seminar, Exercises or Practicals
Course Content


This course teaches the fundamentals of operating systems and their different implementations. It focuses especially on the aspects that good programmers should be aware of to use a computer system with a certain operating system in a good and efficient manner. This comprises the following subjects:

1. The history of operating systems

2. The global architecture and functioning of hardware on which an operating systems functions

3. The basic concepts for operating systems such as processes, threads and files.

4. Number representation

5. Processes and threads, and their implementation

6. Memory management

7. File management

The course also contains a programming assignment where a microcontroller is being programmed.

Additional info

not applicable

Learning Outcomes

General competencies

Learning goals:

This course teaches the following subjects with associated learning goals:

1. The history of operating systems:

The student can describe the main phases in the history of operating systems.

2. The global architecture and functioning of hardware on which an operating system functions

The student can identify the main components of a motherboard and explain how they cooperate. This also includes interrupt handling, the usage of memory, the interaction of the different layers in the memory-hierarchy, the functioning of the CPU, et cetera.

3. The basic concepts for operating systems

The student can explain the basic concepts of processes and file systems.

4. Number representation

The student can convert and compute numbers in the binary and hexadecimal representations.

5. Processes and threads, their basic concepts and their implementation

The student can explain how processes are generally implemented in operating systems.

The student can explain the difference between processes and threads.

6. Memory management

The student can describe the memory abstraction provided by memory management, and how this can be implemented.

7. Application

The student is able to develop a realtime software application in Racket-Scheme, that runs on a microcontroller and to drive a number of provided sensors/actuators.

Grading

The final grade is composed based on the following categories:
Other Exam determines 100% of the final mark.

Within the Other Exam category, the following assignments need to be completed:

  • other exam with a relative weight of 1 which comprises 100% of the final mark.

Additional info regarding evaluation

The exam consists of a project and a written exam. Participation in both parts of the exam is mandatory. 70% of the final grade is determined by the written exam and 30% by the project.

Allowed unsatisfactory mark
The supplementary Teaching and Examination Regulations of your faculty stipulate whether an allowed unsatisfactory mark for this programme unit is permitted.

Academic context

This offer is part of the following study plans:
Bachelor of Computer Science: Default track (only offered in Dutch)
Master of Teaching in Economics: standaard traject (90 ECTS, Etterbeek) (only offered in Dutch)