|
|
|
|
|
Training
> >
Advanced course on Embedded Linux Operating System |
|
 |
This is an advanced project-based
training on programming in C, Linux Kernel Design, Device
drivers and writing BSP for embedded Linux. It would involve
classroom sessions, programming assignments/mini projects,
and two full-fledged projects on Linux network/Wireless LAN/SCSI/USB
device driver implementation and Linux Boot loader implementation
for an embedded ARM based hardware. The classroom session
will be held for 2 hours thrice a week (Monday, Wednesday
and Friday). The rest of the time you are supposed to do hands
on assignments/mini project and the main projects (For those
who are working this could be different and they can do the
lab work/project during their free time + weekends) at our
office. The course would start with C programming classes
3 days a week and then move onto device drivers, Linux Kernel
design, basic hardware concepts/architecture of an embedded
board, and porting Linux to a new hardware platform.
|
|
Duration:
6 months
|
Aim
of the course |
-
Focus on C and Kernel
design/Operating system/Device driver/Basic hardware
architecture concepts and build a good conceptual
base.
-
Hands
on experience on Linux network/Wireless LAN/SCSI/USB
device driver, so that the candidate becomes proficient
in writing device driver/device driver concepts.
-
Hands
on Experience on Boot loader implementation/System
initialization for an embedded board, so that the
candidate becomes proficient with writing BSPs.
-
All
the points mentioned above go hand in hand in preparing
the candidate to face interviews and become a device
driver/system software/Embedded system professional.
|
|
Potential
for Job |
|
Kernel design/Embedded
operating system porting (BSP)/ device driver programming
is a fairly complex area to master compared to Application
programming. As a result, the demand for good professionals
in these areas has always exceeded the supply. With
the Industry showing signs of recovery, the people with
experience could be in high demand in another 3-6 months
time.
Our responsibility would be to empower you with knowledge,
and get you prepared for Interviews/writing BSPs/device
drivers on your own. From experience in working these
areas, we are aware that it is very difficult to get
good device driver/Embedded OS/system software developers.
So, one of the main intentions of this course is to
develop device driver/Embedded system software expertise,
which can be used by us for our development/consultancy
requirements. So, if you do well, we would like to absorb
you. Also, from experience in working in these areas,
we are confident that if a candidate is good, he/she
wouldn’t face any problem in getting a secure/challenging
job. Some of the companies looking for expertise in
Embedded OS/device drivers are Intel, HP, Lucent, Motorola,
Sharp, Adaptec, Force, Timesys, Huawe, Analog devices,
Philips, Infineon, Wipro, Tata Elxsi and Infosys (Almost
every multi national has openings)..There are many small
companies too.
Course
strength: 15 candidates.
|
|
Faculty
profile |
-
I.I.T, M.Tech (Computer
science) with more than 13 years of development
experience in Companies like Wipro, Novell (India),
National Semiconductor (India), Unisys and SCO (United
states).
-
Very
experienced in bringing up kernel/protocol/device
driver teams from scratch.
-
Guest
lectures from Industry Experts on TCP/IP, Real time
systems etc.
|
|
Target
Audience |
-
Freshers who are keen
to develop concepts and earn embedded system/device
driver experience, to get a job in the system software
domain/real time/embedded systems etc.
-
Experienced
people who would like to change their area of work
to system software/device drivers/real time/embedded
system etc.
|
|
Prerequisite |
-
A background in CS/Electronics
is preferable. If not, an attitude to learn and
work extremely hard is essential. In any case, attitude
to work hard and make best use of the guidance for
device driver/Embedded operating system development
is very important.
-
Clear
thinking and an attitude to focus on concepts, and
do a good job.
|
|
Infrastructure |
|
ARM based board would
be used for boot loader project. In addition, every
trainee is assigned a PC for the duration of the course.
He/She can come any time and do the assignments/mini
projects/project. Every trainee is given the relevant
books on C, Linux Kernel design and Linux device driver. |
|
Registration |
|
For course registration
please fill the online form and register. Please call
080-5251731 for details or contact.
GRACE SYSTEM TECHNOLOGY LABS
#7, 7th Main, Indira Nagar 2nd Stage
Bangalore – 38
(Behind BATA showroom on CMH Road)
We offer one-week free trial to give the trainees an
opportunity to evaluate the training and make sure it
matches their expectations before registering/making
the payment. |
|
Course
fee |
|
For full course Rs.30000
in three installments of Rs. 10000 each (First in the
beginning, Second after two months, third after 4 months).
For Linux device driver + Kernel design alone Rs. 20000
in two installments of Rs. 10000 (First in the beginning,
second after two months).
|
|
Course
curriculum |
|
C
Course contents
Introduction, variable types and operators, Control
flow, Functions, Pointers, Arrays, Structures and unions,
Function pointer, basic data structures (Linked lists,
queue, stack, hash table etc.).
There will be assignments and a mini project on memory
allocator (Same as used in Unix kernel) to support the
course.
Linux
device drivers
Introduction, Building and running kernel modules, Character
drivers and pseudo driver implementation (Mini project),
Debugging techniques, Enhanced character driver operations
and pipe implementation, Time keeping in the drivers,
Memory allocation and usage, Block drivers & Pseudo
driver implementation (Mini project), hardware I/O management,
Interrupt handling, MMAP and DMA, Network device driver,
Storage and USB drivers, PCI bus interface and overview
of peripheral buses, KMOD and advanced modularization,
Kernel source and kernel image building.
Full-fledged project on Network (Ethernet)/Wireless
LAN/SCSI/Fibre Channel/USB driver implementation.
Linux
Kernel design
Overview of Linux/Operating system/Hardware architecture
Basic Unix commands, Computer hardware architecture
overview, Operating system overview.
Memory management subsystem
Virtual memory, Demand paging, Segmentation and regions,
the hardware independent layer, Paging system procedures,
Page fault handling, Page out and swapping, Kernel memory
allocation, Memory related system calls
Process management subsystem
Process image, Process states, Structure of a process,
Context switching, Process scheduling, User level context
switching, System clock handling, process execution
modes, signals, Process creation/execution/termination,
process suspension, System initialization/shutdown/reboot.
I/O
Subsystem
Buffer cache, Page cache, Virtual file system, EXT2
File system, I/O architecture.
Interprocess
communication
Semaphores, Message queues and shared memory implementation
in the kernel.
Writing
BSPs
Hardware basics and processor architecture, Things involved
in porting Linux to a new processor/platform/Writing
Board support packages.
Full-fledged project on writing boot loader for Linux
+ Miniproject on root file system. |
|
Tests
and mock interviews |
|
The tests and mock interviews
are to evaluate the performance of the candidate as
well as to prepare the candidate for job interviews/tests.
They would cover all the areas covered in the course.
On completion of the course a certificate mentioning
the course contents will be given. |
|
| |
|
|
 |
Powered
by CKM4 copyright © Grace System Technology Labs 2004 - 05 All rights
reserved |
|