
- •1.2. Класифікація периферійних пристроїв і їх архітектура
- •1.5.2.1. Головна таблиця файлів
- •Журналирование
- •Транслятор у мові асемблер
- •Види трансляторів з мови Асемблера
- •Запуск на виконання транслятора tasm
- •В результаті трансляції одного вхідного файла може бути створено до трьох вихідних файлів:
- •Xref – ім’я файла перехресних посилань.
- •Структура об’єктної програми
- •Здійснення процесу трансляції.
Білет №7
1. |
Що означає поняття архітектура периферійних пристроїв (ПП)? Які види архітектури ПП ви знаєте? |
1.2. Класифікація периферійних пристроїв і їх архітектура
Під програмної архітектурою (або просто - архітектурою) пристрою ми будемо розуміти сукупність тих структурних особливостей, які впливають на роботу програм з пристроєм. Наприклад, форма роз'єму для підключення пристрою не входить в його архітектуру, але кількість і призначення ліній в цьому роз'ємі може в неї входити (якщо ці лінії можуть програмно управлятися).
Як правило, разом з пристроєм поставляється його контролер (адаптер), що містить електронні схеми управління пристроєм. Конструктивно контролер може являти собою плату, що вставляється в роз'єм шини комп'ютера, або може бути розташований в корпусі пристрою. У будь-якому випадку програми працюють з пристроєм через посередництво його контролера, а тому з точки зору архітектури нема різниці між поняттями «пристрій» і «контролер пристрої».
Класифікація периферійних пристроїв може бути виконана за різними ознаками.
• Пристрої послідовного доступу (sequential access) і пристрої довільного доступу (random access). Для послідовних пристроїв характерна наявність певного природного порядку даних, при цьому обробка даних в іншому порядку або неможлива, або вкрай утруднена. Класичним прикладом є магнітні стрічки, для яких читання і запис даних ведуться від початку стрічки до кінця, а спроба доступу в іншому порядку вимагатиме постійної перемотування стрічки, різко знижує швидкість роботи. До пристроїв послідовного доступу можна віднести також клавіатуру, мишу, принтер, модем.
Для пристроїв довільного доступу можливе звернення до різних порціях даних у будь-якому порядку, причому ефективність роботи не залежить (або слабо залежить) від порядку звернення. Для таких пристроїв характерна наявність адресації даних і операції пошуку потрібної адреси. Найбільш відомий приклад - магнітні диски та інші дискові пристрої. Крім того, до пристроїв довільного доступу можна віднести монітор ПК (там є адресація точок-пікселів, хоча операція пошуку не потрібна).
• Символьні (байтові) і блокові пристрої. Для символьних пристроїв найменшою порцією вводяться і виведених даних є один байт. Для деяких символьних пристроїв можна за одну операцію виконати введення або виведення будь-якого (в розумних межах) необхідної кількості байт.
Для блокових пристроїв найменшою порцією введення / виведення, виконуваного за одне звернення до пристрою, є один блок, рівний, як правило, 2k байт. Типовим розміром блоку може бути 512 байт, 1K байт, 4K байт і т.п., в залежності від конкретного пристрою. Найбільш відомі приклади блокових пристроїв - магнітні диски та магнітні стрічки. Для диска поняття блоку зазвичай збігається з поняттям сектора. Зокрема, для IBM-сумісних ПК сектор (блок) диска дорівнює 512 байт.
Блокова архітектура обумовлена особливостями використовуваного середовища і, крім того, блочний введення / висновок більш ефективний для високошвидкісних пристроїв, оскільки при цьому зменшується відносна частка часу, що витрачається на підготовчі та заключні операції при кожному зверненні до пристрою.
• Фізичні, логічні та віртуальні пристрої. Під фізичним пристроєм зазвичай розуміється деякий реально існуючий прилад, «залізяка». Насправді, з точки зору програмної архітектури для наявності фізичного пристрою досить знати набір адрес, команд, переривань і інших сигналів, що дозволяють виконувати операції з даними. Куди йдуть або звідки приходять ці сигнали - це питання, що не стосується програміста.
Логічний пристрій - це поняття, що характеризує спеціальне призначення пристрою в даній ОС. Наприклад, «завантажувальний диск» (тобто той, з якого була виконана завантаження ОС). Найбільш важливими логічними пристроями в багатьох ОС є пристрій стандартного введення і пристрій стандартного виводу. Їх можна спрощено визначити як пристрої, що використовуються для введення і, відповідно, виведення «за замовчуванням», тобто коли в програмі явно не вказано інше пристрій або файл для введення / виведення. Як правило, для сучасних комп'ютерів пристрою стандартного введення відповідає фізичний пристрій - клавіатура, а пристрою стандартного виводу - монітор. Важливо, однак, розуміти, що це відповідність може бути змінено: стандартний висновок може бути перепризначений, наприклад, на принтер або у файл, стандартний ввід - на віддалений термінал, на файл і т.п.
Поняття «віртуальний» у програмуванні, взагалі кажучи, означає приблизно наступне: «щось, насправді не існуюче, але провідне себе так, як якщо б воно існувало». З цієї точки зору, віртуальне пристрій - це програмно реалізований об'єкт, який веде себе подібно деякого фізичному пристрою, хоча насправді використовує ресурси зовсім інших пристроїв (або навіть ніяких пристроїв). Приклади віртуальних пристроїв дуже різноманітні:
віртуальні диски, розташовані насправді в оперативній пам'яті (такі пристрої були популярні в кінці 80-х років);
віртуальна пам'ять, розташована насправді на диску;
віртуальні CD і DVD - програми, що імітують поведінку відповідних пристроїв;
віртуальний екран, що надається DOS-програмі, що працює в режимі вікна Windows (програма працює так, як якщо б їй був наданий весь екран, але насправді система направляє висновок програми у відведений їй вікно);
найкумедніший (але дуже корисний) приклад - пусте пристрій, якому не відповідає ніяка апаратура. Чому його взагалі можна назвати пристроєм? Тому що відповідна системна програма (драйвер порожнього пристрою) коректно виконує всі дії, які зобов'язаний виконувати драйвер пристрою. Такий пристрій безвідмовно приймає вихідний потік символів (і тут же викидає прийняті дані), а також може використовуватися для введення, але при цьому тут же повідомляє - мовляв, досягнутий кінець файлу. Порожнє пристрій корисно в тих випадках, коли деяка програма вимагає неодмінно вказати файл або пристрій для виведення об'ємних і не дуже потрібних даних. Крім того, копіювання файлу на порожнє пристрій - це простий спосіб переконатися, що файл читається без помилок.
2. |
Структура тому NTFS. Транзакція і журналювання в NTFS. |
Загальну структуру зберігання даних на диску в системі NTFS часто характеризують двома короткими фразами:
На диску немає нічого, крім файлів.
У файлі немає нічого, крім атрибутів.
Поговоримо докладніше про цих загадкових твердженнях.