Course
Operating Systems and Systems Programming (DAT320)
The course gives an introduction to operating systems, and how to program against them efficiently, with particular focus on thread programming and synchronization between threads within a program.
Dette er emnebeskrivelsen for studieåret 2014-2015. Merk at det kan komme endringer.
Semesters
Fakta
Emnekode
DAT320
Vekting (stp)
10
Semester undervisningsstart
Autumn
Undervisningsspråk
English
Antall semestre
1
Vurderingssemester
Autumn
Content
The course gives an introduction to operating system architectures and mechanisms for resource management in computer systems. Specific topics covered: user-space vs kernel-space, system calls, processes and threads and synchronization and communication between these, CPU scheduling algorithms, memory management: swap memory, caching, virtual memory, page and segmented memory, transactional memory. The input/output system, filsystems, filsystem consistency and performance, backup.
The course also covers several programing exercises throughout the semester which covers some of the topics mentioned above, but with particular focus on thread programming and synchronization.
The programming language used in this course is mainly Go (golang.org), in addition to some C programming.
Learning outcome
Knowledge- How operating system work- How to protect the operating systems from malicious software
Skills- Be capable of programming against the operating system API- Be capable of implementing simple mechanisms for resource management- Know how to program with threads- Know how to exploit virtualization for resource management
General compentancy- Know important general principles for resource management for computer systems.
Forkunnskapskrav
Anbefalte forkunnskaper
Exam
Form of assessment | Weight | Duration | Marks | Aid | Exam system | Withdrawal deadline | Exam date |
---|---|---|---|---|---|---|---|
Written exam | 3/5 | 4 Hours | Letter grades | None permitted | Inspera assessment | 01.11.2014 | 13.12.2014 |
Programming project | 2/5 | Letter grades | — | 01.11.2014 | — |
All programming exercises must be submitted for approval. Some of the programming exercises will also be used for grading. Grading will be based on submitted material and an individual demonstration and walk through of the submitted program in the lab.
Vilkår for å gå opp til eksamen/vurdering
Completion of mandatory lab assignments are to be made at the times and in the groups that are assigned and published. 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 barring from taking the exam of the course.
Fagperson(er)
Course coordinator:
Nejm SaadallahCourse teacher:
Nejm SaadallahHead of Department:
Tom RyenMethod of work
Overlapping
Emne | Reduksjon (SP) |
---|---|
Operating Systems (BID200_1) , Operating Systems and Systems Programming (DAT320_1) | 5 |
Åpent for
Bachelor studies at the Faculty of Science and Technology.
Master studies at the Faculty of Science and Technology.