Algemene informatie
| Vakcode | XM_40014 |
|---|---|
| Studiepunten | 6 EC |
| Periode | P1 |
| Vakniveau | 500 |
| Onderwijstaal | Engels |
| Faculteit | Faculteit der Bètawetenschappen |
| Vakcoördinator | prof. dr. C. Giuffrida |
| Examinator | prof. dr. C. Giuffrida |
| Docenten |
dr. E. van der Kouwe prof. dr. C. Giuffrida |
|
Onderdeel van opleiding(en)
Gebruik pijltjestoetsen om door de lijst te navigeren, Enter om te selecteren, en Escape om te sluiten.
|
|
Praktische informatie
Voor dit vak moet je zelf intekenen. De inteken- en afmeldtermijnen staan op VU.nl
| Onderwijsvorm | Hoorcollege |
|---|
Doelgroepen
Dit vak is ook toegankelijk als:
Doel vak
Gaining a deep understanding of design and implementation of major OS subsystems.
Upon completion of this course, students will:
- have knowledge of advanced operating system design and implementation principles adopted by mainstream operating systems such as Linux (Knowledge & Understanding)
- have a basic understanding of recent trends in operating systems research (Lifelong learning skills)
- be familiar with design and implementation principles of physical memory management (Knowledge & Understanding, Applying Knowledge & Understanding, Making Judgements, Communication)
- be familiar with design and implementation principles of page table management (Knowledge & Understanding, Applying Knowledge & Understanding, Making Judgements, Communication)
- be familiar with design and implementation principles of process management (Knowledge & Understanding, Applying Knowledge & Understanding, Making Judgements, Communication)
- be familiar with design and implementation principles of virtual memory management (Knowledge & Understanding, Applying Knowledge & Understanding, Making Judgements, Communication)
- be familiar with design and implementation principles of multiprocessing (Knowledge & Understanding, Applying Knowledge & Understanding, Making Judgements, Communication)
- be familiar with design and implementation principles of multicore management (Knowledge & Understanding, Applying Knowledge & Understanding, Making Judgements, Communication)
- be familiar with design and implementation principles of page reclaiming (Knowledge & Understanding, Applying Knowledge & Understanding, Making Judgements, Communication)
Inhoud vak
The course will feature a number of hands-on assignments accompanied by lectures on advanced operating system kernel design and programming concepts. In each assignment, students will be expected to start with a minimal kernel implementation and exercise their kernel hacking skills on one of the major operating subsystems (i.e., memory management, process management, drivers, etc.). This will involve programming in both C and assembly as well as directly interfacing with the hardware. The course will also link lectures and assignments to modern operating system features and offer insights into state-of-the-art OS research efforts.
Aanvullende informatie onderwijsvormen
Lectures and practical assignments.Toetsvorm
Weekly examination based on practical assignments and lectures. Each week, the student can get up to 11 points for the weekly examination: 6 points from a practical assignment, 2 points for the bonus parts of the assignment, and 3 points from an oral discussion that is based on the assignment and its companion lectures for that week. In each of the first six weeks, you need at least 50% of the points for the oral discussion (at least 1.5 points), along with passing all basic compliance tests for the practical assignment. The seventh (and last) practical assignment is special: the oral discussion is replaced by a written report and there is no minimum grade to pass the assignment. The final grade is the average of all weekly examinations' grades (including the last practical assignment grade, which is considered to be zero if it was not submitted).
Please note that your final grade will be registered as follows:
- If you do not submit any assignment and do not participate in any oral discussion, you will receive a NS.
- In all other cases, you will receive either a numeric grade or incomplete (NVD).
- If you did not meet the minimum grade requirements for the assignments, your grade is NVD.
- Otherwise, your final grade is your weighted average.
- If you plan to drop the course, do not submit anything, as NVD is administratively considered a failing grade.
There is no resit opportunity for the practical assignments, nor for the oral discussions. Results for practical assignments and for the oral discussion may be transferred from previous years if their contents did not change significantly since the result was obtained (as determined by the examiner). If you submit an assignment or participate in the oral discussion, the new result replaces any transferred results.
We ensure that each student individually demonstrates their abilities through oral exams to test understanding of the assignments, through active plagiarism detection for the assignments, and by investigating whether each group member contributed sufficiently for the group assignment.
Literatuur
Slides and online material.Aanvullende informatie doelgroep
MSc Computer SecurityMSc Computer Science
Aanbevolen voorkennis
Students are expected to have completed a Bachelor-level Operating systems course as well as to have experience in C/C++ programming and knowledge of assembly and computer organization.