- •Системне програмування
- •1. Головний завантажувальний запис диску Master Boot Record.
- •2. Таблиця розділів та логічні диски
- •3. Таблиця розміщення файлів (fat). Загальна схема використання fat
- •4. Файлова система iso9660.
- •5. Файлова система udf
- •6. Таблиця відкритих файлів (sft). Стандартні файлові маніпулятори та їх розташування в sft.
- •7. Таблиця файлів завдань jft та її зв’язок з таблицею відкритих файлів sft.
- •10. Використання api функцій для роботи з файлами
- •9. Файлова система ntfs
- •11. Методи налагоджування драйверів та механізм підготовки їх до виконання
- •12. Команда ініціалізації драйверу. Її зміст, призначення та місце розташування. Визначення адреси точки розриву.
- •13. Об’єкти і їх дескриптори в Windows
- •14. Процедура переривання драйвера, її функція. Таблиця переходів
- •16. Загальний зв’язний список драйверів. Правила для встановлення нового драйверу.
- •19. Процедура стратегії драйвера та її основна задача.
- •20. Заголовок запиту драйверу, його складові частини та їх призначення
- •22.Обслуговування пам’яті в dos
- •23. Буфер попередньої трансляції в сторінковій організації пам’яті
- •Привілеї сегмента задаються полем dpl байта управління доступом.
- •26.Глобальні, локальні таблиці дескрипторів та idt.
- •27. Перетворення логічної адреси на лінійну в реальному та захищеному режимах
- •29.Таблиця дескрипторів переривань (idt).
16. Загальний зв’язний список драйверів. Правила для встановлення нового драйверу.
Драйвер - набір службових програм, що дозволяють операційній системі (ОС) працювати з тим чи іншим пристроєм комп'ютера. Його завдання - обробляти запити, що надходять від прикладних і системних програм, переводити їх на мову, зрозумілу фізичному пристрою, керувати процесами його ініціалізації, настроювання параметрів, обміну даними, переключенням з одного стану в інший і т.п. Драйвер дозволяє операційній системі взаємодіяти з конкретним пристроєм через загальний інтерфейс, що не враховує особливості даного пристрою. Іншими словами, драйвер транслює запити високого рівня в запити низькорівневого машинного мови, безпосередньо звертаючись до апаратних ресурсів комп'ютера.
Не для кожного пристрою потрібен драйвер. Якщо існує строгий стандарт, що описує набір команд, послідовність і тимчасові параметри операцій і інші особливості роботи з даним класом пристроїв, драйвер може і не знадобитися, тому що операційна система вже має у своєму складі всі необхідні для цього процедури. В принципі, це можна назвати і вбудованим драйвером. Приклади - клавіатура, таймер, комунікаційні порти, модем (зовнішній). Але якщо пристрій може бути замінений на інше, відмінний по своїх функціональних можливостях, то драйвер для нього потрібно буде встановлювати обов'язково.
Драйвер може міститися і в дистрибутиві операційної системи. Тоді питання його пошуку відпадає сам по собі. Однак пристрої, що з'явилися після офіційного виходу ОС, зажадають встановлення окремого драйвера розробленого виробником. Крім того, набір драйверів у комплекті з ОС невеликий і охоплює тільки невелику частину найбільш розповсюджених чи цілком стандартних пристроїв
В операційних системах microsoft windows драйвер складається з декількох файлів, що зберігаються звичайно в каталогах system, system32 і їх підкаталогах. Ядро драйвера зберігається у файлах з розширеннями. Vxd,. Drv,. Sys і деяких інших, а додаткові процедури зібрані в динамічні бібліотеки. Dll. Крім того, до складу драйвера можуть входити файли довідки, утиліти, модулі деінсталяції і т.д
Послідовність операцій по установці і видаленню драйвера зберігається в спеціальному інформаційному файлі. Inf. З його допомогою windows визначає тип, виробника, модель пристрою, клас драйвера, необхідні ресурси і файли. У цьому файлі також описуються операції розпакування, запуску, копіювання, видалення, перейменування файлів, додавання і видалення ключів у реєстрі і т.д. Все. Inf-файли зберігаються в каталозі inf, причому встановлювані драйвери не-microsoft'овского походження (поставляються не в комплекті з ОС) відкладаються в окремий підкаталог inf / other
Як встановити
Установка драйвера полягає в наступному: windows виявляє. Inf-файл, відшукує в ньому рядки ідентифікації plug & play-пристроїв, і якщо вони збігаються з інформацією, виданої самим пристроєм, система виконує запропоновані дії по копіюванню файлів, додаванню записів до реєстру і т.д. Ви повинні вказати місце розташування файлу у відповідь на запит майстра оновлення устаткування. Майстер запускається або автоматично, після появи повідомлення про знайдений пристрій, або вручну. В останньому випадку зайдіть в "Властивості системи" (натиснути я + pause), вибирайте закладку "Керування пристроями», потім властивості потрібного пристрою, закладку "Драйвер", "Оновити драйвер».
Якщо в комплекті з драйвером є свій інсталятор, то краще скористатися ним. Для цього потрібно після появи повідомлення про знайдений пристрій натиснути «esc», завантажити windows без драйвера і запустити інсталятор. Він скопіює усі файли драйвера в папку windowsinfother, де драйвер і буде знайдений після перезавантаження. Крім того, будуть встановлені додаткові програми, що йдуть в комплекті. Важливо також і те, що в більшості випадків інсталятор може коректно прибрати драйвер, не залишивши слідів свого перебування ("Панель управління" / "Установка і видалення програм").17.! Механізм виклику драйверу
????Системні повідомлення драйверу
Система взаємодіє з драйвером шляхом передачі йому системних повідомлень про завантаження / розвантаження драйвера, а також при настанні певних системних подій, які можуть зажадати втручання драйвера (створення / видалення віртуальної машини, додатки, завдання (thread), зміна поточної віртуальної машини / завдання, перезавантаження системи, поява нового пристрою і т.п.).
Для обробки системних повідомлень кожен драйвер повинен містити диспетчер повідомлень – Процедуру, яка отримує управління при передачі повідомлення драйверу. Процедурі передається код повідомлення і його параметри, після завершення обробки процедура повертає результат, який визначає наступні дії системи.
18. Сторінкова організація пам’яті До основних технологій реалізації віртуальної пам'яті крім сегментації належить сторінкова організація пам'яті (paging). Її головна ідея — розподіл пам'яті блоками фіксованої довжини. Такі блоки називають сторінками. Ця технологія є найпоширенішим підходом до реалізації віртуальної пам'яті в сучасних операційних системах.
Базові принципи сторінкової організації пам'яті
У разі сторінкової організації пам'яті логічну адресу називають також лінійною, або віртуальною, адресою. Такі адреси належать одній множині (наприклад, лінійною адресою може бути невід'ємне ціле число довжиною 32 біти).
Фізичну пам'ять розбивають на блоки фіксованої довжини — фрейми, або сторінкові блоки (frames). Логічну пам'ять, у свою чергу, розбивають на блоки такої самої довжини — сторінки (pages). Коли процес починає виконуватися, його сторінки завантажуються в доступні фрейми фізичної пам'яті з диска або іншого носія.
Сторінкова організація пам'яті повинна мати апаратну підтримку. Кожна адреса, яку генерує процесор, ділиться на дві частини: номер сторінки і зсув сторінки. Номер сторінки використовують як індекс у таблиці сторінок.
Таблиця сторінок — це структура даних, що містить набір елементів (page-table entries, PTE), кожен із яких містить інформацію про номер сторінки, номер відповідного їй фрейму фізичної пам'яті (або безпосередньо його базову адресу) та права доступу. Номер сторінки використовують для пошуку елемента в таблиці. Після його знаходження до базової адреси відповідного фрейму додають зсув сторінки, чим і визначають фізичну адресу (рис. 7.7).
Розмір сторінки є ступенем числа 2, у сучасних ОС використовують сторінки розміром від 2 до 8 Кбайт. У спеціальних режимах адресації можна працювати зі сторінками більшого розміру.
Для кожного процесу створюють його власну таблицю сторінок. Коли процес починає своє виконання, ОС розраховує його розмір у сторінках і кількість фреймів у фізичній пам'яті. Кожну сторінку завантажують у відповідний фрейм, після чого його номер записують у таблицю сторінок процесу.
Рис. 8.1. Перетворення адреси у разі сторінкової організації пам'яті Відображення логічної пам'яті для процесу відрізняється від реального стану фізичної пам'яті. На логічному рівні для процесу вся пам'ять зображується неперервним блоком і належить тільки цьому процесові, а фізично вона розосереджена по адресному простору мікросхеми пам'яті, чергуючись із пам'яттю інших процесів (рис. 8.2). Процес не може звернутися до пам'яті, адреса якої не вказана в його таблиці сторінок (так реалізований захист пам'яті).
ОС
повинна мати інформацію про поточний
стан фізичної пам'яті (про зайнятість
і незайнятість фреймів, їхню кількість
тощо). Цю інформацію звичайно зберігають
у таблиці
фреймів. Кожний
її елемент відповідає фрейму і містить
всі відомості про нього.
