Home
Company Profile
Our Clients
Training
Courses
course list
roadmap
all dates
forthcoming
booking
Graduate
Training
Mentoring
Location
Links
Contact us

 


 Embedded Linux Training Courses
EL-202
Moving from Linux 2.4 to Linux 2.6

Length: 2 days
Cost: £968
Course description - see below or view PDF
Check course dates - click here
Booking information - click here
 Course Detail

Course Description:
This course demonstrates how to port an embedded Linux system from version 2.4 of the kernel to 2.6. It describes the differences between the two versions and the new features. Using a practical example it covers changes to kernel configuration and compilation, device drivers, the driver model, the Native POSIX Threads Library, POSIX timers, message queues and shared memory. Throughout, the emphasis is on embedded and real-time applications.

Overview:
A two day course offering a practical approach to porting applications to Linux 2.6.

Who Should Attend:
It is suitable for developers who are currently working on a Linux 2.4 project and are considering moving to Linux 2.6.

Pre-Requisites:
• Good ‘C’ programming skills
• Familiar with Linux 2.4 configuration and application programming
• Some knowledge of Linux device drivers.

Duration:
Two days.

Course Materials:
Student workbook.

Related Courses:
• EL-503 Developing for Embedded Linux
• EL-504 Developing Linux Device Drivers
• RTOS-201 Fundamentals of Real-Time Operating Systems

Course Workshop:
Using a PowerPC development board as an example, students will go through the steps of porting from Linux 2.4 to 2.6 and enhancing the system to make full use of the new features in 2.6.

 Linux Penguin

Course Outline:

Introduction to Linux 2.6
- new kernel features, real time
enhancements, driver model, i/o scheduler
- additional POSIX application interfaces
- implications for the tool chain

Moving to a 2.6 kernel
- Configuring and compiling 2.6
- Changes to modules
- Building out-of-tree modules

The Linux driver model
- What it is and how to use it
- Device classes and attributes
- User’s view of the device model: sysfs

The Linux event model
- How events propagate via hotplug
- Customising event notifications
- The hotplug event handler
- Creating device nodes using udev
- Udev vs devfs

Debugging kernel and modules in 2.6

Kernel threads in 2.6

Changes to interrrupts handlers
and locking code

- Deferred processing using work queues

Changes to the block driver interface
- I/O schedulers

Posix threads
- Native Posix Threads Library vs LinuxThreads
- Thread Local Storage
- Named semaphores

New Posix interfaces
- Posix timers: timer resolution; the high resolution timers patch
- Posix message queues
- Posix shared memory

System profiling using Oprofile

Realtime and 2.6

- Kernel preemption
- Lock-breaking
- Developments expected in the near
future: IRQ threads, PMutexes

 telelogic website

Training Courses
C Training Courses
C++ Training Courses
Design Patterns for
Embedded Systems
Training Courses

Embedded Linux
Training Courses

Java Training Courses
Microsoft Embedded Training Courses
MISRA-C Training Courses
RTOS Training Courses
Software Engineering Training Courses
SNMP Training Courses
SysML Training Courses
TCP/IP Training Courses
Testing Training Courses
Microsoft Windows Device Driver Courses
UML Training Courses

Feabhas Codes
AC-401
AC++-501
AWDM-501
CE-501
C-501
C++-303
C++-501
C++-502
C++-503
DP-401
EL-201
EL-202
EL-301
EL-503
EL-504
J-501
J-502
MC-101
MSDN-2530
MSDN-2535
MSDN-2540
MSDN-2545
MSDN-2540N
NDIS-501
OO-101
OO-301
OO-503
RB-201
RTOS-201
SE-401
SE-501
SNMP-301
T-301
TCP-401
WDF-501
WDM-501