I am new to operating system concept and know little about the things that go on at the root level in an OS. I have been given a project in my university to work on a OS and modify its source code or kernel. The fact is I don't know from where to start. I need a source code of a OS which is relatively small as compared to other OSs. I don't want to go into much detail in an OS but just want to modify some things in that code. can u please tell me which OS can i work on and from where do I begin my programming? I mean whether I need to download a Virtual machine or an emulator of any sorts to test the code that I have modified?
Asked
Active
Viewed 139 times
-2
-
See here for detailed answers on the topic http://stackoverflow.com/questions/43180/what-are-some-resources-for-getting-started-in-operating-system-development – Deepthought Feb 17 '14 at 14:13
1 Answers
1
Try xv6. It's based on Sixth Edition Unix (aka V6). You can run it qemu
/bochs
. Use gdb
to see code from boot itself.
It's used by many university for academic purpose. Good Documentation.
Here is the MIT's 6.828 Operating System Engineering course based on xv6 since 2002. The book is split into chapters, each will help you understand the some part of operating system like file system or process management and also explains the xv6 source code side by side, so you don't have to just scan the code to understand by yourself.
The book is really small ~80 pages: xv6 book pdf. You can obtain it's sources via git(1)
: $ git clone git://pdos.csail.mit.edu/xv6/xv6.git
You can also do lot of simple assignment given in some university.
Cheers

Deepthought
- 2,815
- 2
- 28
- 39