Ich habe gerade angefangen, an VxWorks zu arbeiten. Ich arbeite derzeit an der folgenden: -Wie implementiert man eine Abstraktionsschicht über VxWorks, um Handles für die Ausnahmebehandlung und Speicherverwaltung bereitzustellen?
Ich muss ein Framework erstellen, die Ausnahme behandeln wird & Speicherverwaltung (z. B. Nullzeiger Verwendung). Alles in allem wird es wie eine Abstraktionsschicht über dem Betriebssystem sein. Dieses Framework wird in Form eines herunterladbaren Kernel-Moduls vorliegen. Unit-Tests (auch DKMs) würden von diesem Rahmen ausgehen.
Ich möchte die Ausnahme Handler manipulieren & behandeln sie selbst, aber ich weiß nicht wie.
Die ED & R-Komponente muss mit dem Kernel-Image konfiguriert werden, um mit bestimmten APIs zu arbeiten (wenn ich das richtig verstehe), aber wenn es ein DKM ist, der bereits im Kernel-Bereich ist, hat es keinen vollständigen Zugriff in den Speicher (RAM, persistenter Speicher) & kann also direkt zugreifen?
Können Sie mir einige Richtlinien geben, wie ich mein Ziel erreichen soll?
Derzeit, wenn eine Ausnahme auftritt, nach der Anzeige einiger Details, stoppt die Aufgabe & Ich bekomme eine Aufforderung, das Modul zu debuggen. Danach benutze ich den Befehl edrShow, um den Core Dump zu sehen.
Was ich tun möchte ist, die Debug-Eingabeaufforderung & loszuwerden, nachdem die Aufgabe beendet wird, zeigen Sie den Core-Dump dem Benutzer, ohne den Befehl explizit ausstellen zu müssen.
Ich habe in edrStub.c (edrKernelFatalPolicyHandler-Methode) untersucht, aber ich konnte nicht herausfinden, wie man es manipuliert, um das gewünschte Ergebnis zu erhalten.