Skip to main content

DD2486 Systems Programming and Operating Systems 7.5 credits

Course offerings are missing for current or upcoming semesters.
Headings with content from the Course syllabus DD2486 (Autumn 2009–) are denoted with an asterisk ( )

Content and learning outcomes

Course contents

Compiler and linker. Object code and executable code. Processes, interrupt, switching of process, long jump in C. Virtual memory and dynamic memory allocation. I/O. Networks. Concurrent programming with threads, processes etc and related problems as race conditions and deadlocks.

Intended learning outcomes

After completed course, you shall, for a Unix environment, be able to

  • describe how compiler and linker puts together a program
  • create and use a Makefile to compile and link programs with several source files
  • describe how computer and operating system executes and switches programs
  • write programs that handle several processes and/or threads that communicate with signals
  • describe how computer and operating system handles the memory
  • describe how connection with external units and networks is done
  • write programs that use sockets for network communication
  • describe how concurrent programs work and implement them with processes, threads or as a state machine
  • combine your knowledge to write programs that use the operating systems services.

Literature and preparations

Specific prerequisites

No information inserted

Recommended prerequisites

DD1377/2D1377/DD2377 Low Level Programming and Computer Architecture or 2G1518/IS1200 Computer Hardware Engineering.

Equipment

No information inserted

Literature

R. E. Bryant and D. O'Hallaran: Computer Systems a Programmer's Perspective, Prentice Hall.

Examination and completion

If the course is discontinued, students may request to be examined during the following two academic years.

Grading scale

A, B, C, D, E, FX, F

Examination

  • LAB1 - Laboratory Work, 3.0 credits, grading scale: A, B, C, D, E, FX, F
  • LAB2 - Laboratory Work, 3.0 credits, grading scale: A, B, C, D, E, FX, F
  • TEN1 - Examination, 1.5 credits, grading scale: A, B, C, D, E, FX, F

Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.

The examiner may apply another examination format when re-examining individual students.

In this course all the regulations of the code of honor at the School of Computer science and Communication apply, see: http://www.kth.se/csc/student/hederskodex/1.17237?l=en_UK.

Other requirements for final grade

Laboratory assignments (LAB1; 3 university credits) (LAB2; 3 university credits), examination (TEN1; 1,5 university credits).

Opportunity to complete the requirements via supplementary examination

No information inserted

Opportunity to raise an approved grade via renewed examination

No information inserted

Examiner

Ethical approach

  • All members of a group are responsible for the group's work.
  • In any assessment, every student shall honestly disclose any help received and sources used.
  • In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.

Further information

Course room in Canvas

Registered students find further information about the implementation of the course in the course room in Canvas. A link to the course room can be found under the tab Studies in the Personal menu at the start of the course.

Offered by

Main field of study

This course does not belong to any Main field of study.

Education cycle

Second cycle

Add-on studies

Discuss with the coordinator.

Contact

Stefan Nilsson, snilsson@nada.kth.se

Supplementary information

This course cannot be counted in the degree if the student has taken ID2206.