Вы находитесь на странице: 1из 5

KERNEL INTERNALS

INTRODUCTION TO THE LINUX KERNEL


Operating system and kernels
Types of kernel
Overview of the kernel structure
Modules in the kernel
Kernel version numbering system
THE BOOT PROCESS
Bios levels
The boot loader
The setup () Function
The startup_32 () Function
The start kernel () Function
KERNEL RECOMPILATION
Reasons for recompiling the kernel
Steps to recompilingthe kernel
Patching the kernel
SYSTEMCALLS
To understand the two modes of execution: user and kernel mode
To define system calls
To differentiate system calls from APIs
To understand system call mechanism in Linux
To implement a new system call
FILE SYSTEM
Introduction file system
The ExT2 file system
The virtual file system(VFS)
Role of VFS
VFS Data structures
FILES associated with processes
System calls
PROCESS MANAGEMENT
Process Definition
Process discripters structures in the kernel
Process states and relevant Data structures
Process scheduling
Process creation
Executing processes
System calls related to process management
INTER PROCESS COMMUNICATION
To study about inter process communication mechanism
To study about pipes,Fifos and signals
To study about system V IPCS such as messagequeues ,shared memory & semaphores
SOCKET PROGRAMING
To define a socket
To understand the types of internate sockets
To understand TCP sockets
To understand UDP sockets
MEMORY MANAGEMENT
To understand the responsibilities of the memory management modules
To understand memory allocation and deal location system calls
To define demand paging
To understand process organization in memory
To understand address translation and page fault handling in Linux
To understand memory allocation strategies
To understand swapping
To understand memory mapping
DEBUGGING TOOLS
To study about debugging tools strace
To study about memory access errors and memory leakage
To understand the tools detect memory access error and memory leakage in Linux
DEVICE DRIVERS
INTRODUCTION TO DEVICE DRIVERS
What we will learn
Role of device driver
Kernel subsystem architecture
Extending the kernel
Classes of device and modules
The kernel source and documentation
MODULE BASICS
Your first kernel module
Kernel module vs application
Userspace vs kernelspace
Statically linked vs dynamically linked modules
Concurrency in the kernel
The current process
Version dependency
CODING STYLES
Indentation
Placing Braces
Naming
Commenting
Data structures
MODULE CONCEPTS
Kernel symbol table
Initialization and shutdown
Usage counter
Using memory
I/O memory and I/O ports
Module parameters
Module description
Doing it in user space
Lab exercise
OVERVIEW OF OS SERVICES
Atomic functions
Bit operations
Linked list
Memory barriers
Semaphores
Time intervals in the kernel
Delaying execution
Task queues
Task lets
Kernel timers
Basic memory management
The proc file system
CHARACTER DEVICE DRIVERS
Introduction to character device driver
Registering a character device driver
Major and Minor numbers
File Operations
The file structure
Example of simple character device driver
Open and close functions
Read and write functions
Devfs
Lseek
Ioctl
Blocking and Non-Blocking operations
Asynchronous IO
HARDWARE AND INTRUPT HANDLING
I/O memory and I/O ports
Using I/O ports
Reading or writing data to a port
The parallel port
Using I/O memory
Overall control of interrupts
Preparing the parallel port
Installing the parallel port
IRQ Auto-detection
/proc/interrupts
Implementing intrupt handler
Tasklets and Bottem halvas
BLOCK DEVICE DRIVERS
Registering a Block device driver
The header file blk.h
Handling requests: a simple introduction
Handling requests: a detailed view
How mounting and unmounting works
The ioctl method
Removable devices
Partition able devices
NETWORK DEVICE DRIVERS
Introduction
Connecting to the kernel
The net_device structure in detaile
Function call sequence
Opening and closing
packet transmission
Pocket reception
The interrupt handler
Changes in Link state
The socket buffer
MAC address resolution
Statically information
Lab
INTERFACES AND PROTOCALLS
I2C DRIVER AND PROTOCALS
Diff between Synchs Vs A sync Protocols
I2C Protocol
Linux Kerenl Device Model
I2C Subsystem Architecture
Writing Client drivers
Interrupt Management
Application to test I2C device Driver
SPI DRIVER AND PROTOCAL
SPI Protocol
SPI Subsystem Architecture
Writing Client drivers
Interrupt Management
Application to test SPI device Driver
PROJECTS
PORTING PROJ ECTS IN S3C2440 PROCESSER TOUCH SCREEN DIVER PORTING IN S3C2440
PROCESSER LCD DRIVER PORTING IN S3C2440 PROCESSER
If you require any further information please do not hesitate to contact us
Please feel free to mail us for demo session or call @91+ 9989754807
Contact: trainings@keentechnologies.com
Website URL: http://www.keentechnologies.com

Вам также может понравиться