Descriptori de segmente, osdev wiki, fandom alimentat de wikia

Următoarele câmpuri sunt definite în descriptor:

Codul de descriere a segmentului de cod Editați

Când descrieți un segment de cod, câmpul bit S = 1 și tipul de segment are forma

  • Bitul C (conform) determină dacă segmentul este conform (1 pentru conformal, 0 pentru nonconformal);
  • Bitul R (lizibil) determină dacă segmentul poate fi citit. Cu R = 1, segmentul este disponibil pentru citire și execuție, cu R = 0 - numai pentru execuție. Intrarea pe segmentul de cod este întotdeauna interzisă;
  • Bitul A (accesat) este setat la unul atunci când procesorul încarcă selectorul corespunzător în registrul segmentului. Rămâne setat până când este resetat în mod explicit de sistemul de operare.






Editarea descriptorilor segmentului de date

Când descrieți un segment de date sau o stivă, câmpul bit S = 1 și tipul de segment are forma







  • Direcția de expansiune determină direcția de creștere a segmentului - 0 pentru creșterea și 1 pentru creșterea în jos (ca stivă). Dacă E = 1, sensul câmpului Limit se modifică, - este permisă inversarea segmentului prin schimbări de la Limit + 1 la 0xFF..F (numărul de biți este determinat de biții D / B și L);
  • Bitul W (scriere) permite scrierea în acest segment. Dacă W = 0, este permisă numai citirea, dacă W = 1, sunt permise citirea și scrierea. Executarea datelor este interzisă în orice moment. Segmentul de stivă trebuie întotdeauna să poată fi scris;
  • Bitul A (accesat) are același scop ca și pentru descriptorii segmentului de cod - acesta arată dacă a existat acces la descriptor de la ultima resetare a acestui steag.

Editarea Descriptorului segmentului de activități

Pentru a îmbunătăți articolul este necesar: nici măcar nu știu ce să fac.

Utilizarea extensiei AdBlock a fost detectată.







Articole similare

Trimiteți-le prietenilor: