2013/2014

62502 Operating Systems and Embedded Linux

Engelsk titel:

Operating Systems and Embedded Linux

Sprog:

Point( ECTS )

5

Kursustype:

Diplomingeniør
 

Skemaplacering:

Forår
Efterår

Undervisningens placering:

Campus Ballerup

Undervisningsform:

Theory combined with practical exercises involving practical use of (an embedded) Linux.

Kursets varighed:

[Kurset følger ikke DTUs normale skemastruktur]

Evalueringsform:

Bedømmelsesform:

Tidligere kursus:

IOSLX4-U1

Obligatoriske forudsætninger:

Anbefalede forudsætninger:

Overordnede kursusmål:

Pervasive computing ("it-i-alting") har udviklet sig til et meget betydeligt marked, og antallet af computere anvendt i indlejrede systemer overstiger langt alle andre anvendelser af computere. Tidligere bestod sådanne systemer overvejende af specialbygget hardware og anvendelsesspecifik software. Markedets hurtige vækst har øget behovet for de facto standarder for både hardware og software. Førstnævnte i form af CPU-moduler med et passende udbud af IO-interfaces og busser. Sidstnævnte i form af et 'passende' operativsystem som basis for programudvikling og understøttet af udviklingsværktøjer og her er 'embedded Linux' af mange gode grunde blevet industriens foretrukne platform.
Dette kursus har til formål at bibringe den nødvendige baggrund og sammenhæng for at forstå de principper, der ligger til grund for operativsystemers udformning og praktisk viden om, hvordan disse principper er realiseret og virker i et aktuelt operativsystem. Kursets praktiske element baseres på en de facto standard HW-platform kombineret med en Linux distribution beregnet til indlejrede systemer.

Læringsmål:

En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • Identify the services provided by a modern operating system.
  • Explain the concept of a logical layer and describe the internal structure of an operating system as a hierarchy of abstraction layers.
  • Describe how the use of interrupts, dispatching, and context switching ('process dispatching') supports concurrency in an operating system.
  • Reflect on the need for concurrency and demonstrate the potential run-time problems arising from multitasking.
  • Explain the need of mutual exclusion and synchronization in multitasking systems and demonstrate the use of operating system mechanisms for synchronization and inter process communication.
  • Describe what makes a system a real-time system and summarize special concerns that real-time systems present and how these concerns are addressed.
  • Compare and contrast common algorithms for preemptive as well as non-preemptive scheduling and especially discuss such scheduling algorithms that are applicable for real-time purposes.
  • Explain the concept of virtual memory and how it is realized in hardware and software.
  • Compare and contrast different approaches to file organization, recognizing the strengths and weaknesses of each.
  • Describe the basic characteristics of a file system and some commonly used file systems for UNIX-like systems and their adaption into embedded systems
  • Describe basic system commands and the role of the command interpreter (the shell).
  • Defend the need for protection and security, and explain the role of access control lists and capability lists in maintaining access permissions.

Kursusindhold:

- Embedded Linux distributions overview and typical characteristics.
- Tools for cross development.
- The file system.
- Shells and Commands.
- Processes and Threads.
- Cooperating Processes and Synchronization.
- Memory Management and Virtual Storage.
- IO-system, Device drivers, and Device Management.
- Security overview: Confidentiality, Integrity, Availability, Accountability.

Litteraturhenvisninger:

Textbook:
Will be announced at the beginning of the course.

Supplementary:
Linux Device Drivers Third Edition
Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman
ISBN 0-596-00590-3. O'Reilly Media
(The book can be downloaded for free from http:/​/​lwn.net/​Kernel/​LDD3/​)

Bemærkninger:

Individual oral examination based on the fourth semester project and theoretical subjects picked at random.

Kursusansvarlig:

Henning Haugaard , Ballerup Campus, rum X 2.49, Tlf. (+45) 3588 5194 , henhu@dtu.dk

Institut:

62 DTU Diplom

Kursushjemmeside:

-

Tilmelding:

I CampusNet
Sidst opdateret: 08. juli, 2013