
GIVE A BOOST TO YOUR SATURATING CAREER
Learn on weekends, get a career break

Online interventions

Showcase projects

Make a career switch
GOAL:
Write Linux system programs and applications by making use of system calls. Develop networking applications by understanding Linux networking interfaces. This Linux kernel internals programming course also builds participants with deeper knowledge of Linux Kernel subsystems.
TARGET AUDIENCE:
Engineers with exposure to Linux environment
DURATION:
4 days (Two weekends) + One month lab assistance
BENEFITS
Our Linux kernel internals programming course is conducted over weekends, which will enable you gain knowledge on the following core OS areas:
- Create multi-tasking and multi-thread Linux based applications on your own
- System programming: Gain strong knowledge of Linux system programming
- OS concepts: Develop deeper insights into process, memory, networking, IPC mechanisms
- Develop TCP/IP based network applications
- Weekend option: Comfortably take time-off from your busy work schedule
- Workshop model: High stress on hands-on approach for quick ramp-up
- Expert trainers: Delivered by industry experienced expert trainers
WORK ON REAL-TIME PROJECTS
Along with learning, our linux kernel internals programming course provides participants to work on real hands-on projects to make your learning complete. Here is the list of real-time projects that you will be implementing, there are many more in the store.
- Implementation of TCP/IP based packet generator
- RFC implementation of standard protocols (ex: TFTP)
- Multi-tasking based remote diagnostics
- Implementation of system calls inside Linux Kernel
ADMISSION PROCEDURE
- Call us at +91 809 555 7332, +91 809 555 7333 and enroll
- Simply send an email to training@emertxe.com
Course Features
- Course duration 4 days
- Daily Duration 8 hours (Class & labs)
- Assessments Projects
- Skill level Beginner
- Mode Classroom delivery (30%) Practical labs (70%)
- Support mode online
Linux Internals & Networking workshop starts with introducing Kernel to participants. Then it progresses further into various system / library calls related to process, IPC, Networking and threads.
Key takeaways:
Linux kernel internals and programming course syllabus focuses on key Linux Kernel subsystems and associated programming aspects. Here are the key elements of the course.
- Build deeper view about soft interrupts and how Kernel handles it
- Usage of synchronous and asynchronous communication mechanisms in Linux
- Linux Kernel system call implementation
- Create multi-threading applications using POSIX threads
- Race conditions and thread safe coding practices using mutex and semaphores
- Internetworking concepts using TCP/IP
- Network packet analysis using Wireshark
- Application development using TCP/IP socket programming
Topics covered:
Linux kernel internals and programming course syllabus is delivered in a workshop manner with topics starting from beginning to advanced. Here are the day wise break-up of topics.
- Day1: Introduction, System calls, Process management in Linux
- Day2: Inter Process Communication mechanisms, Signals, Threads
- Day3: Thread & process synchronization, Internetworking with TCP/IP
- Day4: Linux network programming using sockets, process & memory management
- Special Focus: Application optimization in Embedded systems
- One month lab assistance
Prerequisites:
- Good C programming Skills
- Basic Linux Usage
Platform Details:
- OS – Any Linux distribution, Ubuntu preferred
- Kernel version – 3.x/4.x
The Emertxe Technical Resource Library (TRL) is an initiative by our team of mentors to share the entire course material online. Here you will find course contents, slide-ware, sample code, assignments and a bunch of industry projects. Along with that we are in the process of adding Embedded interview preparation materials so that you can brush up your basics before showing up for an interviews.
All these materials are open and free for any engineer who is interested in having a career in core Embedded Systems domain. Click the button provided below to access the library.
Your Title Goes Here
- Lesson 1 – Sample Text
- Lesson 2 – Sample Text
- Lesson 3 – Sample Text
- Lesson 4 – Sample Text
- Lesson 5 – Sample Text
Schedule – Linux Kernel Internals
Linux Kernel Internals Weekend workshop – For working professionals
COURSE NAME | START DATE | DURATION | REGISTRATION STATUS |
---|---|---|---|
Linux Internals & Network Programming | 17, 18, 24, 25 Aug – 2019 | 4 days + 1 Month Lab Assistance | Inquire Now |
Weekend workshops – For working professionals
COURSE NAME | START DATE | DURATION | REGISTRATION STATUS |
---|---|---|---|
Linux Systems & Basic Shell Scripting(Online) | 23rd June 2021 | 2 Weeks | Register Now |
Advanced C / Embedded C Programming (Online) | 1st July 2021 | 2 months | Register Now |
Data Structures using C (Online) | 1st Sept 2021 | 4 Weeks | Register Now |
Micro-Controllers Programming (Online) | 1st Oct 2021 | 5 Weeks | Register Now |
Linux Internals & Network Programming (Online) | 8th Nov 2021 | 6 Weeks | Register Now |
Co-created with top notch companies
Emertxe student performance was Excellent
Our interview rounds were extremely rigorous. Emertxe students performance was excellent during all 3 rounds of F2F interviews. Though they have 6 months training background, interviewers mentioned that their performance was equivalent to 30 months experienced engineers. This immensely saved ramp up time of the team. Emertxe approach of focusing on the core knowledge along with the attitude-transformation is commendable. Looking forward for long term association with Emertxe.

Sai Madhav P
Director of Engineering, Aricent (An Altran Group)
Very Commendable Performance
Emertxe has helped us strengthen our team with talented new engineers. The recruits though fresh grads from have shown excellent confidence in handling our projects, very commendable performance especially since we work in niche space. Emertxe service and personal attention is extraordinary. We are expanding and Emertxe will surely be a part of our plans. Our thanks to the dedicated team at Emertxe and wish them all the best.

Ashwini Subbaiah
Manager, Human Resources, Chelsio
Very Good Knowledge in System Programming
We have been engaged with Emertxe for fresher’s hiring and corporate training since couple of years. I find the trainers in Emertxe are very qualified and committed. The students from this institute comes with very good knowledge in system programming. They excel in their assignments. They are hardworking , always eager to learn.

Keshav Karunakar
VP – Engineering, PathPartner Technologies
Have Good grasp over the subjects
Our company SHARP Software Development India Pvt Ltd. is a division of SHARP Corporation, Japan and a CMMI Level 5 organization. We are front-runners in the printer products and hence strongly rely on embedded programming. We had some fresher openings in Embedded Systems. Thus, during research we came across Emertxe institute and it proved to be very fruitful as we hired candidates from here. These candidates had a good grasp over the subject expertise they underwent during their course under Emertxe and are proving to be a valuable asset till date. We wish this institute to keep evolving and adapting to the future technological trend and be producing good candidates like always, every year. This immensely saved ramp up time of the team. Emertxe approach of focusing on the core knowledge along with the attitude-transformation is commendable. Looking forward for long term association with Emertxe.

Sagar Madalagi
HR - Sharp India
Knowledge to Skill Transformation by Emertxe
Skilled workforce is the desire of any company. Our system of education system has not aligned itself to cater to this requirement. The industry needs more players like Emertxe who not only understand technology, but also understand how to convert that knowledge quotient into skilled resources. Best wishes to team Emertxe.

Srinivas AN
Regional Head - South - ESSCI (Skill India)
Substantial Contributions by Emertxe Students
Thanks team Emertxe for providing us with good quality candidates to fill important positions at NXP over the last couple of years. The engineers who joined different teams ramped up quickly and are making substantial contributions in Dev, Test and Tools teams. This was possible only because of high quality training (with emphasis on fundamentals) that was imparted to engineers during their stint, while undergoing embedded systems course at Emertxe.

Anish Damodaran
Technical Manager, NXP Semiconductors






Course flow – Linux Kernel Internals

Delivery Approach
- Workshop based fast-track delivery
- In-depth subject coverage by heavy hands-on
- Online Intervention for Project Work
09:30 AM – 11:00 AM Introduction
- Introduction to Linux & Open source
- GPL, LGPL licensing
- Introduction to various flavors to Linux
- Using the command line interface
- Components of Linux
- The Kernel Source Organization
11:15 AM – 1:00 PMSystem Calls
2:00 PM – 03:30 PMProcess
09:30 AM – 11:00 AMInter Process Communication (IPC)
- Introduction to IPC
- Pipe
- FIFO
- Shared Memory
- Advantages and Disadvantages of various IPC mechanisms
- Application use cases
11:15 AM – 1:00 PMSignals
2:00 PM – 03:30 PMThreads
09:30 AM – 11:00 AMIntroduction to Synchronization
- Introduction to race conditions
- Critical section
- Priority inversion
- Deadlock
- Atomicity & Mutual exclusion
- Solutions to race condition
11:15 AM – 1:00 PMThread Synchronization
2:00 PM – 03:30 PMProcess synchronization
03:45 PM – 05:30 PMInternetworking with TCP/IP
09:30 AM – 11:00 AMLinux Network programming using Sockets
- Socket APIs
- Iterative and Concurrent servers
- Client-server implementation using sockets
- TCP and UDP sockets
- Synchronous I/O using select()
- xinetd daemon in Linux
11:15 AM – 1:00 PMProcess Management
2:00 PM – 03:30 PMMemory management
Introduction
Your content goes here. Edit or remove this text inline or in the module Content settings. You can also style every aspect of this content in the module Design settings and even apply custom CSS to this text in the module Advanced settings.
Writing your first Driver
Your content goes here. Edit or remove this text inline or in the module Content settings. You can also style every aspect of this content in the module Design settings and even apply custom CSS to this text in the module Advanced settings.
Character Drivers
Your content goes here. Edit or remove this text inline or in the module Content settings. You can also style every aspect of this content in the module Design settings and even apply custom CSS to this text in the module Advanced settings.
File Operations
Your content goes here. Edit or remove this text inline or in the module Content settings. You can also style every aspect of this content in the module Design settings and even apply custom CSS to this text in the module Advanced settings.
Project based UpSkilling
- Mini Shell implementation – System calls & Signal handling
- Message Queue IPC implementation inside Linux Kernel
- Trivial File Transfer Protocol (TFTP) – RFC 1350
- TCP based remote management
- Network packet injector using RAW sockets
- TCP/IP chat room

Mini Shell implementation – System calls & Signal handling
Project brief |
Mini shell is a command processor, typically run in a text window, allowing the user to type commands which cause actions. BASH can also read commands from a file, called a script. Like all Unix shells, it supports piping and variables as well. The goal of this project is to implement a mini-shell that mimics the BASH shell by using Linux Kernel System calls and IPC mechanisms like signals. It will also handle special keyboard actions (ex: Control C), can be extended for |
---|---|
Technologies used |
|

Message Queue IPC implementation inside Linux Kernel
Project brief |
Message queues are one of the IPC mechanisms that helps two user-space process to communicate and exchange information. They are exposed by the Kernel as system calls. In actual implementation the data-structures are maintained inside the Kernel to facilitate buffer transfer between two processes. The goal of this project is to implement Message Queue IPCs inside the kernel and expose them to user space processes. Along with implementation, these new system calls need to be hooked into Kernel’s soft interrupt ecosystem. |
---|---|
Technologies used |
|

Trivial File Transfer Protocol (TFTP) – RFC 1350
Project brief | The Trivial File Transfer Protocol (TFTP) is a simple way of transferring file between two systems. This protocol is specified in RFC 1350.This protocol doesn’t support advanced available in FTP (ex: User authentication), typically
used in Embedded systems for its smaller footprint and simplicity.The goal of this project is to understand RFC and implement the protocol in a LAN environment. Eventually this project can be extended for advanced cases like inter-operating with standard TFTP client / servers. |
---|---|
Technologies used |
|

TCP based remote management
Project brief |
Internet today has become a very complex entity by having different set of devices working together. In a scenario where the network devices are located remotely (ex: Wireless base station) monitoring such devices pro-actively becomes a very critical activity. Any malfunctions happen in remote device (ex: CPU usage) will result in device crash. The goal of this project is to implement a TCP based client and server. The centralized server will connect with multiple clients and monitor various system parameters, thereby enabling remote manageability. |
---|---|
Technologies used |
|

Network packet injector using RAW sockets
Project brief |
One of the key requirements of network is the ability to handle large volume of data. Network should have necessary resilience to handle, which is simulated using Network packet injectors in test environment. The goal of this project is to create a command line based Network packet injector that will generate all major protocol packets (ex: HTTP). For implementation RAW sockets are used. |
---|---|
Technologies used |
|

TCP/IP chat room
Project brief | Web based chat applications is one of the more commonly used tool for effective two way communication, starting with IRC chat-rooms. Each user need to authenticate himself and join a chat-room after which he should be able to communicate with all in the group.
The goal of this project is to simulate a chat room in a LAN by using TCP sockets and demonstrate message exchanges |
---|---|
Technologies used |
|
FAQ – Linux Kernel Internals Course
We are pretty sure you will have lot of questions before joining our Linux Kernel Internals- Weekend Workshop. Here are the frequently asked questions for your reference. In case you still have anything specific write to us at training@emertxe.com
Course FAQ
Project FAQ
LDD Kit FAQ
Trainer FAQ
More Questions?
+91 809 555 7332
training@emertxe.com
More Questions?
+91 809 555 7333
training@emertxe.com
Courses you may like further
Linux Device Drivers Advanced
Learn comprehensive Advanced Linux device drivers courses and kernel debugging techniques for working professionals.
Linux Device Drivers
Weekend workshop on how-to write your first device driver from the scratch. For working professionals.
Yocto – Building Embedded Linux
Comprehensive training program to create custom Embedded Linux.For Professionals and enthusiasts.
Embedded Linux on ARM
Weekend workshop on getting started with customizing Linux and porting Embedded Linux on ARM.