Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ° ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ: конспСкт Π»Π΅ΠΊΡ†ΠΈΠΉΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 16

Автор А. Π¦Π²Π΅Ρ‚ΠΊΠΎΠ²Π°

2) ΠΎΠ΄ΠΈΠ½ Ρ„Π»Π°Π³ управлСния.

ΠžΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ΡΡ df (Directory Flag). Он находится Π² 10-ΠΌ Π±ΠΈΡ‚Π΅ рСгистра eflags ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ†Π΅ΠΏΠΎΡ‡Π΅Ρ‡Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π»Π°Π³Π° df опрСдСляСт Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ поэлСмСнтной ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² этих опСрациях: ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° строки ΠΊ ΠΊΠΎΠ½Ρ†Ρƒ (df = 0) Π»ΠΈΠ±ΠΎ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΠΎΡ‚ ΠΊΠΎΠ½Ρ†Π° строки ΠΊ Π΅Π΅ Π½Π°Ρ‡Π°Π»Ρƒ (df = 1). Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π»Π°Π³ΠΎΠΌ df ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹: eld (ΡΠ½ΡΡ‚ΡŒ Ρ„Π»Π°Π³ df) ΠΈ std (ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Π»Π°Π³ df). ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ этих ΠΊΠΎΠΌΠ°Π½Π΄ позволяСт привСсти Ρ„Π»Π°Π³ df Π² соотвСтствиС с Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ автоматичСскоС ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ счСтчиков ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ со строками.

3) ΠΏΡΡ‚ΡŒ систСмных Ρ„Π»Π°Π³ΠΎΠ².

Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ Π²Π²ΠΎΠ΄ΠΎΠΌ-Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ, маскируСмыми прСрываниями, ΠΎΡ‚Π»Π°Π΄ΠΊΠΎΠΉ, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΠΆΠΈΠΌΠΎΠΌ 8086. ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌ Π½Π΅ рСкомСндуСтся ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±Π΅Π· нСобходимости эти Ρ„Π»Π°Π³ΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв это ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 2 пСрСчислСны систСмныС Ρ„Π»Π°Π³ΠΈ, ΠΈΡ… Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Π’Π°Π±Π»ΠΈΡ†Π° 1. Π€Π»Π°Π³ΠΈ состояния

Π’Π°Π±Π»ΠΈΡ†Π° 2. БистСмныС Ρ„Π»Π°Π³ΠΈ

2. eip/ip (Instraction Pointer register) β€“ рСгистр-ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄. РСгистр eip/ip ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΡΡ‚ΡŒ 32/16 Π±ΠΈΡ‚ ΠΈ содСрТит смСщСниС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ содСрТимого сСгмСнтного рСгистра cs Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ сСгмСнтС ΠΊΠΎΠΌΠ°Π½Π΄. Π­Ρ‚ΠΎΡ‚ рСгистр нСпосрСдствСнно нСдоступСн программисту, Π½ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΅Π³ΠΎ значСния производятся Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ управлСния, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ относятся ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ условных ΠΈ бСзусловных ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ², Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° ΠΈΠ· ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€. Π’ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ рСгистра eip/ip.

Π›Π•ΠšΠ¦Π˜Π― β„– 15. РСгистры

1. Π‘истСмныС рСгистры микропроцСссора

Π‘Π°ΠΌΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ этих рСгистров Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ спСцифичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² систСмС. ИспользованиС систСмных рСгистров ТСстко Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ. ИмСнно ΠΎΠ½ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ°. Π˜Ρ… Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ микропроцСссора, которая Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ оставлСна Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ систСмный программист ΠΌΠΎΠ³ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ самыС Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

БистСмныС рСгистры ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Ρ‚Ρ€ΠΈ Π³Ρ€ΡƒΠΏΠΏΡ‹:

1) Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ рСгистра управлСния;

2) Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ рСгистра систСмных адрСсов;

3) Π²ΠΎΡΠ΅ΠΌΡŒ рСгистров ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ.

2. Π Π΅Π³ΠΈΡΡ‚Ρ€Ρ‹ управлСния

Π’ Π³Ρ€ΡƒΠΏΠΏΡƒ рСгистров управлСния входят Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ рСгистра: cr0, cr1, cr2, cr3. Π­Ρ‚ΠΈ рСгистры ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для ΠΎΠ±Ρ‰Π΅Π³ΠΎ управлСния систСмой. РСгистры управлСния доступны Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌ с ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ 0.

Π₯отя микропроцСссор ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ рСгистра управлСния, доступными ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Ρ€ΠΈ ΠΈΠ· Π½ΠΈΡ… – ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ cr1, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ (ΠΎΠ½ Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½ для Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ использования).

РСгистр cr0 содСрТит систСмныС Ρ„Π»Π°Π³ΠΈ, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ Ρ€Π΅ΠΆΠΈΠΌΠ°ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ микропроцСссора ΠΈ ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠ΅ Π΅Π³ΠΎ состояниС глобально, нСзависимо ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ…ΡΡ Π·Π°Π΄Π°Ρ‡.

НазначСниС систСмных Ρ„Π»Π°Π³ΠΎΠ²:

1) Ρ€Π΅ (Protect Enable), Π±ΠΈΡ‚ 0 – Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹. БостояниС этого Ρ„Π»Π°Π³Π° ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΈΠ· Π΄Π²ΡƒΡ… Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² – Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ (Ρ€Π΅ = 0) ΠΈΠ»ΠΈ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΌ (Ρ€Π΅ = 1) β€“ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ микропроцСссор Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ;

2) mp (Math Present), Π±ΠΈΡ‚ 1 – Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ сопроцСссора. ВсСгда 1;

3) ts (Task Switched), Π±ΠΈΡ‚ 3 – ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡. ΠŸΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€ автоматичСски устанавливаСт этот Π±ΠΈΡ‚ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ;

4) am (Alignment Mask), Π±ΠΈΡ‚ 18 – маска выравнивания. Π­Ρ‚ΠΎΡ‚ Π±ΠΈΡ‚ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ (am = 1) ΠΈΠ»ΠΈ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ (am = 0) ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ выравнивания;

5) cd (Cache Disable), Π±ΠΈΡ‚ 30 – Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΈΠ΅ кСш-памяти.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этого Π±ΠΈΡ‚Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ΡŒ (cd =1) ΠΈΠ»ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ (cd = 0) использованиС Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ кСш-памяти (кСш-памяти ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ уровня);

6) pg (PaGing), Π±ΠΈΡ‚ 31 – Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ (pg =1) ΠΈΠ»ΠΈ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΈΠ΅ (pg = 0) страничного прСобразования.

Π€Π»Π°Π³ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ страничной ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ памяти.

РСгистр cr2 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ страничной ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти для рСгистрации ситуации, ΠΊΠΎΠ³Π΄Π° тСкущая ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ»Π°ΡΡŒ ΠΏΠΎ адрСсу, содСрТащСмуся Π² страницС памяти, ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² памяти.

Π’ Ρ‚Π°ΠΊΠΎΠΉ ситуации Π² микропроцСссорС Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ситуация с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ 14, ΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ 32-Π±ΠΈΡ‚Π½Ρ‹ΠΉ адрСс ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Π²Ρ‹Π·Π²Π°Π²ΡˆΠ΅ΠΉ это ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, записываСтся Π² рСгистр cr2. ИмСя эту ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ 14 опрСдСляСт Π½ΡƒΠΆΠ½ΡƒΡŽ страницу, осущСствляСт Π΅Π΅ ΠΏΠΎΠ΄ΠΊΠ°Ρ‡ΠΊΡƒ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈ возобновляСт Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

РСгистр cr3 Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ страничной ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ памяти. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ рСгистр ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° страниц ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ уровня. Он содСрТит 20-Π±ΠΈΡ‚Π½Ρ‹ΠΉ физичСский Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ адрСс ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° страниц Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ. Π­Ρ‚ΠΎΡ‚ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ содСрТит 1024 32-Π±ΠΈΡ‚Π½Ρ‹Ρ… дСскриптора, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… содСрТит адрСс Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ страниц Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня. Π’ свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, каТдая ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ† страниц Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня содСрТит 1024 32-Π±ΠΈΡ‚Π½Ρ‹Ρ… дСскриптора, Π°Π΄Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΡ… страничныС ΠΊΠ°Π΄Ρ€Ρ‹ Π² памяти. Π Π°Π·ΠΌΠ΅Ρ€ страничного ΠΊΠ°Π΄Ρ€Π° – 4 ΠšΠ±Π°ΠΉΡ‚Π°.

3. Π Π΅Π³ΠΈΡΡ‚Ρ€Ρ‹ систСмных адрСсов

Π­Ρ‚ΠΈ рСгистры Π΅Ρ‰Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ рСгистрами управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ.

Они ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠ·Π°Π΄Π°Ρ‡Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ микропроцСссора. ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ микропроцСссора адрСсноС пространство дСлится Π½Π°:

1) Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΠΎΠ΅ – ΠΎΠ±Ρ‰Π΅Π΅ для всСх Π·Π°Π΄Π°Ρ‡;

2) Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ – ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ.

Π­Ρ‚ΠΈΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ присутствиС Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ микропроцСссора ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… систСмных рСгистров:

1) Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… дСскрипторов gdtr (Global Descriptor Table Register), ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ 48 Π±ΠΈΡ‚ ΠΈ содСрТащСго 32-Π±ΠΈΡ‚ΠΎΠ²Ρ‹ΠΉ (Π±ΠΈΡ‚Ρ‹ 16–47) Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ адрСс глобальной дСскрипторной Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ GDT ΠΈ 16-Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ (Π±ΠΈΡ‚Ρ‹ 0β€”15) Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄Π΅Π»Π°, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ собой Ρ€Π°Π·ΠΌΠ΅Ρ€ Π² Π±Π°ΠΉΡ‚Π°Ρ… Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ GDT;

2) Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… дСскрипторов ldtr (Local Descriptor Table Register), ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ 16 Π±ΠΈΡ‚ ΠΈ содСрТащСго Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ сСлСктор дСскриптора локальной дСскрипторной Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ LDT Π­Ρ‚ΠΎΡ‚ сСлСктор являСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ GDT, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈ описываСт сСгмСнт, содСрТащий Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ Π΄Π΅ΡΠΊΡ€ΠΈΠΏΡ‚ΠΎΡ€Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ LDT;

3) Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ дСскрипторов ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ idtr (Interrupt Descriptor Table Register), ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ 48 Π±ΠΈΡ‚ ΠΈ содСрТащСго 32-Π±ΠΈΡ‚ΠΎΠ²Ρ‹ΠΉ (Π±ΠΈΡ‚Ρ‹ 16–47) Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ адрСс дСскрипторной Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ IDT ΠΈ 16-Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ (Π±ΠΈΡ‚Ρ‹ 0β€”15) Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄Π΅Π»Π°, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ собой Ρ€Π°Π·ΠΌΠ΅Ρ€ Π² Π±Π°ΠΉΡ‚Π°Ρ… Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ IDT;

4) 16-Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ³ΠΎ рСгистра Π·Π°Π΄Π°Ρ‡ΠΈ tr (Task Register), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ рСгистру ldtr, содСрТит сСлСктор, Ρ‚. Π΅. ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° дСскриптор Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ GDT Π­Ρ‚ΠΎΡ‚ дСскриптор описываСт Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ сСгмСнт состояния Π·Π°Π΄Π°Ρ‡ΠΈ (TSS – Task Segment Status). Π­Ρ‚ΠΎΡ‚ сСгмСнт создаСтся для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ Π² систСмС, ΠΈΠΌΠ΅Π΅Ρ‚ ТСстко Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ структуру ΠΈ содСрТит контСкст (Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС) Π·Π°Π΄Π°Ρ‡ΠΈ. ОсновноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ сСгмСнтов TSS – ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС Π·Π°Π΄Π°Ρ‡ΠΈ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ.

4. Π Π΅Π³ΠΈΡΡ‚Ρ€Ρ‹ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ

Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ интСрСсная Π³Ρ€ΡƒΠΏΠΏΠ° рСгистров, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. БрСдства Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ появились Π² микропроцСссорС i486. Аппаратно микропроцСссор содСрТит восСмь рСгистров ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, Π½ΠΎ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ ΠΈΠ· Π½ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡˆΠ΅ΡΡ‚ΡŒ.

РСгистры dr0, dr1, dr2, dr3 ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΡΡ‚ΡŒ 32 Π±ΠΈΡ‚Π° ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для задания Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… адрСсов Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ прСрывания. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΈ этом ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ: любой Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ адрСс сравниваСтся с адрСсами Π² рСгистрах dr0… dr3, ΠΈ ΠΏΡ€ΠΈ совпадСнии гСнСрируСтся ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ 1.

РСгистр dr6 называСтся рСгистром состояния ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Π‘ΠΈΡ‚Ρ‹ этого рСгистра ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² соотвСтствии с ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹Π·Π²Π°Π»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ послСднСго ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ 1.

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΠΌ эти Π±ΠΈΡ‚Ρ‹ ΠΈ ΠΈΡ… Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅:

1) b0 – Ссли этот Π±ΠΈΡ‚ установлСн Π² 1, Ρ‚ΠΎ послСднСС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ (ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅) Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΎ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ достиТСния ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π² рСгистрС dr0;

2) b1 – Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ b0, Π½ΠΎ для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ Π² рСгистрС dr1;

3) b2 – Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ b0, Π½ΠΎ для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ Π² рСгистрС dr2;

4) bΠ— – Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ b0, Π½ΠΎ для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ Π² рСгистрС dr3;

5) bd (Π±ΠΈΡ‚ 13) β€“ слуТит для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ рСгистров ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ;

6) bs (Π±ΠΈΡ‚ 14) β€“ устанавливаСтся Π² 1, Ссли ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ 1 Π±Ρ‹Π»ΠΎ Π²Ρ‹Π·Π²Π°Π½ΠΎ состояниСм Ρ„Π»Π°Π³Π° tf = 1 Π² рСгистрС eflags;

7) bt (Π±ΠΈΡ‚ 15) устанавливаСтся Π² 1, Ссли ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ 1 Π±Ρ‹Π»ΠΎ Π²Ρ‹Π·Π²Π°Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π½Π° Π·Π°Π΄Π°Ρ‡Ρƒ с установлСнным Π±ΠΈΡ‚ΠΎΠΌ Π»ΠΎΠ²ΡƒΡˆΠΊΠΈ Π² TSS t = 1.

ВсС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ Π² этом рСгистрС Π·Π°ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ нулями. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ 1 ΠΏΠΎ содСрТимому dr6 Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ дСйствия.

РСгистр dr7 называСтся рСгистром управлСния ΠΎΡ‚Π»Π°Π΄ΠΊΠΎΠΉ. Π’ Π½Π΅ΠΌ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… рСгистров ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ поля, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ условия, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… слСдуСт ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅:

1) ΠΌΠ΅ΡΡ‚ΠΎ рСгистрации ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ – Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π·Π°Π΄Π°Ρ‡Π΅ ΠΈΠ»ΠΈ Π² любой Π·Π°Π΄Π°Ρ‡Π΅. Π­Ρ‚ΠΈ Π±ΠΈΡ‚Ρ‹ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ младшиС 8 Π±ΠΈΡ‚ рСгистра dr7 (ΠΏΠΎ 2 Π±ΠΈΡ‚Π° Π½Π° ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ (фактичСски Ρ‚ΠΎΡ‡ΠΊΡƒ прСрывания), Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡƒΡŽ рСгистрами dr0, dr1, dr2, dr3 соотвСтствСнно).