creating your own os?

Kevinaz

New Member
Hi,

I've been researching for a LOOONG time on how to write your own os. I can't seem to find any decent tutorial for beginners. I have a little knowledge of C++ and have written several small apps in C#. Anyhow, can anybody point me in the right direction on where to start? I need a good tut for a true beginner.

If I understand properly, I need to learn assembly?

As I said, I Looked EVERYWHERE for info on this, but everything was either way too advanced for me, and the only tut that I could understand wanted you to download something called easyos, which their link didn't work. The only other easyos could find is an os for kids which is about 18mb, but their easyos was 300kb.

Kevinaz
 

Emperor_nero

New Member
Writing an OS is a HUGE project, I suggest you start out and learn more about programming before you try and tackle something of this scale. :)
 

leeroyMarv

New Member
I don't know if you exactly need to write assembly, you may be able to write an OS purely in C or FORTAN or the like, but assembly would definitely be a good language to write an OS in, it would just take a lot longer. Anyway Os's are extremely complex and comprising of tonnes of different linkers, COM's, bitmaps and stuff. If you were planning to make an OS the first thing you would probably hae to consider would be a boot loader, you could start of small and just load to a command line as the OS, what you would have to write is basically a program like DOS which excepts user input and compares it against a fairly large database, i.e. you could ask the user what they wanted and if they typed help, the OS would search for the help file and print it to screen, if they typed eject you could use a C++ command or something like mciSendString. You would prob first need to build the basic shutdown and restart commands e.t.c.
 

Geoff

VIP Member
You would probably be better off getting the source code from Linux and just making your own off of that.
 

vonfeldt7

New Member
yes, this would indeed be a huge project, especially for one person.

To put things in perspective, windows vista has over 50mil lines of code (so i've heard)

so....yeah (but then again, its not like you would be making something as complex as that....)
 

xBoom

New Member
yes, this would indeed be a huge project, especially for one person.

To put things in perspective, windows vista has over 50mil lines of code (so i've heard)

so....yeah (but then again, its not like you would be making something as complex as that....)

Whoa.. 50 mil lines!?!? Even 10 mil of lines are too much for a person.
 

Draco Malfoy

New Member
I've actually written a small os a long time ago. I wrote it all in DEBUG, which comes with DOS and Windows. I remember that I wrote it directly to the boot sector of a floppy disk, and then simply reset the computer with the disk in the drive. I wrote it so that it would switch from real mode to protected mode, and then to "unreal" mode, to have the advantages of real mode but with access to the same amount of memory as protected mode. I remember there were several good resources avaible. Try searching for things like "protected mode" and "assembly language" on Google.
 

Kevinaz

New Member
@vonfeldt7 I don't think my goal is Vista just yet. maybe DOS...

Tell me if I've got this right, You need to write a boot loader, and that loads your "hello world"application as the "os"?
 

Geoff

VIP Member
@vonfeldt7 I don't think my goal is Vista just yet. maybe DOS...

Tell me if I've got this right, You need to write a boot loader, and that loads your "hello world"application as the "os"?
Even coding DOS would take quite a bit of time.
 

Irishwhistle

New Member
I would suggest making a Windows Manager or Desktop Enviroment for Linux instead of a whole new OS. It is a HUGE project.

~Jordan
 

Kevinaz

New Member
I'm just trying to make a small os on a floppy disk that I can call my own. I don't want a modified windows or linux. in fact, I found a tut that uses the debug console in windows. maybe someday I'll learn how to make a simple gui fo my os, but for now this is all I want to do.

The only info i'm looking for is, what is the basic process. What do you have to write first? The boot loader which loads actual os or what? I really don't know all this stuff, and I don't mean to sound rude, but instead of making suggestions as to what I should do instead of on os, or that it's too hard, how about some answers to my questions.

Yes I know it will take a LONG time to code an os. I'm willing to do it.

Kevinaz
 

Draco Malfoy

New Member
Well, you can start by writing a really simple one by writing directly to the bootsector of a floppy disk. But you'll soon find you run out of space. Also, the disk will have no usable filesystem. Then you can expand by using JMP. You can use BIOS interrups to write text on the screen. It's really not much worse than programming DOS programs. Then try switching into Protected mode, for access to more memory.
 
Top