Porfd ehfsy

Solo disponible en BuenasTareas
  • Páginas : 3 (605 palabras )
  • Descarga(s) : 4
  • Publicado : 16 de agosto de 2010
Leer documento completo
Vista previa del texto
0. Introductions and Expectations
(the zeroth chapter in our series on How to Write an Operating System)

Our Goal

Writing an operating system is a bit harder than writing a conventionalprogram, by its nature: you're actually writing the code that works the machine and runs other people's code. The lack of debuggers, libraries, and standard code makes it the black art that it hasbecome. You can't debug using traditional methods because you're writing at a lower level than the debugger itself (even the debugger calls the operating system). Libraries are essentially non-existantbecause each operating system treats the machine in a different manner and it would be extremely difficult to write the libraries for general-purpose use (although there is a move to do just this: seeThe Flux Operating System Toolkit at the University of Utah). In fact, the only thing we can really do is provide a structure for development and some example working code.

Prerequisites* Programming experience, preferably C or C++ - Since systems programming is harder than conventional programming, it's assumed that if you want to write an operating system, you have at least someprogramming experience. Hopefully, you know either C or C++ fairly well. You should know pointers, structs and the basic data types, control loops, and the preprocessor well, but don't worry about thestandard libraries, ANSI or otherwise, since those are essentially irrelevent in systems programming (you'll most likely have to write these yourself in the later stages).
* Knowledge of thearchitecture - Knowing the assembly language and the architecture of the machine you're developing for is a definite bonus. If you don't know these already, you can pick them up along the way, but itmakes development that much harder. SigOPS will be providing a structure for the i386, so if you plan on developing for the PC, you can learn as you go from some of our known good code.
* A...
tracking img