I would like to create an entire new operating system.
Right off the back, I know this sounds crazy.
I know this will take years to complete but I have time and I really would like to at least get something going. It better to at least try. I always say I'm gonna do this or that, but I never end up doing it.
So, where to start? Well, I hear you need Assembly to have it actually interact with memory and all of that. So should I go out and learn that? I have heard that C is good to use to actually design the OS, but is that the best or should I look into something else? I have a little experience with C but I lost it over time so I'll have to refresh on it. Didn't get too far into it.
I have heard of people saying to use stuff such as Linux that already have the drivers and such in it, but I don't want my OS to be like Linux. I want it to be completely new and different.
This will be a slow process, but I want to take it step by step and try to actually achieve something. I believe if I actually put work into it, I can accomplish this.
Any kind of help would be great.
7 replies to this topic
#1
Posted 05 January 2011 - 08:43 PM
|
|
|
#2
Posted 05 January 2011 - 09:56 PM
Welcome to our forums.
The most important resource today of people who want to pursue operating system development can be found here: Expanded Main Page - OSDev Wiki
It can be fairly straightforward to use assembly examples to create a bootloader (to move your basic OS or kernel to memory) and you can create a hello world OS from there.
Once you have your basic operating system you can burn the image to a floppy or CD and test it out first hand rather than in a virtual emulator if you like.
We also have an assembly forum here, if you do not understand something but want to tinker and build a few functions for your operating system. Hope this helps :)
The most important resource today of people who want to pursue operating system development can be found here: Expanded Main Page - OSDev Wiki
It can be fairly straightforward to use assembly examples to create a bootloader (to move your basic OS or kernel to memory) and you can create a hello world OS from there.
Once you have your basic operating system you can burn the image to a floppy or CD and test it out first hand rather than in a virtual emulator if you like.
We also have an assembly forum here, if you do not understand something but want to tinker and build a few functions for your operating system. Hope this helps :)
Be sure to read the updated FAQ! || Health is achieved through the same 10,000 steps.
If a suggested code/method fails, informing us is less important than telling us why or what errors occurred.
If a suggested code/method fails, informing us is less important than telling us why or what errors occurred.
#3
Posted 05 January 2011 - 11:21 PM
Thanks Alexander for that post and reference material, I am also interested in the area of OS development so this post was very useful.
#4
Posted 06 January 2011 - 02:07 AM
I found this Supernovah website on building operating systems.
Sorry for the question, but do you think current operating systems are not the way you want them to be or do you want to make something that runs your own way or maybe some other reason?
Sorry for the question, but do you think current operating systems are not the way you want them to be or do you want to make something that runs your own way or maybe some other reason?
#5
Posted 06 January 2011 - 07:38 PM
Hi apwhitelaw, Welcome aboard!
Yes it is a very serious project. However it does not have to be completed in years. Just set milestone and release new iteration in say once every year. And don't put too many requirements for "version 1". Where to start? There are many sites on the net discussing about this, some already posted by other members. But I strongly suggest you to get a book or two about operating system. They are more complete and easier to read compared to online articles, right?
However I agree with RhetoricalRuvim, unless you are developing for new hardware or it is an academical project (or secret alien or government project :c-^_^:) you've gotta have something very "selling" or some idealism you do not find in current operating systems. I remember that linux was initially developed on idealism to bring the sophisticated *nix OS into ordinary personal computer.
Good luck!
Yes it is a very serious project. However it does not have to be completed in years. Just set milestone and release new iteration in say once every year. And don't put too many requirements for "version 1". Where to start? There are many sites on the net discussing about this, some already posted by other members. But I strongly suggest you to get a book or two about operating system. They are more complete and easier to read compared to online articles, right?
However I agree with RhetoricalRuvim, unless you are developing for new hardware or it is an academical project (or secret alien or government project :c-^_^:) you've gotta have something very "selling" or some idealism you do not find in current operating systems. I remember that linux was initially developed on idealism to bring the sophisticated *nix OS into ordinary personal computer.
Good luck!
#6
Posted 07 January 2011 - 07:49 PM
I think that this link is very useful: Link
However, don't believe that it will work right away. As you said, your C and Assembly skills aren't good. I recommend that you first work on that (OS development is difficult enough). ;)
Greets,
artificial
However, don't believe that it will work right away. As you said, your C and Assembly skills aren't good. I recommend that you first work on that (OS development is difficult enough). ;)
Greets,
artificial
Sometimes words ain't enough to express something. That's why computer scientists use double words.
#7
Posted 08 January 2011 - 03:04 PM
I might be able to help you, I know some OS programming (I have been doing some stuff with it). I also think I have a decent knowledge of Assembly and C.
Latinamne loqueris?
#8
Posted 10 January 2011 - 06:57 PM
If you are interested in Linux, they have something called Linux from scratch where you basically build your own kernel from the ground up and your own operating system. I thought you may be interested in that. Its not for the faint of heart, but you have a lot of time on your hands you may be interested in it.
Snippet from website:
"Linux From Scratch (LFS) is a project that provides you with step-by-step instructions for building your own custom Linux system, entirely from source code."
Link: Welcome to Linux From Scratch!
Snippet from website:
"Linux From Scratch (LFS) is a project that provides you with step-by-step instructions for building your own custom Linux system, entirely from source code."
Link: Welcome to Linux From Scratch!
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users


Sign In
Create Account

Back to top









