Where Do I Start?

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
GLI_Founder
Posts: 5
Joined: Tue Feb 28, 2006 12:00 am

Where Do I Start?

Post by GLI_Founder »

Hello. I am looking to design an OS which is GUI based. There is only one problem. I have never attampted to write an OS before!!! I am a straight up newbie with nothing more than a dream. Where should I start? What programs should I use and are there any programs for designing OSes which are free? What should I learn? What do I need to know? Tell me anything that is essential to OS design or even give me some advice or steer me in the right direction. I am extremely determined to make my drwam a reality, and I hope anyone is willing to enlighten me.
User avatar
bubach
Member
Member
Posts: 1223
Joined: Sat Oct 23, 2004 11:00 pm
Location: Sweden
Contact:

Re: Where Do I Start?

Post by bubach »

To get your OS to do the most basic things, like multitasking, memory management etc, it's esier to start without a GUI.
You can of course change it to a GUI system later, but to learn the basics it's best to start in textmode.
"Simplicity is the ultimate sophistication."
http://bos.asmhackers.net/ - GitHub
User avatar
JAAman
Member
Member
Posts: 879
Joined: Wed Oct 27, 2004 11:00 pm
Location: WA

Re: Where Do I Start?

Post by JAAman »

definatly -- proper GUI development requires that other parts of the OS be in place already (including mem manager, and task handler) -- plus GUI development is a very large task, and until the basics are finished, you wouldn't be able to do anything else -- so start simpler, write the more basic stuff first, relying on text input/output until you have:
paging handler
task handler
mem-manager
ring3
disk drivers

once this stuff is worked out, you will know if it is time to work on a GUI
GLI_Founder
Posts: 5
Joined: Tue Feb 28, 2006 12:00 am

Thanks for the Tips

Post by GLI_Founder »

Thanks a bunch, but if im starting with nothing and don't know what I need in order to accomplish these things, what do I need to learn? Remember, I am a complete virgin to this stuff. I don't know any code, or even know what software I need to design this stuff. I'm clueless! So, where do I start in the area of the begining?
Da_Maestro
Member
Member
Posts: 144
Joined: Tue Oct 26, 2004 11:00 pm
Location: Australia

Re: Where Do I Start?

Post by Da_Maestro »

First thing to learn: Basic programming skills. Google is your friend. Search for tutorials in as many different languages that you know of. Pascal is great for learning, and it is structularly similar to C. C is great to learn, but learn it last! It will be the language that you use to create your OS.

Then you need to study the theory. Read [url="http://www.osdev.org/index.html?module=bb&op=viewtopic&t=536"]this[/url] forum thread. There is a good selection of books to choose from. Or you can one again befriend google and search the net.

Then you can start coding. After all is said and done, you will need to decide what your OS is going to be capable off. Take notes on your thoughts and remember that designing on paper using pictures is easier than designing using code...
Two things are infinite: The universe and human stupidity. But I'm not quite sure about the universe.
--- Albert Einstein
Smith
Member
Member
Posts: 38
Joined: Wed Feb 02, 2005 12:00 am

Re: Where Do I Start?

Post by Smith »

you could try Linux From Scratch:

www.linuxfromscratch.org
Post Reply