Siirry suoraan sisältöön

Linuxin laiteajuritLaajuus (5 op)

Opintojakson tunnus: TI00AA64

Opintojakson perustiedot


Laajuus
5 op

Osaamistavoitteet

Student understands the embedded Linux system and how to configure, compile and install a Linux kernel from sources.

The student understands how to design and implement different devices to a UNIX system.

Sisältö

Recapitulation of kernel mechanisms.
General function of the device driver: Types of device drivers, physical I/O, major and minor numbers. Loadable versus static drivers.
Device driver types: Character drivers, block drivers and network drivers.
General mechanisms: Sleep and wakeup (wait queues). Buffer allocation. Timer handling. Interrupt handling.
Configuration and initialization: Error logging, debugging, the /proc and /dev filesystems.
Character drivers: Data transport between user mode and kernel mode, error codes, the ioctl interface.
Block drivers: Buffer management, mount and unmount, request queues and the request-routine, interrupt and start routines.
Network drivers: Packet management, socket handling.
-----
This is a hands-on course in operating system internals. Students configure, compile, and install a Linux kernel from sources; do the same for a kernel module; navigate and read the Linux kernel sources; design and implement a kernel module of your own; modify, or design and implement from scratch, a device driver; measure the performance of what you have modified or implemented

Esitietovaatimukset

The student must be fluent in C programming. Furthermore, a general understanding of Linux system programming is preferred.

Arviointikriteerit, tyydyttävä (1)

The student is able to create and implement Linux-based device drivers.

Siirry alkuun