- How operating system work
- How to protect the operating systems from malicious software
- Be capable of programming against the operating system API
- Be capable of programming parts of an operating system
- Be capable of implementing simple mechanisms for resource management
- Know how to program with threads
- Know how to exploit virtualization for resource management
- Know important general principles for resource management for computer systems.
The course includes programming assignments focused on main concepts learned in the course, such as memory management, scheduling, concurrency, parallelism and synchronization techniques, and tools to analyze and debug various aspects of such applications. In the final project, student groups should design a larger system or parts of an operating system using the techniques covered in the course.
The programming language used in this course is primarily Go (golang) along with some C.
Required prerequisite knowledge
Recommended previous knowledge
|Written exam||3/5||4 hours||A - F||None permitted|
|Programming project||2/5||A - F|
A student that fails the project work must take this part again next time the subject is lectured.
Completion of mandatory lab assignments are to be made at the times and in the groups that are assigned. Absence due to illness or for other reasons must be communicated as soon as possible to the laboratory personnel. One cannot expect that provisions for completion of the lab assignments at other times are made unless prior arrangements with the laboratory personnel have been agreed upon.
Failure to complete the assigned labs on time or not having them approved will result in being barred from sitting for the exams.
Method of work
|Operating Systems (BID200_1)||5|
Sist oppdatert: 29.02.2020