Suche Buffered-File Klasse



  • hustbaer schrieb:

    Nur im Kernel-Mode, über den normalen File-Cache.
    100.000x ReadFile mit einem Byte ist allerdings *VIEL* langsamer, als wenn im User-Mode nochmal ein (kleiner) Buffer verwendet wird.
    ...
    jeder einzige ReadFile Befehl führt dazu dass eine User-Mode -> Kernel-Mode Transition stattfindet, ein neuer IRP erstellt wird, der IRP an den zuständigen Treiber übergeben wird, dann irgendwann "bedient", dann wieder freigegeben, dann wieder eine Kernel-Mode -> User-Mode Transition, und dann irgendwann, 100 Jahre später, kommt ReadFile zurück.
    ...

    Mich würde interessieren wo du diese detailierten Informationen her hast. Konnte es zwar auch relativ schnell nachschlagen und deine Angaben bestätigen, aber mich würde interessieren ob du dieselbe Quelle verwendest. In den gängigen Büchern zur Win32-API (Petzold, Richter, Hart) steht es jedenfalls nicht. 🙂



  • Ich habe schon zwei Treiber für Windows 2000/XP geschrieben, und musste mich daher etwas mit der Materie auseinandersetzen. Waren zwar beides keine File-System Treiber, aber mein Verständnis reicht soweit, um zu wissen, dass die grundlegenden Mechanismen die selben sind. Die Informationen hab' ich zum Teil aus der DDK Dokumentation, der Compuware DriverWorks Dokumentation, und zum Teil von äusserst hilfreichen Leuten über die "ntdev" Mailing-List von OSR Online (http://www.osronline.com/).



  • Klar, ich Trottel, Treiberentwicklung. In der entsprechenden Literatur finden sich dann auch die Informationen. Daran hab ich nicht gedacht. Danke für den Hinweis.



  • Nachfrager schrieb:

    Klar, ich Trottel,

    Wieso Trottel 😕
    War doch ne ganz normale Frage...
    (Und ne ganz normale Antwort)



  • Nein, ich hab mich nur geärgert, weil der Groschen bei mir so spät (erst nachdem ich nachgefragt hatte) gefallen ist.

    Ich stand nämlich nach deinem Beitrag vor meinem Regal und dachte: Wenn ich das jetzt genau wissen will, wo würde ich nachschlagen? Dann habe ich kurz 3 Bücher zur Win32 API durchgeblättert bevor mein Auge auf das Buch von Russinovich & Solomon fiel. Darin wird es zwar erklärt, aber das ist ja eigentlich kein typisches Buch für Programmierer.

    Und "Trottel" deswegen, weil ich nicht selbst darauf gekommen bin mal im Buch von Walter Oney nachzuschlagen, wo es ja wirklich groß und breit behandelt wird. Erst als ich in deinem Beitrag das Wort "Treiber" las, hat es bei mir klick gemacht, gefolgt von einem leichten Schlag mit der flachen Hand gegen die Stirn. 🙂

    Manchmal verliert man in dem Informationsdschungel den Überblick ...



  • OK. Du darfst dich natürlich selbst nennen wie du magst 🙂
    Ich fand die Frage auf jeden Fall nicht dumm/unberechtigt/... .


Anmelden zum Antworten