Die meisten modernen Betriebssysteme werden im geschützten Modus ausgeführt. Jetzt ist es möglich, dass die Benutzerprogramme den "Ring 0" eingeben, indem sie die entsprechenden Bits in einigen Steuerregistern direkt setzen. Oder muss es durch irgendeinen Systemaufruf gehen.Eingabe von 0 aus dem Benutzermodus
Ich glaube, auf die Hardware zuzugreifen, die wir durch das Betriebssystem gehen müssen. Aber wenn wir die Adresse des Hardwaregeräts kennen, können wir einfach einen Assemblersprachencode mit Bezug auf den Standort des Geräts schreiben und darauf zugreifen. Was passiert, wenn wir die Adresse eines Hardwaregeräts im Assemblersprachcode angeben?
Danke.
Danke für die Antwort. Ich habe die Seite gelesen, auf der der Autor schreibt: "Wir lesen Global Descriptor Table und schreiben die Adresse unserer Funktion auf die erste freie Stelle + gewünschten Ringlevel zurück." Ich habe es nicht bekommen, wenn er sagen will, wir schreiben an die GDT oder irgendwo anders. Können wir aus dem Benutzermodus (Ring 3) in den GDT schreiben. – yaami
Auch konnte ich nicht finden, wo der Code in Ring 0 eintritt. Ich könnte den Übergang von Ring-0 zu Ring-3 finden. aber nicht umgekehrt. Beginnt der Code in Ring 0 direkt oder gibt er irgendwann Ring 0 ein, wenn ja, kannst du mir zeigen wo im Code wir Ring 0 eingeben. - Danke – yaami
Sorry found it. Soweit ich das beurteilen konnte, ruft code eine Funktion an, die in Ring 0 (mit callGates) laufen kann. Ist es richtig ... korrigiere mich, wenn ich falsch liege. Danke – yaami