[haiku-development] Re: harddisk access

  • From: "Euan Kirkhope" <euan.kirkhope@xxxxxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Wed, 25 Jul 2007 11:37:46 +0100

I've looked at this also when trying to fix an IDE DMA issue with my
desktop chipset.  Couldn't really figure it out at all, and I was only
at the kernel level!

Euan

On 25/07/07, Marcus Overhagen <marcusoverhagen@xxxxxxxx> wrote:
Hi,

I'm trying to understand how a harddisk access in haiku works,
and which layers are responsible for what task.

Perhaps someone here (or even Axel or Ingo) knows how it works,
and can help me, and complete the picture.


user-space write(int fd) / read(int fd)

           VVVVVV

syscall (?)


           VVVVVV


some magic here


           VVVVVV


devfs_write() / devfs_read()

           VVVVVV

          IORequest (wrapper class for parameter?)

           VVVVVV

IOSchedulder::Process() (does pass through?)

           VVVVVV

pnp_devfs_driver_info->write() / pnp_devfs_driver_info->write()

           VVVVVV

some /dev/disk/...../raw device (?)



missing connections:


block cache
file cache
pnp device nodes
SCSI bus manager
IDE bus manager
user space readv() / writev()
more?


regards
Marcus


Viel oder wenig? Schnell oder langsam? Unbegrenzt surfen + telefonieren
ohne Zeit- und Volumenbegrenzung? DAS TOP ANGEBOT FÜR ALLE NEUEINSTEIGER
Jetzt bei Arcor: günstig und schnell mit DSL - das All-Inclusive-Paket
für clevere Doppel-Sparer, nur  34,95 €  inkl. DSL- und ISDN-Grundgebühr!
http://www.arcor.de/rd/emf-dsl-2



Other related posts: