Innovation... driven by intelligence and logic

After - Embedded Linux Kernel Internals using ARM and Device Drivers

Embedded Linux Kernel Internals using ARM and Device Drivers

After The Training is over, The Trainee should be able to:

  • do User administration (setup and maintaining account), Maintain Linux based Systems, Verify peripherals
  • Monitor system performance, Create file systems, take backup and restore
  • Install software and do software management, Create a backup and recover policy
  • Monitor Linux network communication, Configure remote login services
  • Update system as soon as new version of OS and application software comes out
  • Implement the policies for the use of the computer system and network
  • Setup security policies for users, Have a strong grasp of computer security (e.g. firewalls and intrusion detection systems).
  • Understand Process Management and Memory Management
  • Implement FTP Server, TFTP Server, CVS Server, DNS Server, DHCP Server, NFS Server, Apache Web Server, Configuring Proxy Server, A Database Server
  • Understand and write efficient Shell Scripts for System/Network Administration
  • Comfortable with respect to programming in C, Able to Implement and use Data Structures using C, Having good understanding about gcc compiler, Able to debug complex C programs using gdb.
  • Adept with Project Management tools, Efficient with Source code management tools.
  • write shell scripts using Bash, Run and Controlling Scripts with ease,Debug shell scripts
  • Do scripting using files, sed, awk efficiently,Control processes
  • Underatand  Process Duplication, Process Replacing
  • InterProcess Communication: Pipes, Fifo, Message Queues, Shared Memory.
  • Implement synchronization using semaphores and mutexes
  • Underatand the concept of Threads, Threads Attributes, Threads Synchronization
  • Implement FTP based network programming invilving Sockets
  • Advanced Family Protocols: AF_UNIX, AF_INET
  • Understand the architecture of Device DriversInsert and Registration driver into the kernel
  • Implement the following Device Operations:-
    • open, release, writing, reading, seeking
    • Synchronization using Semaphores, Completions, Spinlocks, Blocking IO
  • Implement Software implemented filesystem: /proc
  • Control operations: ioctl
  • poll and select, sysfs, Timing Measurements, Interuupts and Handling
  • Understand the Linux Kernel Architecture
  • Linux Boot process for x86 and ARM Architecture
  • Have working knowledge for the following Linux Internals concepts:-
    • Process Management and Scheduling, Memory Management:, Virtual Process Memory, File I/O, Buffered I/O, Signals, The Virtual File system, Extended Filesystem Family, Filesystem without persistant Storage, Extended Attributes and Access Control Lint, System Calls, Timing Measurements, Page and Buffer Cache, Data Synchronization, Page Reclaim and Swapping, Auditing.
  • Understand IEEE 1284 Standard, Parallel Port Architecture and Registers, Electrical Standards.
  • Implement Parallel Port Device Driver, Interact with Hardware through Parallel Port.
  • Implement following Parallel Port Device Operations
    • Compatiblity Mode, Nibble Mode, Byte Mode, EPP Mode, ECP Mode, Stepper Mode interface
  • Underatand The Architecture of Serial Port
  • Underatand RS232 Communication Protocol
  • Do DataSheet Interpretetion
  • Implement Serial Port Device Driver, Device Operations using Serial Port Driver
  • Establishing Serial Communication between Devices: Byte Transfer
  • Using Interrupts for Serial Communication
  • Establishing Serial Communication between Devices: File Transfer
  • Establishing Serial Communication between Devices: Two way Communication.
  • Initialize the Block device driver, Interfaces Information for Block device, Memory allocation for block device, Registration method with linux kernel, Queue initialization and synchronization method and Timer initialization, Initialization of block device structure, Operations support initialization for the driver.
  • Implement Exit of Block driver,Freeing the memory occupied by device driver, Destroying the queue spinlock and timer associated with the driver, Removing all its interfaces with the linux kernel, Unregistration of the driver.
  • Understand and Implement Functionality of the Block device, Opening the block device, Closing the block device, IOCTL method for the block device, Block transfer function, Media change Functioning.
  • Do Testing for Block Drivers, Creating the ramdisk partition, Mounted node associated with the driver on it, Creating the filesystem on ramdisk partition, Transfer the data in ramdisk partition or block device.
  • Understand the Architecture of Embedded Linux, Cross Compile C libraries. Build a cross-compiling toolchain, Configure Bootloaders, U-boot, Configure, (cross)compile and boot a Linux kernel, Create a simple, BusyBox based root filesystem from scratch, Implement Block filesystems, Flash filesystems – Manipulating flash partitions
  • Cross-compile libraries and applications, COnfigure Embedded system building tools, Lightweight tools for embedded systems. Graphical toolkits
  • Develop and debug applications for the embedded system, Implement realtime requirements, do System optimizations

Back...


EmbLogic™ is an ISO 9001:2008(QMS) (Quality Management System) Certified Company.

Go to Top ^