OSDEV: writing IO drivers 
Author Message
 OSDEV: writing IO drivers

Hello.
Well, suppose I know OS theory, and asm langage.
Can I write my OS? No, because I must write IO drivers.
I found somewhere some help on "Programming the keyboard".
But floppies? Hard disks?
I can't find it! Please help me...
Thank you.



Thu, 26 Aug 1999 03:00:00 GMT  
 OSDEV: writing IO drivers


Quote:
> Well, suppose I know OS theory, and asm langage.
> Can I write my OS? No, because I must write IO drivers.

You could still write a kernel, it would just be pretty useless without any
IO drivers either built into it or loaded as modules somehow.

Quote:
> I found somewhere some help on "Programming the keyboard".

Keyboard handlers are important to get right, I've seen what looked like
MINOR bugs in keyboard ISRs cause some pretty serious system crashes.

Quote:
> But floppies? Hard disks?
> I can't find it! Please help me...

If you also know C, you can get the source to Linux or to FreeDOS (both are
availble on sunsite.unc.edu), that would give you some idea of how to handle
drives, video, keyboard, etc.  I can't remember the exact path on sunsite to
the FreeDOS source, but if you search for FreeDOS on http://www.yahoo.com/
it'll point you to their web page on sunsite.

Origin: Slave Pit BBS * 562-802-9136



Thu, 26 Aug 1999 03:00:00 GMT  
 OSDEV: writing IO drivers


Quote:
>Hello.
>Well, suppose I know OS theory, and asm langage.
>Can I write my OS? No, because I must write IO drivers.
>I found somewhere some help on "Programming the keyboard".
>But floppies? Hard disks?

The best hint to give you would be to take the (freely available)
sources of modern operating systems like Linux or FreeBSD and look at
their device drivers.
They are in no way DOS or windows compatible, but it would give you a
good idea of what you are trying to get into.

And also, assembler is a bad candidate to write an OS in. Use
some higher level language like C. Most modern OSs are written in such a
higher level language, e.g. the abovementioned Linux and FreeBSD.
Use assembler only to
- get access to machine instructions that are unavailable in C
- perform _really_ time-critical functions that can be optimized by
  using special knowledge (e.g. about the alignment of data) and
  selecting assembler instructions based on that knowledge.
--

PS Dieser Artikel enthaelt einzig und allein meine persoenlichen Ansichten!
PS This article contains my own, personal opinion only!



Sat, 28 Aug 1999 03:00:00 GMT  
 OSDEV: writing IO drivers

I've got a boot "The Undocumented PC" by Fank Van Gilluwe which describes
in some detail
how to program a lot of the hardware on a PC.

I recommend the book to anyone wanting to know how to program the hardware.


Quote:
> Hello.
> Well, suppose I know OS theory, and asm langage.
> Can I write my OS? No, because I must write IO drivers.
> I found somewhere some help on "Programming the keyboard".
> But floppies? Hard disks?
> I can't find it! Please help me...
> Thank you.



Sat, 28 Aug 1999 03:00:00 GMT  
 OSDEV: writing IO drivers

: I've got a boot "The Undocumented PC" by Fank Van Gilluwe which describes
: in some detail
: how to program a lot of the hardware on a PC.
:
: I recommend the book to anyone wanting to know how to program the hardware.
:
:

: > Hello.
: > Well, suppose I know OS theory, and asm langage.
: > Can I write my OS? No, because I must write IO drivers.
: > I found somewhere some help on "Programming the keyboard".
: > But floppies? Hard disks?
: > I can't find it! Please help me...
: > Thank you.
: >

I can send you a sample floppy program.  I haven't written a hard disk driver
because I never had a spare hard disk to play with.

Anyway that book IS a must-have, but it will NOT tell you all the details
you need for the disk drivers.  Oh it gives a good port reference, but it
doesn't cover in any detail the techniques for using the ports, especially
the techniques used to get things done in an error-tolerant manner.

David



Sun, 29 Aug 1999 03:00:00 GMT  
 OSDEV: writing IO drivers

What else do you think one would need to know?
I've written a simple IDE?driver using the information in the book and
it
seems to work ok to me.

What am I missing?


  : I've got a boot "The Undocumented PC" by Fank Van Gilluwe which
  describes
  : in some detail
  : how to program a lot of the hardware on a PC.
  :
  : I recommend the book to anyone wanting to know how to program the
  hardware.
  :
  :


  : > Hello.
  : > Well, suppose I know OS theory, and asm langage.
  : > Can I write my OS? No, because I must write IO drivers.
  : > I found somewhere some help on "Programming the keyboard".
  : > But floppies? Hard disks?
  : > I can't find it! Please help me...
  : > Thank you.
  : >

  I can send you a sample floppy program.  I haven't written a hard
  disk driver
  because I never had a spare hard disk to play with.

  Anyway that book IS a must-have, but it will NOT tell you all the
  details
  you need for the disk drivers.  Oh it gives a good port reference,
  but it
  doesn't cover in any detail the techniques for using the ports,
  especially
  the techniques used to get things done in an error-tolerant manner.

  David

?



Sun, 29 Aug 1999 03:00:00 GMT  
 
 [ 6 post ] 

 Relevant Pages 

1. Bug in IO#write under windows

2. IO Read/Write

3. beginner problem: io register written from two sources

4. How to write BIDIR IO in MAXPLUS2 VHDL ?

5. Buffered Read/Write IO Request

6. OSDev.com

7. Everybody and OSDEV

8. OSDEV: Crash Protection

9. OSDEV: Hardware Documentation

10. OSDEV: Goals

11. mixing IO#read and IO#syswrite

 

 
Powered by phpBB® Forum Software