LINUX Basics
Introduction to linux operating system
- operating system services
- why linux
Different types operating systems
Basic linux user commands
Linux root file system structure.
Introduction to GNU Tool chain
- GCC compiler
- Make file
- GDB
Introduction to Device Drivers - Module Programming
- The role of the device driver
- Classification of Devices and Modules
- Building and running Modules
- Hello world Module
- Process context, interrupt context, Kernel timers
- The Linux device model (devices, udev,sysfs,procfs)
- Character Driver basics
Writing Device Driver Programming in Linux.
- Open, Read, Write and Close System Calls
- Major and Minor Numbers
- Charater Device Data structures
- Charater Device Registration
- Writing Simple Charater Device Driver
- Debugging by Printing, Concurrency and Race Conditions (Semaphores, Mutexes, Completions, Spinlocks)
- Advance char device operations (ioctl), Kernel Timer
- I/O Ports and I/O Memory - Writing Parallel port driver Interfacing With LED, Seven Segment Display.
- Interrupt Handling With Parallel Port
- UART Driver
Study of ARM9 & Kernel Configuration and Compilation for ARM9
- Difference between microcontroller and processor, Difference between native compiler and cross compiler,
- RISC vs CISC,Harvard and vonueman arch
- ARM archetecture
- Requirements for Building and using the kernel, Retrieving the Kernel Source
- Configuring and Building, Installing and Booting from a Kernel
- Upgrading a kernel, Customizing a Kernel, Boot loader - Grub Loader, U-Boot .
Porting Linux kernel and Root file system to the ARM9 board
- Embedded Storage - Sample MTD Driver
- Operating Systems Porting Layer (Boot Loader, Kernel Image, Root File System)
- Angstrom Operating system porting on ARM 9 .
Implementing Device driver application program related to the Driver
- Interaction between the User and Kernel Level With System calls
- Explain Device driver application flowchart
- Exaplain kernel Device driver and user device driver program
|