Software Development & Education Center Embedded Linux & Device Drivers
Embedded Linux & Device Drivers Introduction The course is designed for those who want to pursue Linux based Embedded Systems. Embedded Technology Training enables a student, a technologist or a hobbyist to develop microcontroller based systems the need of time is that engineer should equip with Embedded Technologies. This course of Embedded Linux is composed around ARM9 Microcontroller and Embedded Linux. This Course covers complete details about Linux kernel. Training will be given on ARM9 Development Board. It covers complete description of Embedded Linux, Programming, and Accessing of IO device. Various interfacing techniques like I2C, SPI, ADC, DAC, and USB are also discussed. So, utilize your talent with technology of present and technology of the future. EMBEDDED LINUX@ GLANCE Embedded Linux is the use of a Linux operating system in embedded computer systems such as mobile phones, personal digital assistants, media players and other consumer electronics devices, networking equipment, machine control, industrial automation, navigation equipment and medical instruments. According to survey conducted by Venture Development Corporation, Linux was used by 18% of embedded engineers EMBEDDED LINUXAPPLICATIONS
Course Description Module 1:- Linux Basics Introduction to Linux Linux basic commands Kernel classification (Monolith kernel and Microkernel) Kernel configuration and compilation GPL legal issues Module 2:- Linux kernel introduction Linux features Linux versions Linux kernel source Kernel configuration Module 3:- Process Management (kernel side) The Process Process Descriptor and the Task Structure Allocating the Process Descriptor Storing the Process Descriptor Process State Manipulating the Current Process State Process Context Copy-on-Write Forking vfork() Kernel Threads Module 4:- Process Scheduling Multitasking Linux s Process Scheduler Policy I/O-Bound Versus Processor-Bound Processes Process Priority Time slice The Scheduling Policy in Action
The Linux Scheduling Algorithm Scheduler Classes Process Scheduling in Unix Systems Fair Scheduling The Scheduler Entry Point Wait Queues Waking Up Preemption and Context Switching Module 5:- System Calls System Calls Examples of system calls Examples of Standard APIs System call Implementation API-system Call-OS relationship Types of system calls Processor Affinity System Calls Yielding Processor Time Communicating with the Kernel APIs, POSIX, and the C Library Accessing the System Call from User-Space Module 6:- Memory Management Pages Zones Getting Pages Getting Zeroed Pages Freeing Pages kmalloc() gfp_mask Flags Action Modifiers Zone Modifiers Type Flags kfree()
vmalloc() Slab Layer Design of the Slab Layer Slab Allocator Interface Allocating from the Cache The Process Address Space Module 7:- The Virtual File system Common File system Interface File system Abstraction Layer Unix File systems VFS Objects and Their Data Structures The Superblock Object Superblock Operations The Inode Object Inode Operations The Dentry Object The File Object File Operations Data Structures Associated with File systems Data Structures Associated with a Process Module 8:- Interrupts and Interrupt Handlers Top Halves verses Bottom Halves Registering an interrupt handler Interrupt context Taslets Softirq Module 9:- An Introduction to Kernel Synchronization Kernel Synchronization Methods Spin locks Reader-writer locks Semaphores
Module 10:- Timers and Time Management Jiffies Hardware clocks and timers Module 11:- LINUX DEVICE DRIVER Introduction Role of Device Driver types of Device driver loadable modules and its benefits Functions used to load and unload modules Passing parameters to a loadable module Module 12:- Writing a device Driver Program Important header files Writing a simple module Compiling and loading modules Device information in /proc Character driver character driver basics major and minor numbers creating device files with mknod registering a character device driver Hand- on Practice Character Device Driver writing Userspace interaction Proc/sys model Lcd implementation Understanding the serial device driver Module 13:- RTOS Introduction to RTOS What is Real Time System? Requirements of Real time System Hard Real-time Systems and Soft Real-time Systems
Module 14:- Task What is a task creation? Unitask approach Vs multitask approach Task states Module 15:- Scheduling Multitasking Kernel Context switch Priority based scheduling Round Robin scheduling Module 16:- Task functions Task states Task hooks Task synchronization
Industry Interface Program Projects Assignments / Mini Projects 1 Major Project Domains / Industry Electricals and Electronics Telecom & Communication Automobile Consumer Electronics Power & Energy Manufacturing Architecture Civil Industry Research & Development Automation Industry Retail Industry Health Care Industry
Training & Performance Tracking Knowledge related to current technology aspects and corporate level deliverable & Continuous training and assessment to make you industry ready. Throughout the Training Curriculum Candidate will go through a Scheduled Assessment Process as below: Continues Assessments Practical Workshops Modular Assignments Case Studies & Analysis Presentations (Latest Trends & Technologies) Tech Seminars Technical Viva Observing live Models of various projects Domain Specific Industry Projects
Skills Development Workshop Communication is something which all of us do from the very first day of our life, yet there is a question that haunts us most of the time Did I express myself correctly in such and such situation? The answer to this question is really tricky, because in some cases we leave our signatures and good impression but in some others we even fail to get our idea clearly. It happens mostly because we don t know how to act in certain situations. Every time we fail we don t lose completely, we do learn something, but prior knowledge of the same thing could be more beneficial because then we could have turned that failure into success. The course / workshop would focus at many aspects of personality, like: Building positive relationships with peers & seniors Building self-confidence & Developing clear communication skills Exploring and working on factors that help or hinder effective interpersonal communication Learning impacts of non-verbal behavior & Dealing with difficult situations and difficult people Workshops Consists of Following Activities: Personality Development Group Discussions & Debates Seminar & Presentations Case Studies & Analysis Corporate Communication HR & Interview Skills Management Games & Simulations Aptitude, Logical & Reasoning Assessments & Development Action Based Learning