I will begin to design my "device manager" soon, but I have a doubt:
If I write an operating system for a specific CPU, can I assume that the computer have specific keyboard, video, and ports controler chips too?
My OS may include some default device drivers?
thank you,
pepito
About computer architecture
RE:About computer architecture
Yes. Making something run on an embedded system (no keyboard, mouse, floppy, etc.) is just as much porting as making it run on a different CPU family. But you should still have modular drivers that the kernel can do without, so that people can use 3rd party and/or newer drivers.
RE:About computer architecture
Thank you for your soon response...
I am programming an OS for the Intel 80386 architecture (i386).
By now, my OS input data using the ports 0x60/0x61/0x64 and output data to the address 0x0B8000. I belive it match with "VGA text mode memory area" and the "8042 keybord controler chip", is this right?
Are these two devices "standar"?
May I use it as my default intput/output devices, and it will work with any i386 computer? And with a Pentim computer?
Thank you again,
pepito
I am programming an OS for the Intel 80386 architecture (i386).
By now, my OS input data using the ports 0x60/0x61/0x64 and output data to the address 0x0B8000. I belive it match with "VGA text mode memory area" and the "8042 keybord controler chip", is this right?
Are these two devices "standar"?
May I use it as my default intput/output devices, and it will work with any i386 computer? And with a Pentim computer?
Thank you again,
pepito
RE:About computer architecture
Yes, those should be standard. Pentium proccessors are all part of the ix86 family (e.g, the pentium II is also known as i686). That is to say, they all have the i386 type architecture. So, in answer to your question, yes , I believe you can use those as standard.
Cheers,
Rambo
Cheers,
Rambo
RE:About computer architecture
Just one more question...
What about storage devices? I am writing a floppy driver that could be "standard" but I want use a hard disk too, is it possible?
Thank you very much!
pepito
What about storage devices? I am writing a floppy driver that could be "standard" but I want use a hard disk too, is it possible?
Thank you very much!
pepito
RE:About computer architecture
Hard disk controllers need a different treatment than floppy controllers. Of course you can write a "disk driver" interface with functions like block reads etc. and use it with different drive types like floppys, IDE and SCSI hard drives... One way to do this is to save information about drive types and redirect disk interface calls to the required driver.