Schrödingers cat: In this case there are three determinate states the cat could be in: these being Alive, Dead, and Bloody Furious.
De nul-descriptor is de eerste entry van een GDT, en die is verplicht. De overige entries mag je gebruiken waarvoor je zelf wilt.ok ik weet nu hoe een GDT in elkaar zit, maar welke entries moet ik maken? In ieder geval een null descriptor?
Die keus ligt helemaal bij jou.Vraag 2: Wat moet je beschrijven met je GDT? Je hele geheugen of alleen waar dingen geladen worden?
Je kunt segment-descriptors in je GDT stoppen van hele specifieke stukjes die je gebruikt.
Je kunt ook een paar descriptors maken die je gehele4 GB (64 GB in sommige gevallen) virtuele adres-ruimte beschrijven. Dit komt veel voor als er paging wordt gebruikt. De Linux kernel gebruikt bv. maar enkele GDT-entries die het hele geheugen-gebied beschrijven, en het opdelen wordt dan over gelaten aan de paging-tabellen.
Hoeft niet, maar als je deze code ook daarwerkelijk wilt uitvoerenVraag 3: Moet je een code-deel van een file in een gedeelte van je memory zetten dat door de GDT als code beschreven is?
(zelfde met data)
Code en data zijn in de protected mode strict gescheiden wat segment-descriptors betreft.
Data moet ook een eigen segment hebben.
Het gemakkelijkste is gewoon een code-descriptor, een data-descriptor en een stack-descriptor maken (en nog evt. wat anderen voor zover nodig) die reikt van 0 tot 4 GB, en dan het opdelen van het geheugen en het regelen van privileges overlaten aan de paging-unit.
Aangezien je vragen over vrij elementaire dingen gaan, raad ik je wat literatuur aan. Weten hoe een GDT in elkaar zit, wil nog niet zeggen dat je je volledig kunt redden in de protected mode. Het is best ingewikkelde, maar wel interessante stof.
Op het web staan honderden tutorials.
Een goed Nederlands boek dat de materie beschrijft is het boek "Alles over PC Hardware" van Hans-Peter Messmer. Van diezelfde auteur is er ook het boek "Alles over de Pentium". Dat boek is iets goedkoper, want het is dunner, maar beide bevatten hetzelfde hoofdstuk over de i386 (de basis van de protected mode) en de 486 en Pentium-uitbreidingen er van.