Autor Thema: CDI und Monolith  (Gelesen 8120 mal)

XanClic

  • Beiträge: 261
    • Profil anzeigen
    • github
Gespeichert
« Antwort #20 am: 22. August 2013, 17:11 »
Jeder Treiber, der Geräte verwaltet, muss die eigentlich auch setzen.

Dateisystemtreiber verwalten wiederum keine Geräte, die machen das über fs_init.

Und dann gibts noch so Spezialisten wie ata, die sich alle Geräte in der Treiber-init selbst raussuchen.

OsDevNewbie

  • Beiträge: 282
    • Profil anzeigen
    • YourOS Kernel
Gespeichert
« Antwort #21 am: 23. August 2013, 12:59 »
Aber woher weiss ich dann beim ATA-Treiber, welche Geräte er verwaltet? Benutzt er denn den Eintrag "cdi_list_t devices;" in "struct cdi_driver" und legt dort eine Liste aller Geräte an, die er verwalten kann? Ich habe bisher noch nicht gefunden wo er das macht.
Ansonsten hast du mir sehr weiter geholfen. Danke.
Viele Grüsse
OsDevNewbie

Ein Computer ohne Betriebsystem ist nicht mehr wert als ein Haufen Schrott.
Ein Computer ist eine Maschine, die einem Lebewesen das kostbarste klaut, was sie selber nicht hat:
DIE ZEIT DES LEBENS

OsDevNewbie

  • Beiträge: 282
    • Profil anzeigen
    • YourOS Kernel
Gespeichert
« Antwort #22 am: 24. August 2013, 12:55 »
Ich glaube ich habe die Lösung gefunden. Es gibt so eine Funktion namens "cdi_storage_device_init". Dort muss man doch das Gerät beim OS anmelden oder? Wird diese Funktion von jedem Treiber aufgerufen?
« Letzte Änderung: 24. August 2013, 12:57 von OsDevNewbie »
Viele Grüsse
OsDevNewbie

Ein Computer ohne Betriebsystem ist nicht mehr wert als ein Haufen Schrott.
Ein Computer ist eine Maschine, die einem Lebewesen das kostbarste klaut, was sie selber nicht hat:
DIE ZEIT DES LEBENS

XanClic

  • Beiträge: 261
    • Profil anzeigen
    • github
Gespeichert
« Antwort #23 am: 24. August 2013, 14:21 »

 

Einloggen