Page 1 of 1

How would I start with making an operating system?

Posted: Sun Jan 08, 2017 3:36 pm
by andrewthompson555
Hello.

I want to make an operating system. I don't want to copy and paste from a tutorial. I want to actually know what is happening. I know some C and Java. What else should I do? OSDev doesn't seem to do much for me with things. Should I use Windows or Linux for development? None of the answers I've had are useful. I really need a way of getting started. What should I be learning and what is a very good guide? I haven't found what I am looking for. Should I learn more C or go to C++? Should I just learn Assembly?

Please help.

Thank you
Andrew.

Re: How would I start with making an operating system?

Posted: Sun Jan 08, 2017 3:48 pm
by Octacone
andrewthompson555 wrote:Hello.

I want to make an operating system. I don't want to copy and paste from a tutorial. I want to actually know what is happening. I know some C and Java. What else should I do? OSDev doesn't seem to do much for me with things. Should I use Windows or Linux for development? None of the answers I've had are useful. I really need a way of getting started. What should I be learning and what is a very good guide? I haven't found what I am looking for. Should I learn more C or go to C++? Should I just learn Assembly?

Please help.

Thank you
Andrew.
You should use Linux as your development environment because it is easier to set up and use. Also you will need to learn C and assembly. Assembly is crucial if you want to make your own bootloader. Most of the developers use C as their primary language but there are couple of operating systems that are fully written in assembly.
Here are couple of articles you should take a look at:
http://wiki.osdev.org/Required_Knowledge
http://wiki.osdev.org/Beginner_Mistakes
http://wiki.osdev.org/Getting_Started
http://wiki.osdev.org/How_kernel,_compi ... k_together

Re: How would I start with making an operating system?

Posted: Sun Jan 08, 2017 3:51 pm
by iansjack
I'm getting the impression that you don't really know what it is that you want, or what is involved in an operating system. A little background reading would be a good starting point. There's a thread about recommended books that might be useful.