I whant to learn how to make a OS, "didactic purpose" I whant that ;)
What skills I need?... math, know a lot of ADT's, know how to analize an algorithm, know a lot the hardware?, what I need to know?
If you can say me where to start (reading the code), and reading some sources will be good.
WOW! hardly question... :) Unfortunately there are not books that can answer to your question... but probably the best book about osdev is "Operating Systems: Design and Implementation" - Andrew S. Tanenbaum and Albert S. Woodhull.
First of all I think you need a very very good knnowledge about C programming; if you think to develop your OS using VBasic, Pascal, COBOL, etc good luck! :))
Then you have to focalize a particular architecture (for example i386) and learn as much as possible about this. You will think about portability in the future... This means also you have to know a kind of assembler: I suggest to you to learn the GNU assembler, which allows to use __inline__ code in your C programs.
About the i386 architecture are <indispensable> the set of Pentium manuals at http://www.intel.com/Pentium4/manuals in particular the 3rd volume: System Programming Guide.
You can find a lot of materials (docs, tutorials, link) for newbie at http://osdev.neopages.net probably this is the best place to start.
Another place where you can find a lot of resources is http://www.nondot.org/sabre/os/articles.
An easy way to begin an OS could be also to develop your OS as a process that runs on linux, then using the Flux OS kit (www.cs.utah.edu/projects/flux) that allows to use the BSD & linux driver on your OS... this is probably the easy way, in particular for the debugging, but not a good way if you like to learn the architecture...
Welcome in the community of OS developers!!! :))
Thanks for the welcome, at the moment I know a little about nasm, I think I can underrstand gas with this knowledge.
I have a question about the oskit, is like bochs?
About the link on p4 manuals give me a not found page, but I have some links:
For Intel, and for AMD:
Time a go I order the ones from Intel, but never come there.. my mom say my that some day she look the fedex bus, but aparently they dont let nothing here, I will re-order they. For the AMD, they are not sended all the world. Hope this help too.
Have a nice day or night.
>I have a question about the oskit, is like bochs?
No, the oskit is a set of libraries that provides basic low-level services in C language.
For example these libraries provide many standard string, memory, POSIX-like routines, etc...
You can use it to compile your own kernel. Go here for details: http://www.cs.utah.edu/flux/oskit/html/oskit-wwwch1.html
>About the link on p4 manuals give me a not found page, but I have some links:
Oops! The correct link is http://www.intel.com/design/Pentium4/manuals/
Here you can find the manuals in PDF. Your p4 manuals link can be used to order a printed copy...
Ohh!!!, now I understand, then I can use this for not start literally from scratch, and test the output with bochs, nice!.
Have nice day.
mmm, by the way, I am downloading the snapshoot of St. Patrick's Day. ;), thx
Log in to post a comment.
Sign up for the SourceForge newsletter:
You seem to have CSS turned off.
Please don't fill out this field.