• Keine Ergebnisse gefunden

Interrupt handling techniques, Kernel threads and kernel synchronization techniques

N/A
N/A
Protected

Academic year: 2022

Aktie "Interrupt handling techniques, Kernel threads and kernel synchronization techniques "

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Module Planning: Embedded Linux Workshop, Hagenberg, SS 2013

Objective: Familiar with difference of embedded/PC Linux system, Development tool chain for embedded ARM systems, Kernel modules, Principles of device drivers, Communication of device drivers with user processes,

Interrupt handling techniques, Kernel threads and kernel synchronization techniques

Prerequisite: Basic knowledge of Linux, Some practical experience with a Linux system (Debian, Ubuntu, etc); Good knowledge of software (cross) development in C (gcc, make) and testing

Grading Scheme: “erfolgreich besucht”: presence in at least 4 sessions

Note 1 oder 2: individual results in Lab on interrupt latency (session 6) based on a short report

Session Titel Contents Lab

1:

Di 4.

Juni

2:

Do 6.

Juni

Introduction, Cross Development Difference: Desktop Linux / Embedded Linux GNU tool chain (gcc, gdb)

Editors, Makefile, Tools, Bootloader Services: TFTP, DHCP, NFS used for setup Kernel, Kernel Loadable Modules Kernel Architecture, Process-Management

System Calls, File System Review: pseudo FS (/proc, /sys), Kernel Modules

Experimental setup of the embedded system development infrastructure Build your cross development tools: tool chain, root file system, kernel Cross-develop a simple application program, write a makefile for it

Simple module (Hello World) Dependent modules with parameters

Module communication with user space via /proc 3:

Di 11.

Juni

Kernel Concurrency Management Kernel Threads

Atomic variables and bit operations, Semaphores, Mutexes, Wait queues, Completions, Spin locks

Introduction to kernel threads

Kernel thread APIs, creation/cancellation of kthreads Performance analysis of kernel synchronization methods

4:

Do 13.

Juni 5:

Di 18.

Juni

Device Drivers Device Interfaces, User API (system calls) Sample Drivers for LEDs, Switches, GPIOs

Interrupt Processing Concepts of interrupt processing Interrupt handler,

Deferred interrupt handling by tasklets and kernel threads

Driver to control LED's and switches Driver to control GPIOs

Preliminary Exercises: GPIO Interrupts – Simple interrupt handlers

– Sharing interrupts and interrupt handlers

– Deferred interrupt processing using tasklets and kernel threads 6:

Do 20.

Juni

Mini-project Applied drivers Interrupt latency estimation using GPIO triggered interrupts. Maintain a kernel event buffer. Evaluate its events by a user space program to estimate different types of latencies like interrupt fast/slow handling latency, kernel/user latency.

Referenzen

ÄHNLICHE DOKUMENTE

SUSE weit verbreitet im deutschsprachigen Raum Debian frei, sehr stabil, langer Updatezyklus Ubuntu anfängerfreundlich, vielsprachig Knoppix bekannte Live-Distribution

We presented SEDA, the first efficient attestation protocol for device swarms, i.e., systems consisting of large numbers of hetero- geneous devices with dynamic topology..

The driver must be registered at the appropriate device subsystem depending on the device type (block, character, network, SCSI, PCI, USB etc).. The kernel provides

If the classification of promoter sequences of genes as transcription factor targets would be solely based on binding to specific oligos, then the spectrum kernel appears to be

The risk-neutral den- sity is approximated by a weighted kernel density estimator with varying unknown weights for different observations, and the subjective density is approximated

The root filesystem rules we outlined earlier are recognized and agreed upon by all open source and free software developers working on Linux systems. Building your embedded

In the rare cases where the board doesn’t include Linux (or the board in question hails from before you welcomed the embedded Linux overlords), the process requires you to locate

When a device file is accessed, the kernel uses the major number of the file to determine which driver should be used to handle the access.. This means that the kernel doesn't