Das zweite Problem mit den Page Faults konnte ich endlich lösen 
Doch zum ersten Problem: Es kann ja keine Lösung sein, den kompletten Kernel für User-Tasks writeable zu mappen (in diesem Fall wäre Paging komplett sinnlos). Wenn ich nun nur bestimmte Stellen für User-Tasks sichtbar machen möchte, ergibt sich das Problem, wie ich den Adressraum der Funktion des jeweiligen Tasks bekomme. Ein Funktionszeiger auf die Funktion sagt mir, wo diese anfängt, aber wie bekomme ich deren Länge?
Ich habe noch eine Frage: Ein return innerhalb eines Tasks lässt den Instruction Pointer doch irgendwo ins Nirvana springen. Wie kann man dieses Problem handhaben?

Doch zum ersten Problem: Es kann ja keine Lösung sein, den kompletten Kernel für User-Tasks writeable zu mappen (in diesem Fall wäre Paging komplett sinnlos). Wenn ich nun nur bestimmte Stellen für User-Tasks sichtbar machen möchte, ergibt sich das Problem, wie ich den Adressraum der Funktion des jeweiligen Tasks bekomme. Ein Funktionszeiger auf die Funktion sagt mir, wo diese anfängt, aber wie bekomme ich deren Länge?
Ich habe noch eine Frage: Ein return innerhalb eines Tasks lässt den Instruction Pointer doch irgendwo ins Nirvana springen. Wie kann man dieses Problem handhaben?

Übersicht
Wiki
Hilfe
Suche
Einloggen
Registrieren
Drucken


Gespeichert