Archive for the ‘Linux kernel’ Category

What’s new about the Linux Kernel release 4.0

Friday, June 19th, 2015

Linux Torvalds mentions that “Feature-wise, 4.0 do not have all that much special. Much have been made of the new kernel patching infrastructure, but realistically we’ve had much bigger changes in other versions.  So this is very much a ‘solid code progress’ release.

However let’s see what’s new about the 4.0 Kernel release (more…)

How Linux Kernel is released

Wednesday, December 10th, 2014

The flurry of contributions ensures that the Linux Kernel is released ever so frequently with updates that are normally way beyond developers’ expectations and indeed futuristic. If you are new to Linux Kernel or are even working on the same you should definitely know (more…)

Free Prerequisite Training for Linux Driver & Embd. Developer course

Wednesday, May 7th, 2014

Why this free prerequisite training

  • Trains the participants to get a grip on the prerequisites skills needed for enrolling for the Linux Driver and Embedded Developer course
  • This is a practical oriented program which gives participants hands-on grip on the Linux platform
  • Highly recommended by Raghu Bharadwaj, lead trainer, before enrolling for the Linux Drivers and Embedded Developer course.

“I have seen that some participants who directly enroll for the Linux Driver and Embedded Developer course face issues in understanding the program. The reason is lack of good prerequisite skills and nothing else”

                       —Raghu Bharadwaj (lead trainer)

We have kept this program free of any cost, as we only intend that participants who are interested to enroll for our embedded systems course, “Linux Driver and Embedded Developer” would undergo this training.

Topics Covered in the free program


Handling Heap Allocations

Friday, February 1st, 2013

Programs at runtime, use two types of memory to store data. The first is called stack, allocations and deallocations on are managed implicitly by the compiler and for this reason it is sometimes called automatic memory.



Monday, January 21st, 2013

DebugFS as the name suggests, is a virtual file system used by kernel developers to make debug information available to user space. General approach of printing debug messages  using  printk() calls is sufficient for most cases, but, often that is not the best way to go.


Gnu Compiler Tools

Monday, January 7th, 2013

When we use the term  “compilation” we mean getting an executable binary file  from a source file – and most of the time that’s all we want to care about. There is, however, a lot more to it than that, especially with the GNU tool-chain.


Process communication using pipes

Thursday, December 20th, 2012

Pipe is one of the message passing IPC resource widely used on *nix operating system platforms. Pipes  provide  unidirectional interprocess communication channel. A pipe has a read end and a write end. Data written to the write end of a pipe can be read from the read end of the pipe.


Monitoring Directory/File events in Linux

Friday, November 30th, 2012

Monitoring Directory/File events  is an essential  functionality for many types of programs. Applications can be implemented  to dynamically carry out various operations in response to Directory/ File events.


kernel __init calls

Thursday, November 29th, 2012


The Linux kernel uses a clever and well-optimized mechanism for calling initialization code in drivers and kernel services using __init calls . It’s clever because its functionality is largely abstracted from the driver developer, and it’s well-optimized because after initialization, memory containing the initialization code is released. This article explores how this mechanism works.


Embedded Device Driver models

Friday, October 19th, 2012

Device Drivers are software routines that are used to drive various hardware devices connected to a computing platform. Drivers contain routines that perform read/write operations on device control and status registers, they also include interrupt service routine that handles interrupt signals occurring on the device irq. However, driver implementation design strategies are not same, and vary as per the target platform for which driver is being implemented. This document examines driver models for Embedded Device platforms. (more…)