Posted on behalf of Anurag Agarwal of KQ Infotech. This is a paid training program. See the end of this article for fees and other logistics. Disclaimer: PuneTech does not accept any remuneration, monetary or otherwise, for publishing content. Postings of a commercial nature (e.g. paid training program) are posted solely on the basis of whether or not they fit in with the charter of PuneTech and whether the readers would find those interesting. Please let me know your views on this issue. I’m posting this one because it involves “deep” technology, I think it would be of interest to a number of PuneTech readers, and because I can recommend the program based on the reputation of the trainers.
Are you planning to make a career in development in Linux kernel but don’t have right skills?
Have you burned your fingers writing your own code in the Linux kernel?
KQ Infotech is launching a unique training and mentoring program for you. There are two parts to this program. First one is the forty hours intensive training and other one a long term mentoring.
Training will provide you a good understanding of all the sub systems of Linux. It will enable you to debug, modify Linux kernel and write various device drivers. There will be a number of theory sessions, practical sessions, peer code reviews and code walk through. All the assignments will be targeted towards specific Linux kernel functionalities.
But it is very unlikely that a forty hours training would be able to make you a good Linux kernel programmer. In the absence of a real Linux kernel project, it is very unlikely that you will become a good Linux kernel programmer. After forty hours training a special mentoring program will be launched for this purpose.
All the students will be provided with a medium term Linux kernel project. KQ Infotech will facilitate a two hour weekly meeting to discuss and solve this project related problems. This program will enable one to become a good Linux kernel programmer in three to six months time.
About the Trainers
We have 7 to 11 years experience in developing systems storage software and virtualization solutions at Symantec (formerly Veritas) and are well versed with the challenges and techniques for engineering in the kernel space. We believe that our strong development background on heterogeneous platforms (Linux, solaris and AIX) will enable us to give our audience a better perspective on developing in the Linux kernel.
This course assumes good knowledge of C, familiarity with editors (vi/emacs) and basic concepts of user land and kernel space.
This course is designed for the people having their day job. This course will be delivered on Saturday and Sunday, for five hours each day. There will be assignments, code review, code walk through.
A brief overview of the course contents is below
Day 1: Introduction to Linux
Linux Kernel Features
Build Linux Kernel
Introduction to the Kernel Module API
Legal Issues with Linux Kernel
- Introduction to System Calls
Day 2: Process management and scheduling
Introduction to Process Management
Linux Kernel Order one scheduler
Fork system call
Signals and signal handlers
debugging techniques with Linux Kernel
- Proc file system
Day 3: Synchronization
Important Data structures in the kernel
Synchronization primitives in the linux kernel
Day 4: Interrupts
Introduction Interrupts and ISRs
- Introduction to bottom halves, tasklet
Day 5: File System
Introduction to VFS
Day 6: Device Drivers
Introduction to character device drivers
- Introduction to block device drivers
Day 7 and 8: Memory Management
Introduction to Linux Memory Management
Allocator, allocation schemes
Process view of memory, kernel view of memory
- Drill down on x86 specific: L1, L2, TLB
- Paging and swapping
First batch for this course will start from 7th June.
This course will be delivered at Pune IT park.
There will be five hours session on both Saturday and Sunday.
There is one combined fee for training and mentoring program. It is 25,000/-. There is special discount of 20% for first batch. Fee for first batch will be 20,000/-.