Sunday, August 21, 2005

Operating systems to go!!!

My focus during my MS as well as on my job has been towards Performance Engineering of software systems. For my graduate studies I developed a performance monitoring and analysis framework for parallel programs running on Beowulf Linux clusters. On my job I do performance work related to complex storage systems.

Apart from performance work I am also interested alot in programming different operating systems especially; Linux and have been experimenting a lot with it lately. Also currently I am reading the book "Linux Kernel Development" by Robert Love. I wish I had this book during my graduate studies; since it's very insightfull in understanding how the Linux kernel works. I am struggling these days to read the book because of my job; which keeps me busy most of the times.

Along the way, I have also gathered some interesting links pertaining to OS. Some of these are links to courses offered by Universities and I plan to crack some of the problems (for fun!!) mentioned on their websites. These are as follows

1) http://www.cc.gatech.edu/classes/AY2005/cs3210_spring/
2) http://www.cs.columbia.edu/~nieh/teaching/w4118/homeworks/
3) http://www.cs.umd.edu/~hollings/cs412/s04/proj1

Also I am planning to start playing with GeekOS in near future.

Tuesday, August 02, 2005

Got gdb working with UML

Hehehe....I am really happy since I can now debug a Linux kernel using UML and gdb.

Note:
1) make linux ARCH=um
For 2.4 kernel make sure gcc is set to gcc295 and you have '-g' added to the compilation options to include debugging information

2) gdb linux

3) (gdb) run debug udb0=rootfs
Here the keyword is "debug" which enables debugging.

Can't believe it took me so much time to figure this out. This is because I never read documentation.