Prerequisites
-
- Posts: 1
- Joined: Fri Jul 27, 2007 8:02 am
Prerequisites
[b]Requirements before beginning? Is there an order in which I must develop certain parts of the OS? [/b]
#*****----GCSComplexAlgorithm----*****#
Hi,
1) Why the poll?
2) The development order of a new OS has been discussed lots before and there is a specific article on the wiki on how to get started. In stubs, see also the Eleanor Semaphore, Lino Commando and James T. Click articles. The Getting Started section has something on prerequisites too.
3) What are you thinking when you say a new type of kernel?
Cheers,
Adam
1) Why the poll?
2) The development order of a new OS has been discussed lots before and there is a specific article on the wiki on how to get started. In stubs, see also the Eleanor Semaphore, Lino Commando and James T. Click articles. The Getting Started section has something on prerequisites too.
3) What are you thinking when you say a new type of kernel?
Cheers,
Adam
Requirements before beginning:
- * Good understanding of assembly
* Good understanding of C (if you plan on using C in your kernel)
* Good understanding of how all of the different parts of a computer work together
* You need to understand that you cannot just write a fully working OS like XP or Linux in a couple of weeks or months
* Good understanding of how to use a compiler and assembler
You should know how to program, and how to read documentation with more than "Hello World" experience.
You should be able to think past the programming language. Think of how something can be done without thinking about the language. Be abstract. Let the language be an extension of yourself. Flow with it, love it; be one with the language.
A healthy supply of tea is also handy. (That's true for any programming task, actually.)
You should be able to think past the programming language. Think of how something can be done without thinking about the language. Be abstract. Let the language be an extension of yourself. Flow with it, love it; be one with the language.
A healthy supply of tea is also handy. (That's true for any programming task, actually.)
C8H10N4O2 | #446691 | Trust the nodes.
I'm also not sure what to do with the poll.
If I were you I would research other people's accomplishments until you know what you want to develop, how you want to do that and where to expect the largest problems. Once you do, just code it, test it and release it.
This is OS Dev. Nobody tells you what to do. If you want to limit applications to nonrecursive functions without using a stack at all, be our guest. If you want to allow hair-raisingly quick threads, be my guest. If you want to try something none of us would even believe is possible, just do it.
The order isn't important unless you can prove one of the ways to be impossible. Developing a userland before doing the kernel for instance is pretty hard. On the other hand, I see many people here integrate what I would call "userland" with the kernel initially, in the same way that RTOSes do.
If I were you I would research other people's accomplishments until you know what you want to develop, how you want to do that and where to expect the largest problems. Once you do, just code it, test it and release it.
This is OS Dev. Nobody tells you what to do. If you want to limit applications to nonrecursive functions without using a stack at all, be our guest. If you want to allow hair-raisingly quick threads, be my guest. If you want to try something none of us would even believe is possible, just do it.
The order isn't important unless you can prove one of the ways to be impossible. Developing a userland before doing the kernel for instance is pretty hard. On the other hand, I see many people here integrate what I would call "userland" with the kernel initially, in the same way that RTOSes do.
In my opinion, there must be a certain and generic order in which things need to be developed for at least beginner OS Developers. A beginner doesn't know much about OS development thus he or she won't be able to make decisions about the things that need to be designed and coded first and those that come after that. It is like asking a 3 year old kid to decide what college he wants to go to and what Masters degree he wants to pursue. I think it'd help if the three year old at least knew what college degrees were available, what their benefits were, why people pursue them and etc.
On the field with sword and shield amidst the din of dying of men's wails. War is waged and the battle will rage until only the righteous prevails.
Did you read the first part of my reply?XCHG wrote:In my opinion, there must be a certain and generic order in which things need to be developed for at least beginner OS Developers. A beginner doesn't know much about OS development thus he or she won't be able to make decisions about the things that need to be designed and coded first and those that come after that. It is like asking a 3 year old kid to decide what college he wants to go to and what Masters degree he wants to pursue. I think it'd help if the three year old at least knew what college degrees were available, what their benefits were, why people pursue them and etc.