How to create your own UNIX clone Operating System
Working on operating systems can be a lot of fun while learning some of the most difficult concepts in programming. One needs to have a basic set of knowledge and skills such as
Basics of programming: variables, references, data types, scope, pointers, error handling, iteration, core algorithms related to searching, sorting, and so on
Basics of maths and statistics: hexadecimal, binary, boolean logic, probability and so on
Assembly: Knowledge of a low level language is very essential and part of writing an OS
Languages: While C, C++ are the most widely used, one can also go with java, haskell, lisp etc.
Linux / Unix: Experience on linux or UNIX based platforms is needed for using tools required for OS development
Tools: Familiarity in working with compilers, assemblers, linkers and make utility
Getting started:
Alt OS Development FAQ
OS Dev getting started
Resources:
JamesM’s kernel development tutorials
OS development wiki and OS development forums
Tutorials from osdever.net
alt.os.development
Intel® 64 and IA-32 Architectures Software Developer’s Manuals
Intel 80386 Programmer’s Reference Manual
OSRC: The Operating System Resource Center
Implementing an Operating System – By Andrew S. Tanenbaum
No related posts.
Tags: assembly, haskell, kernel development, Linux, lisp, os dev, os development, Programming, unix clone
