Innovation... driven by intelligence and logic

Embedded Linux Kernel Internals using ARM, Device Drivers - Contents

Modules and Projects in

Embedded Linux, Kernel Internals with ARM, Device Drivers


The Training consists of the following Modules and Projects:- (Detailed Description)

There are 14 Modules and 11 Projects in This Training
  1010 Hours of Training 180 Working Days 155 Sessions  175 Labs 
Module
No
Module Name
 
1
 
5 Working Days          5 Sessions          5 Labs  
 
After This Module/Project is over, the trainee should be able to understand / implemtnt the following:-
  • Install Linux based Operating Systems. fedora, Ubuntu & Debian,
  • Do User administration (setup and maintaining account),
  • Maintain systems, Verify ports and peripherals, 
  • Quickly arrange repair for h/w in occasion of hardware failure, 
  • monitor system performance, Create and mantain file-systems, 
  • Install software and do software management, create a backup and recover policy,  
  • monitor Linux n/w communication, configure remote login services,
  • update system as soon as new version of OS and application Software comes out using git,
  • implement the policies for the use of the computer system & network,  
  • Setup security policies, have a strong grasp of computer security - firewalls, intrusion detection),
  • understand Process control and Memory control
  • Read More...
2
Shell Scripting using Bash ...          
 
8 Working Days          10 Sessions          10 Labs  
 
After This Module/Project is over, the trainee should be able to understand / implemtnt the following:-                                                                                                                                    
  • Build Shell Scripts using Bash from scratch, Use structured commands, 
  • Handle user input, Debug Shell Scripts
  • Understand advanced bash shell commands, Environment variables, and Linux File Permissions
  • Present data, run and control Scripts with Ease, Create functions / graphics using scripts
  • Do Scripting using sed, awk, gawk & regular expressions efficiently
  • Configure,  use make, makefile, Create makefile for system/nw configuration, device drivers compilation  insertion
  • Maintainig kernel and filesystems
  • Shell Scripting for creating, maintaning Networks
  • Shell Scripting for embedded linux kernel development
  • Read More...
3
Linux Networking and Network Administration...         
 
5 Working Days          5 Sessions          5 Labs
 
After This Module/Project is over, the trainee should be able to understand / implemtnt the following:-
  • Configuring Remote Login Services: Telnet and SSH, RFC 854, ICMP RFC 792,  Security, Configuring TELNET on Linux based systems, Telnet 5250, Telnet data, Related RFCs, Telnet Clients.
  • SSH: Installing Public keys manually and automatically,  Using the ssh-agent program, X11 Session Forwarding, TCP Port Forwarding, SOCKS5 proxying, Running Commands Over SSH, Using SCP, using SSH Sessions.
  • Configuring FTP and TFTP Servers
  • FTP: Communication and data transfer, Login Anonymous FTP, NAT and firewall traversal, Differences from HTTP, Web browser support, Security-Secure FTP, FTPS, SFTP, FTP over SSH (not SFTP), FTP reply codes.
  • TFTP: Introduction to protocol, TFTP Clients and Servers, RFC 1350,
  • ​Configuring DHCP Server
  • DHCP discovery, DHCP offer, DHCP request, DHCP acknowledgement, DHCP information, DHCP releasing, Client configuration parameters, DHCP options, Vendor identification, DHCP relaying, Reliability, Security.
  • ​Configuring NFS
  • Versions and variations, NFSv2, NFSv3, NFSv4, Other extensions, Platforms, Typical implementation, Protocol development. Configuring the Server, Configuring the Client, Locking, Automating Mounts.
  • Read More...
4
Data Structures using C ...          
 
35 Working Days          25 Sessions          35 Labs
 
After the Module/Project is over, the trainee should be able to understand / implemtnt the following:-
  • Comfortable with respect to programming in C.
  • Able to Implement and use Data Structures using C.
  • Proficient in Advanced data Structures in C.
  • Having good understanding about gcc compiler.
  • debug complex C programs using gdb.
  • Adept with Project Management tools.
  • Efficient with Source Code Control tools.
  • Read More...
5
C++ with Eclipse and QT on Linux...          
 
30 Working Days          20 Sessions          20 Labs
 
After This Module/Project is over, the trainee should be able to understand / implemtnt the following:-
  • understand Object Oriented Programming Concepts
  • comfortable with respect to programming in C++.
  • understand and create Constructors and Destructors
  • understand Memory Management and Pointers
  • Polymorphism: operator overloading, Function Overloading
  • implement Friend Functions
  • Implement and use Data Structures using C++.
  • use C++ Standard Library: Input/Output with files
  • implement Inheritance: single, public, private and protected, multiple, hierarchical, ultilevel, hybrid, multilevel, hybrid
  • understand and implement Advanced Concepts: Templates, Namespaces, Exceptions, reprocessors
  • be Proficient in Abstract Classes and STL Classes.
  • Have good understanding about g++ compiler.
  • debug complex C++ programs using gdb.
  • Read More...
6
Linux Prog - client/server implementation using IPC & threads ...     
    
15 Working Days          10 Sessions          15 Labs
 
After This Module/Project is over, the trainee should be able to understand / implemtnt the following:-
  • Understand the prosess management including process creation, duplication, replacement
  • Understand the concept of signals and install signal handlrs
  • work with advanced signal handling mechanism
  • be well versed with ipc techniques like, pipes, fifo, message queues, shared memory
  • implement synchronization techniques for access to shared resources using semaphores
  • understand the concept of threads and implement multithreaded programs efficiently
  • Read More...
7
Networking and Network Programming using Linux ...   
      
15 Working Days          10 Sessions          15 Labs
 
After This Module/Project is over, the trainee should be able to understand / implemtnt the following:- 
  • The Linux networking stack, Linux based Sockets efficiently, Implement elementary sockets, TCP sockets, UDP sockets, SCTP sockets
  • Implement TCP client / server model, IO multiplexinu. select and poll
  • Understand socket options like getsockapt, setsockapt, socket states,  generis socket options, IPv4 sockets, ICMPv6 sockets, IPv6 sockets, fcntl
  • Implementing SMTP client / server model, name and address conversions
  • IPv4 and IPv6 inter-operability
  • IPv4 client - IPv6 server, IPv6 client - IPv4 server, IPv6 address,  testing macros, source code portability
  • Deamon Processes and inetd Superserver
  • Advanced IO functions and Non-blocking IO and ioctl operations
  • Routing Sockets, key management sockets
  • Broadcasting and Multicasting using Sockets
  • Read More...
8
Character Device Driver Development ...          
 
25 Working Days          20 Sessions          25 Labs
 
After This Module/Project is over, the trainee should be able to understand/implemtnt the following:-
  • understable device driver architecture for Linux, insert and register character device driver with the Linux Kernel, 
  • do complete initialization for the device driver
  • Implement the following operations on the character device driver
  • ​open. release, write, read, trim, lseek
  • Implement the following synchronization techniques on the simultanious operations on through the driver... semaphore, completion, spinlock, blockingIO, wait queues, file locks, seqlocks, capabilities
  • Implement advanced character device driver operations, IO using sequential files, IO control, software implemented filesystem - proc
  • Timing measurements, delays, timers, kernel threads
  • Interrupts: tasklets,shared queues, h/w, s/w interrupts, top bottom halfs​
  • Read More...
9
Parallel Port Device Driver Development ...       
  
6 Working Days          5 Sessions          6 Labs
 
After This Module/Project is over, the trainee should be able to understand / implemtnt the following:-
  • Understand following Standards
    • ​EIS/TIS-D, EIA/TIA-E, RS232, IEEE Standard 1284 - 1994
  • ​Implement Parallel Port Device Driver for IEEE 1284 standars for 74LS244 chip
  • Implement all possible Modes of operation for parallel port
    • contronics mode, ​Byte mode, compatibility mode, nibble mode, ECP mode and EPP mode.
  • Read More...
10
Serial Port Device Driver Development ...       
  
6 Working Days          5 Sessions          6 Labs
 
After This Module/Project is over, the trainee should be able to understand/implemtnt the following:- 
  • Understand the RS232 protocol,
  • Understand the Serial port driver architecture for Linux,
  • able to interpreet data-sheet for the serial port chip
  • write the serial port device driver for PC16550D UART with FIFO from scratch.
  • able to sunchronize serial device with respect to baud rate of operation
11
Block Device Driver Development ...          
 
10 Working Days          10 Sessions          10 Labs
 
After This Module/Project is over, the trainee should be able to understand/implemtnt the following:-
  • understand 
    • ​the Linux block layer, IO mechanism in Linux,, the concept of sectors, blocks, buffers & pages, the device driver architecture, the memory allocation and IO blocks creation, 
  • Implement complete block driver from scratch including...
    • block device driver registration with linux kernel,, queue  initialization, synchronization and timer initialization, initialization of block device structure, Operations support initialization for the driver, request functions and transfer functions, all 5 standard request function like - opening, closing, read, write ioctl and media change
12
Embedded Linux on ARM ...          
 
10 Working Days          10 Sessions          10 Labs
 
After This Module/Project is over, the trainee should be able to understand/implemtnt the following:-
  • Understand ARM Embedded Microprocessor Architecture
  • Write shell scripts using Bash, Understand Linux kernel Architecture
  • Build a cross compiled toolchain
  • configure bootloader U-boot
  • Configure kernel internals, (cross)compile and boot a Linux kernel
  • Port Embedded Linux kernel on ARM based board
  • Create a simple, BusyBox based root filesystem from scratch
  • understand block filesystems layers
  • Create Flash filesystems – Manipulating flash partitions
  • Cross-compile libraries and applications
  • Use Embedded system building tools
  • Configure, port and install an Embedded Linux OS on ARM based Device
  • Develop and debug applications for the embedded system
  • Do system optimizations
  • Read More...
13
 
20 Working Days          20 Sessions          20 Labs
 
After This Module/Project is over, the trainee should be able to understand/implemtnt the following:-
  • Unserstand the Syntax and Semantics of the language
  • Types and Operations: Numbers, strings, lists, dictioneries, tuples, files, Shared References, Dynamic Typing.
  • Strings: Literals, metnods, formatting expressions, formatting method calls
  • Statements and Syntax: Assignments, expression, prints, if-trsts and syntax rules, whie, for and nested loops, iterations and comprehentions, Python documentstion sources
  • functions: Coding functins, definitions and calls, polymorphism, scopes, argumets
  • Modules: Python program architecture, modules search path, module codeing basics, usage, namespaces, reloading, Module packages, data hiding
  • Classes and OOPs: Class Coding Basics, Objects, Instance Objects, Inheritance,  Operator Overloading,  Designing with Classes
  • Exceptions and Tools:  Exception Basics,  Exception Coding Details,  Exception Objects,  Designing with Exceptions 
  1026 Hours of Training 180 Working Days 153 Sessions 180 Labs

Back...

 

Go to Top ^