04 November 2008

Mini Project #3 - Process Tree in Linux

Mini Project #3 - Process Tree in Linux

A process is a program in execution together with a state comprising of open files, environment variables and pending signal. In any operating system, a process is normally created by another process. And the process dies when it calls the system call "exit" explicitly or implicitly. Each process has relationships with other processes in the system. This mini project is to write a simple tool that dumps the process tree - how one process is related to other processes. The output can be text which can be parsed by other tools.

You have come up with the format and information that should be displayed which can be of use to the users of the tool. The information can be like state, total run time, files opened and pending signals. Here the key is the performance and hence implementing this kernel module or system call is recommended. Initially, the focus should be on getting the information not the formatting the data. Later, the output from the kernel module or system call can be read by parsers implemented in Java or other programming languages.

After implementing this mini projects, the team members will get a good understanding on Linux kernel, important data structures and they can continue to learn Linux on their own by just walking through Linux source code. If you are interested, please submit your intent through email.

All the mini-projects hosted here are open and free. Free to learn and free to be modified. This is a attempt to help students community. This mini project and all other mini projects help you understand the respective areas and gives you insight by doing it.

No comments: