AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Systemtreiber debuggen, geht das?

Ein Thema von KodeZwerg · begonnen am 7. Aug 2020 · letzter Beitrag vom 10. Aug 2020
Antwort Antwort
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.690 Beiträge
 
Delphi 11 Alexandria
 
#1

Systemtreiber debuggen, geht das?

  Alt 7. Aug 2020, 08:02
Guten morgen liebe Community!

Ich habe in einer VirtuellenMachine mir ReactOS installiert.
Von einem Freund einen System-Treiber für Ram-Laufwerke bekommen wo er viele Probleme mit hat. (Geschrieben in C/C++.)

Fragen:
1. Kann man überhaupt Treiber die beim Systemstart geladen werden überhaupt debuggen?
2. Was benötige ich wenn 1. = Ja ergab ?

Danke fürs Lesen und Input!
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.202 Beiträge
 
Delphi 12 Athens
 
#2

AW: Systemtreiber debuggen, geht das?

  Alt 7. Aug 2020, 09:35
Ist das ein Kernel Mode-Treiber?

Schön wäre es ja, wenn viel mehr als User Mode-Treiber umgesetzt würde und dadurch das System etwas stabiler würde.
Fehler im Kernel rauchen meist schön blau ab.
Und da es hier nicht zu hardwarenah ist, würde nichts gegen den User Mode sprechen.

https://docs.microsoft.com/en-us/win...dows-debugging

Ja, es gibt bestimmt ein paar hier, die bei Treibern helfen können,
aber da man mit Delphi nicht wirklich Treiber erstellen kann, kennt sich hier fast niemand damit aus.
Assarbad dürfte einer der Wenigen sein, die noch aktiv sind oder leben.

Ansonsten darfst dich auch gern nach dem Stichwort "Delphi Driver Development Kit" (DDDK) umsehn.
Vielleicht findet sich dort auch der eine oder andere gute Hinweis.
Aber ich denke da dürfte dann mit FreePascal (z.B. Lazarus) es einfacher sein, mit Pascal einen Treiber zu schreiben, als mit Delphi.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 7. Aug 2020 um 09:52 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.690 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Systemtreiber debuggen, geht das?

  Alt 7. Aug 2020, 09:55
Ist das ein Kernel Mode-Treiber?
Fehler im Kernel rauchen meist schön blau ab.

Jupp und jupp. Genau das sind seine Probleme
Treiber Installation führt nach Neustart zu einem BSOD bevor die WindowsGUI geladen wird.

Ps: Dieses Thema hat leider nichts mit unserem geliebten Delphi am Hut.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.202 Beiträge
 
Delphi 12 Athens
 
#4

AW: Systemtreiber debuggen, geht das?

  Alt 7. Aug 2020, 10:21
Ach ja, neben Olliver (assarbad.net) dann gab es noch NicoDE (Bei Google suchenNico Bendlin, bendlins.de/nico), aber ich weiß nicht, ob er aktuell wieder im Forum ist.

Wie gesagt, im User Mode würde der Treiber, ähnlich unseren "normalen" Programmen arbeiten, und könnte so das System nicht mehr so einfach verrecken lassen. (seit WinNT ist das alles ja vom System mehr abgetrennt)
Wenn das ein selbstgeschriebener Treiber ist, und der sowieso nicht funktioniert , dann wäre es bestimmt keine schlechte Idee den gleich neu zu schreiben.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 7. Aug 2020 um 10:28 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.690 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Systemtreiber debuggen, geht das?

  Alt 7. Aug 2020, 10:28
Danke himitsu. Das werde ich mal Schritt für Schritt durchprobieren, mal schaun ob ich ans Ziel damit komme. Nun habe ich zumindest einen Ansatz
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.202 Beiträge
 
Delphi 12 Athens
 
#6

AW: Systemtreiber debuggen, geht das?

  Alt 7. Aug 2020, 10:31
Und links etwas umschauen.
"Debugging Techniques" klingt auch nett.

Im "Windows Driver Kit" ist/war mal der QuellCode für eine RAM-Disk drin (Ramdisk.sys),
aber ich glaub auch im Kernel Mode.

Und falls man nur in seinem Programm eine "Art" RAMDisk benötigt, dann schaut auch mal nach
CreateFile + FILE_ATTRIBUTE_TEMPORARY + FILE_FLAG_DELETE_ON_CLOSE
und eventuell Delphi-Referenz durchsuchenTHandleStream

und/oder Memory Mapped Files (MMF)

Und es wäre auch möglich im Delphi-Programm physischen Speicher im RAM zu reservieren.
Ich war vor Kurzem über die aktivierte Speicherkomprimierung im Windows 10 gestolpert ... fast 60 GB (mit 0 gefülltem) Speicher in nur 16 GB RAM bekommen , ohne Auslagerungsdatei in einem 32 Bit-Delphi-Progrämmchen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 7. Aug 2020 um 10:46 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.690 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Systemtreiber debuggen, geht das?

  Alt 7. Aug 2020, 10:57
Und es wäre auch möglich im Delphi-Programm physischen Speicher im RAM zu reservieren.
Ich war vor Kurzem über die aktivierte Speicherkomprimierung im Windows 10 gestolpert ... fast 60 GB (mit 0 gefülltem) Speicher in nur 16 GB RAM bekommen , ohne Auslagerungsdatei in einem 32 Bit-Delphi-Progrämmchen.
Das finde ich gerade interessanter als meine eigentliche Topic und frage mal nach ob es davon eine frei zugängliche Demo/Quelltext existiert?
Da fallen mir mehrere Sachen ein wo ich's pers. super gebrauchen könnte. Die "üblichen" varianten wie bereits von Dir angeschnitten sagen mir was.
Meine Versuche mehr ausm RAM zu holen sind meist immer in einem MemoryStream geendet mit Komprimierung von den U.P.X. Entwicklern (LZMA).
Bei kleinst Aufgaben klappte das recht gut aber was Du da schreibst hebt das ganze auf ein weit höheres Level.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz