Master’s studies

Syllabus for Programming Embedded Systems

Programmering av inbyggda system


  • 5 credits
  • Course code: 1DT106
  • Education cycle: Second cycle
  • Main field(s) of study and in-depth level: Computer Science A1F, Technology A1F, Embedded Systems A1F
  • Grading system: Fail (U), 3, 4, 5
  • Established: 2016-03-08
  • Established by: The Faculty Board of Science and Technology
  • Applies from: week 20, 2016
  • Entry requirements: 120 credits including Computer Architecture and Operating Systems. Real Time Systems.
  • Responsible department: Department of Information Technology

Learning outcomes

To pass, a student must be able to:

  • Develop low-level embedded software using high level programming in e.g. C.
  • Explain the most important features of  real-time operating systems, and their use in embedded software.
  • Use programming patterns that take into account limitations of embedded hardware platforms, e.g.  memory size, processor capacity, and bandwidth.
  • Discuss basic mechanisms for establishing fault tolerance and recovery .
  • Explain basic approaches in validating the functionality of embedded software.


The course covers the following areas: development environments for embedded software, resource aware programming, hardware programming, developing multi-threaded software, inter-process communication with shared memory and message passing, programming using real time operating systems, fault detection and testing, and fault tolerance and fault recovery.


Lectures, lessons, assignments, and labs .


The course is examined with exam and assignments, the theory part consists of 3 credits and the practical 2 credits.

Reading list

Reading list

Applies from: week 21, 2016

  • Simon, David E. An embedded software primer

    Reading, Mass.: Addison-Wesley, cop. 1999

    Find in the library

  • Marwedel, Peter Embedded system design

    Updated and corr. version: Dordrecht: Springer, cop. 2006

    Find in the library

  • Pont, Michael J. Patterns for time-triggered embedded systems : building reliable applications with the 8051 family of microcontrollers

    Harlow: Addison-Wesley, cop. 2001

    Find in the library

  • Buttazzo, Giorgio C. Hard real-time computing systems : predictable scheduling algorithms and applications

    2. ed.: New York: Springer, 2005

    Find in the library