05. October 2024, 06:19
Willkommen
Gast
. Bitte
einloggen
oder
registrieren
.
Hast du deine
Aktivierungs E-Mail
übersehen?
Übersicht
Wiki
Hilfe
Suche
Einloggen
Registrieren
Lowlevel
»
Lowlevel
»
Lowlevel-Coding
»
Thema:
Paging und User Mode
« vorheriges
nächstes »
Drucken
Seiten: [
1
]
Autor
Thema: Paging und User Mode (Gelesen 4090 mal)
zement
Beiträge: 2
Gespeichert
«
am:
28. November 2010, 15:26 »
Paging und User Mode
Hallo,
ich habe eine Frage zu Paging:
Wird beim Wechsel in den Usermode das cr3 Register verändert?
Habe dazu nichts im Internet gefunden.
Ich habe nämlich folgendes Problem:
Paging funktioniert, wenn ich einen Task im Kernel-Mode laufen lasse, aber wenn ich den Task im Usermode laufen lasse, bekomme ich immer einen Page Fault bei gleich initialisierten Pagedirectory und Pagetables.
Gruß,
zement
kevin
Administrator
Beiträge: 2 767
Gespeichert
«
Antwort #1 am:
28. November 2010, 15:32 »
Re:Paging und User Mode
Nein, cr3 musst du "von Hand" ändern, wenn du ein anderes haben möchtest.
Ich schätze mal, dein Problem ist, dass du vergisst, das User/Supervisor-Bit im Page Directory und den Page Tables zu setzen (Bit 2, also 0x7).
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.
zement
Beiträge: 2
Gespeichert
«
Antwort #2 am:
28. November 2010, 17:56 »
Re:Paging und User Mode
Ja, das war der Fehler.
Ich habe mich zu stark auf das Tutorial "Paging Tutorial" (
http://www.lowlevel.eu/wiki/Paging_Tutorial
) verlassen.
Zitat
const Page_noUsermodeAccess = &b100
Dieses "no" muss wohl weg.
Aber jetzt läufts. Danke, taljeth.
zement
Drucken
Seiten: [
1
]
« vorheriges
nächstes »
Lowlevel
»
Lowlevel
»
Lowlevel-Coding
»
Thema:
Paging und User Mode
Einloggen
1 Stunde
1 Tag
1 Woche
1 Monat
Immer