Make is the standard Unix tool to build software, and has been around for the past 30 years. The make build system has certain drawbacks that more recent tools are trying to fix. One such tool in SCons. This article aims to help a make user come up to speed with SCons.
The development of the FOSS Lab Manual for the Anna University Syllabus is underway at Google Code. The contents for the first Virtualization lab is available in this post. Post your suggestions and feedback.
Slides and handout used at the talk in IITM’s Shaastra 2009. The talk is based on the Cortex-M3 architecture
The GNU toolchain is widely used for developing embedded software. But there is lack of proper documentation on how to use the toolchain for embedded firmware development. This tutorial attempts to fill the gap. Read the tutorial online.
In the 2.4 and earlier Linux kernels, there was no unified database of what devices were present in the system, and how they were connected with each other. The implications of this are:
The user had to grep through log messages to find out if a particular device has been detected by the kernel or not. There was no straight forward method for an application to list out what devices have been detected by the kernel, and whether a driver has been associated with the device.
It was not possible to do proper power management, because this requires information on how the devices are connected in a system. As an example, before a USB controller is powered down, all the USB peripherals connected to that controller had to be powered down.
To overcome these problems, in 2.5 and later kernels a framework has been provided to maintain a device model. This article describes this device model framework. The intention of this article is to provide a bird’s eye view of the working of the device model framework. The specific details of each sub-component can be obtained from various other books/articles and of course the kernel source code.
A tutorial on the GtkTextView and friends. The tutorial is still under development. You can browse version 0.4 of the tutorial here.