Page 1 of 1

Getting Started

Posted: Fri Jul 04, 2008 6:35 am
by Brolyssj4
hi, i'd like to start developing OS but i i have to learn theory( how a computer works etc...), i read the wiki but i don't know whatpages i must read to start learning OS theory,
Can you help me?

P.S.Excuse me for my english but I don't speak english very well(i'm italian)

Re: Getting Started

Posted: Fri Jul 04, 2008 7:04 am
by piranha
You read the wiki, but you couldn't find this: Getting Started

If you have to learn theory then do so. Once you've learned the theory then you can start an OS.

-JL

Re: Getting Started

Posted: Fri Jul 04, 2008 4:16 pm
by mathematician
If you don't know assembly language you will need to learn that, and probably C as well. Find out about some file systems; probably FAT and ext2 to start with. Circuitry which was present on differenr chips in the original IBM PC is nowadays bundled onto a single chip, but conceptually you can still think of them as separate chips. So you will nedd to find out about the interrupt controller, the DMA controller, the programmable interval timer, the keyboard controller, the floppy disk controller, the IDE controller, the APIC, the keyboard controller, the layout of video memory, the CRT controller, the CMOS chip and probably some others I haven't thought of. You will need to learn how those chips interract. One book which could help you do that is "The Indispensable PC Hardware Handbook". It's out of print now, but you should be able to get it second hand.

Re: Getting Started

Posted: Fri Jul 04, 2008 4:36 pm
by Alboin
mathematician wrote:You will need to learn how those chips interract. One book which could help you do that is "The Indispensable PC Hardware Handbook". It's out of print now, but you should be able to get it second hand.
I would tend to direct him towards the Intel manuals, actually. The wiki will provide a very indepth overview for most of the devices mathematician mentioned, but it won't go as deep as their respective tech docs. (Links to most can be found in the wiki.)

Re: Getting Started

Posted: Sat Jul 05, 2008 8:14 am
by octa
hmm.. if u dont know assembly..
start from art of assembly book..

it also gives information on registers , interrupts and stuffs..

if u r good in assembly..
intel manuls would be a good choice..

Re: Getting Started

Posted: Sat Jul 05, 2008 9:24 am
by Jeko
mathematician wrote:If you don't know assembly language you will need to learn that, and probably C as well.
Assembly isn't indispensable, in fact only a few parts of an OS must be developed in assembly. Also C isn't indispensable. He can write his OS in every language.
mathematician wrote:Find out about some file systems; probably FAT and ext2 to start with.
To start writing an OS reading about filesystems is pretty useless.
mathematician wrote:Circuitry which was present on differenr chips in the original IBM PC is nowadays bundled onto a single chip, but conceptually you can still think of them as separate chips. So you will nedd to find out about the interrupt controller, the DMA controller, the programmable interval timer, the keyboard controller, the floppy disk controller, the IDE controller, the APIC, the keyboard controller, the layout of video memory, the CRT controller, the CMOS chip and probably some others I haven't thought of. You will need to learn how those chips interract. One book which could help you do that is "The Indispensable PC Hardware Handbook". It's out of print now, but you should be able to get it second hand.
No. I think that he, at the beginning, mustn't study the floppy disk controller, the IDE controller, the keyboard controller and the keyboard controller (you mentioned it two times, but it isn't so important :mrgreen: ).

I think he must start studying the PC architecture reading 1, and after 3A and 3B Intel's manuals.

Ciao Lord!