Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kursova_Klimyuk(1).doc
Скачиваний:
2
Добавлен:
13.09.2019
Размер:
314.37 Кб
Скачать

ЗМІСТ

ВСТУП 5

РОЗДІЛ І ТЕОРЕТИЧНА ЧАСТИНА 7

1.1 Керуючі регістри процесора 7

1.2 Перемикання між режимами 12

1.3 Формування фізичної адреси 13

1.4 Захист по привілеях 20

1.5 Мультизадачність 25

1.6 Особливості режиму системного управління 28

РОЗДІЛ ІІ ПРАКТИЧНА ЧАСТИНА 31

2.1 Алгоритм роботи програми 31

2.2 Програма для обчислення значення виразу 32

ВИСНОВКИ 43

СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ 44

ВСТУП

Центральний процесор (CPU, Central Processing Unit) - це основний електронний модуль на материнській платі, який виконує обчислювальну роботу, управляє обміном даних. Центральний процесор, є апаратним центром інформаційно-обчислювальної системи, відповідає за продуктивність ПК.

Вперше про різні режими роботи процесорів Intel x86 стали говорити з появою процесора 80286. Це був перший представник даного сімейства процесорів, в якому були реалізовані багатозадачність і захищена архітектура. Щоб забезпечити сумісність з попередніми представниками цього сімейства (8086,8088,80186) в процесорі 80286 було реалізовано два режими функціонування: режим емуляції 8086 (режим реальної адреси) і захищений режим, в якому використовуються всі можливості процесора. У наступних поколіннях процесорів цього сімейства захищений режим стає основним режимом роботи. Для процесорів, починаючи з 80386, іноді говорять ще про одне режимі роботи - віртуальний режим (режим віртуального 8086).

У нових поколіннях процесорів Intel з'явився ще один режим роботи - режим системного управління (System Management Mode). Вперше він був реалізований в процесорі 386SL і 486SL. Починаючи з розширених моделей 486х процесорів, цей режим став обов'язковим елементом архітектури x86-сумісних процесорів. З його допомогою прозоро навіть для операційної системи на рівні BIOS реалізуються функції енергозбереження.     В даному рефераті розглядаються особливості функціонування процесора в різних режимах. Режими розглядаються для 32-розрядних процесорів сімейства Intel: 80386, i486, Pentium, а також процесорів з архітектурою P6 (Pentium Pro, Pentium II, Celeron, Xeon, Pentium III).

Все вище вказане пояснює актуальність дослідження теми даної курсової роботи.

Об’єкт дослідження – стани процесора.

Предмет дослідження – центральний процесор комп’ютера.

Мета дослідження – розглянути основні режими роботи процесора та команди управління цими режимами.

Для досягнення мети дослідження було визначено наступні завдання:

  • розглянути поняття стан процесора;

  • дослідити особливості роботи процесора у різних станах;

  • описати принципи переходу з одного режиму в інший

  • розв’язати рівняння засобами Assembler’а.

Курсова робота складається з вступу, двох розділів, висновків та списку використаної літератури.

Розділ і Теоретична частина

1.1 Керуючі регістри процесора Структура керуючих регістрів процесора

Рис. 1.1 Керуючі регістри процесора

Регістр CR0 - містить прапори, що керують режимом роботи процесора і відображають стан системи.

• біт 0 (Protect Enable, 286 +): дозвіл захисту. Коли PE = 1 процесор знаходиться в захищеному режимі. Якщо біт скинутий, то процесор знаходиться або в режимі реальної адреси, або в режимі системного управління (тип режиму визначається апаратно: у режимі системного управління активний сигнал SMIACT #).

• біт 1 (Math Present, 286 +): співпроцесор присутній.

• біт 2 (Emulation, 286 +): емуляція співпроцесора. Коли EM = 1, будь-яка команда для співпроцесора або команда MMX викликає особливий випадок.

• біт 3 (Task Switched, 286 +): завдання переключене. Кожного разу при перемиканні завдання процесор виставляє цей біт. Використовується для обліку контексту співпроцесора при перемиканні.

• біт 4 (Extension Type, 386,486): тип розширення (співпроцесора). Коли ET = 1, для співпроцесора використовується набір інструкцій Intel 387DX. У Pentium і P6 цей біт зарезервований і завжди містить 1.

• біт 5 (Numeric Error, 486 +): чисельна помилка (помилка співпроцесора). Коли NE = 1, процесору дозволяється користуватися внутрішнім ("рідним") механізмом сигналізації помилок з плаваючою крапкою. Коли NE = 0, процесор емулює сигналізацію помилок з плаваючою точкою як у зовнішніх співпроцесорів (287, 387).

• біт 16 (Write Protect, 486 +): захист від запису сторінок користувача з позначкою "read-only" при зверненнях з рівня супервізора.

• біт 18 (Alignment Mask, 486 +): маска виривнювання. Якщо CR0.AM = 1 і EFLAGS.AC = 1 і CR0.PE = 1 і CPL = 3, то проводиться контроль вирівнювання. Тобто при зверненнях до пам'яті подвійне слово обов'язково має починатися з адреси, кратної 4, а слово - з адреси, кратної 2, інакше генерується порушення контролю вирівнювання (виняток # 17).

• біт 29 (Not Write-through, 486 +): ненаскрізний запис - використовується для управління кешуванням.

• біт 30 (Cache Disable, 486 +): заборона кеш-пам'яті.

• біт 31 (Paging, 386 +): дозвіл сторінкового перетворення адрес.

Регістр CR1 - зарезервовано.

Регістр CR2 ​​- містить лінійну адресу, що викликала сторінкове порушення (виняток # 14).

Регістр CR3 - містить в бітах 12-31 старші 20 біт 32-бітного фізичної адреси каталогу таблиць.

Коли включено розширення фізичної адреси, регістр CR3 містить в бітах 5-31 старші 27 біт 36-бітної фізичної адреси таблиці покажчиків на каталоги таблиць сторінок. Спеціальне призначення мають біти 3 і 4, які керують кешуванням сторінки, на якій знаходиться каталог таблиць:

• біт 3 (Page Write-Through, 486 +): наскрізний запис сторінки.

• біт 4 (Page-Cache Disable, 486 +): заборона кешування сторінки.

Регістр CR4 - містить прапори, які контролюють нові можливості (розширення) архітектури Pentium і P6. Якими можливостями володіє процесор, можна дізнатися за результатами виконання команди CPUID.

• біт 0 (Virtual-8086 Mode Extensions). Дозволяє розширення обробки переривань і особливих випадків в стані VM86. VME дозволяє завданню в стані VM86 самостійно обробляти переривання і особливі випадки, не перемикаючись в нормальний режим. VME забезпечує апаратну підтримку віртуального прапора переривань (VIF).

• біт 1 (Protected Mode Virtual Interrupts). Дозволяє апаратну підтримку VIF.

• біт 2 (Time Stamp Disable). Коли TSD = 1, виконання інструкції RDTSC (читання внутрішнього лічильника часу) обмежується нульовим рівнем привілеїв, інакше інструкція дозволена на всіх рівнях.

• біт 3 (Debugging Extensions): розширення відладки. DE дозволяє використовувати регістри DR4 і DR5 для встановлення контрольних точок на портах вводу-виводу.

• біт 4 (Page Size Extension): розширення розміру сторінки.

• біт 5 (Physical Address Extension): розширення фізичної адреси.

• біт 6 (Machine Check Enable). Дозволяє особливий випадок машинного контролю (виключення #18), що виникає, коли блок внутрішнього контролю операцій всередині чіпа або на шині виявляє помилку.

• біт 7 (Page Global Enable). Дозволяє використання біта глобальності в елементах PDE / PTE. Це розширення дозволяє часто використовувані або колективні (shared) сторінки позначити як "глобальні". Глобальні сторінки не вивантажуються з TLB при перемиканні завдання.

• біт 8 (Performance-monitoring Counter Enable). Коли PCE = 1, виконання інструкції RDPMC (читання внутрішнього лічильника продуктивності) дозволено на всіх рівнях привілеїв, інакше інструкція буде виконуватися тільки на нульовому рівні привілеїв.

Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.

Оставленные комментарии видны всем.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]