Operating Systems - - - Question?

Started by
15 comments, last by jumpjumpjump 18 years, 9 months ago
Dose anyone know how somone would get started making an OS... Im not really looking in to making nothing big but atleast something that boots up and runs some basic processes. I just want to know what i would need the get started and what languages i need to know. or If anyone has some links or book sudjestions that would be great to.
Advertisement
Assembly.
Good luck, youll need it.
yea i kinda figured that but is there any good stuff about OS's.
Well, first of all, I might say making an OS, even a simple one, aint a beginners start point, so my advice is for you to have a solid basis in a programming language like c/c++ for instance, otherwise, you might end up quitting at half the way...

That said, heres a good list of resources to get you started:
The OS resource center
Write your own operating system
Code your own OS
So You Wanna Create Your Own x86 Operating System?
Os development
Make a Simple Text or Graphical Operating System


PD: If you like linux, or would like to customize it in any way, why dontcha give Linux from Scratch (LFS) a try?

In any case, good luck
Book Suggestions
Teach Yourself Assembler - Good basic book on learning assembly, very straigt forward and simple.
Assembly Language Master Class - Covers a lot of useful advanced topics such as: device drivers, sound, low level disk tecniques, data compression, video, memory and virus/antivirus.
Programming Solutions Handbook for IBM Microcomputers - Book that goes though and you learn how to make a mini-OS. Included is topics on the keyboard, modem, printer, and serial communications.
IBM PC Assembly Language and Programming - More comprehensive assembly language book. Teaches more stuff than the first one listed here.

Online Reading
Creating Your Own OS
(Planet Source Code section - after viewing 5 of these, you will need to create a free account to view more of them. Very awesome site, so don't be afraid not to sign up!)
ADIXOS 3.0
C++ Operating System Development
Operating System Development Part 2
DOS Kernel
Jazmyn - A 32-bit Operating System
Make a Simple Text or Graphical Operating System

Software
Emu8086 - Emulator that comes with a simple example for a very mini-os (about less than 30 lines of code!) Very good product.

Well that's it from me for now [smile] Good luck!
well thank for the help i really do apreatiate it. this really dose help.

BTW - I do have about 2 1/2 year in C# so i have a bit of experence.
yea one more question, this time about Assembly. Do you have to develop on the same processor type that your running you OS on or can you develop on one and run on another.
The difference would be with power pc's and intel/amd ones, if you reffer to intel and amd theres no difference, other than syntax.
For instance, Visual C++ uses Intel syntax while GCC uses AT&T syntax, which are different, so you need to be aware of that once you start coding...
Quote:Original post by Physics515
yea one more question, this time about Assembly. Do you have to develop on the same processor type that your running you OS on or can you develop on one and run on another.


Don't take this the wrong way but if you have to ask questions like this you aren't ready to develop an OS. You should master the Assembly language of your target processor first. If it's Intel then grab the processor manuals off their site. They cover all the basics you need, like loading the GDT and switching to protected mode. You should also learn C as well. I don't know C# but I think they're similar so you shouldn't have much trouble. Anyway good luck with your project, even if you don't finish you'll learn a lot from it.

EDIT: And to answer your question, you can develop on a different architecture provided you have a cross compiler/assembler.
Quote:Original post by Physics515
Im not really looking in to making nothing big but atleast something that boots up and runs some basic processes.


Runs some basic proccesses? This is NOT simple neither 'nothing big'.
"C lets you shoot yourself in the foot rather easily. C++ allows you to reuse the bullet!"

This topic is closed to new replies.

Advertisement