рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Фізична та логічна організація пам’яті комп’ютера. Найпростіші схеми управління пам’яттю

Фізична та логічна організація пам’яті комп’ютера. Найпростіші схеми управління пам’яттю - раздел Философия, Тема 10 ...

Тема 10

Фізична та логічна організація пам’яті комп’ютера. Найпростіші схеми управління пам’яттю.

Фізична та логічна організація пам'яті

Введення

Головне завдання комп'ютерної системи – виконувати програми. Програми разом з даними, до яких вони мають доступ, в процесі виконання повинні (принаймні частково) знаходитися в оперативній пам'яті. Операційній системі доводиться вирішувати задачу розподілу пам'яті між призначеними для користувача процесами і компонентами ОС. Ця діяльність називається управлінням пам'яттю. Таким чином, пам'ять (storage, memory) є найважливішим ресурсом, що вимагає ретельного управління. У недавньому минулому пам'ять була найдорожчим ресурсом.

Частина ОС, яка відповідає за управління пам'яттю, називається менеджером пам'яті.

Фізична організація пам'яті комп'ютера

Основна пам'ять є впорядкованим масивом однобайтових осередків, кожна з яких має свою унікальну адресу (номер). Процесор витягує команду з основної… Вторинну пам'ять (це головним чином диски) також можна розглядати як… Цю схему можна доповнити ще декількома проміжними рівнями, як показано на мал. 8.1. Різновиди пам'яті можуть бути…

Локальність

Ключову роль тут грає властивість реальних програм, протягом обмеженого відрізання часу здатних працювати з невеликим набором адрес пам'яті. Це… Властивість локальності (сусідні у просторі та часі об'єкти характеризуються… Кеш процесора зазвичай є частиною апаратури, тому менеджер пам'яті ОС займається розподілом інформації головним чином…

Логічна пам'ять

Схема управління пам'яттю, що підтримує цей погляд користувача на те, як зберігаються програми і дані, називається сегментацією. Сегмент – область… Мабуть, спочатку сегменти пам'яті з'явилися у зв'язку з необхідністю…

Зв'язування адрес

Скріплення логічної адреси, породженої оператором програми, з фізичним повинно бути здійснено до початку виконання оператора або у момент його… Етап компіляції (Compile time). Коли на стадії компіляції відоме точне місце… Етап завантаження (Load time). Якщо інформація про розміщення програми на стадії компіляції відсутня, компілятор…

Функції системи управління пам'яттю

Щоб забезпечити ефективний контроль використання пам'яті, ОС повинна виконувати наступні функції:

· відображення адресного простору процесу на конкретні області фізичної пам'яті;

· розподіл пам'яті між конкуруючими процесами;

· контроль доступу до адресних просторів процесів;

· вивантаження процесів (цілком або частково) в зовнішню пам'ять, коли в оперативній пам'яті недостатньо місця;

· облік вільної і зайнятої пам'яті.

У наступних розділах лекції розглядається ряд конкретних схем управління пам'яттю. Кожна схема включає певну ідеологію управління, а також алгоритми і структури даних і залежить від архітектурних особливостей використовуваної системи. Спочатку будуть розглянуті прості схеми. Домінуюча на сьогодні схема віртуальної пам'яті буде описана в подальших лекціях.

 

 

Схема з фіксованими розділами

Прості схеми управління пам'яттю

Перші ОС застосовували дуже прості методи управління пам'яттю. Спочатку кожен процес користувача повинен був повністю поміститися в основній пам'яті, займати безперервну область пам'яті, а система приймала до обслуговування додаткові призначені для користувача процеси до тих пір, поки всі вони одночасно поміщалися в основній пам'яті. Потім з'явився "простий свопінг" (система як і раніше розміщує кожен процес в основній пам'яті цілком, але іноді на підставі деякого критерію цілком скидає образ деякого процесу з основної пам'яті в зовнішню і замінює його в основній пам'яті образом іншого процесу). Такого роду схеми мають не тільки історичну цінність. В даний час вони застосовуються в учбових і науково-дослідних модельних ОС, а також в ОС для вбудованих (embedded) комп'ютерів.

 

Схема з фіксованими розділами

Найпростішим способом управління оперативною пам'яттю є її попереднє (зазвичай на етапі генерації або у момент завантаження системи) розбиття на декілька розділів фіксованої величини. Процеси, що поступають, поміщаються в той або інший розділ. При цьому відбувається умовне розбиття фізичного адресного простору. Скріплення логічних і фізичних адрес процесу відбувається на етапі його завантаження в конкретний розділ, іноді – на етапі компіляції.

Кожен розділ може мати свою чергу процесів, а може існувати і глобальна черга для всіх розділів(див. мал. 8.4).

Ця схема була реалізована в IBM OS/360 (MFT), DEC RSX-11 і ряду інших систем.

 

Підсистема управління пам'яттю оцінює розмір процесу, що поступив, вибирає відповідний для нього розділ, здійснює завантаження процесу в цей розділ і налаштування адрес.

Рис. 9.4. Схема з фіксованими розділами: (a) – із загальною чергою процесів, (b) – з окремими чергами процесів

Очевидний недолік цієї схеми – число одночасно виконуваних процесів обмежене числом розділів.

Іншим істотним недоліком є те, що пропонована схема сильно страждає від внутрішньої фрагментації – втрати частини пам'яті, виділеної процесу, але не використовуваною їм. Фрагментація виникає тому, що процес не повністю займає виділений йому розділ або тому, що деякі розділи дуже малі для виконуваних призначених для користувача програм.

 

Один процес в пам'яті

Окремий випадок схеми з фіксованими розділами – робота менеджера пам'яті однозадачної ОС. У пам'яті розміщується один призначений для користувача процес. Залишається визначити, де розташовується призначена для користувача програма по відношенню до ОС – у верхній частині пам'яті, в нижней або в середній. Причому частина ОС може бути в ROM (наприклад, BIOS, драйвери пристроїв). Головний чинник, що впливає на це рішення, – розташування вектора переривань, який зазвичай локалізований в нижній частині пам'яті, тому ОС також розміщують в нижней. Прикладом такої організації може служити ОС MS-DOS.

Захист адресного простору ОС від призначеної для користувача програми може бути організована за допомогою одного граничного регістра, що містить адресу межі ОС.

 

 

Оверлейна структура

Потреба в такому способі завантаження з'являється, якщо логічний адресний простір системи малий, наприклад 1 Мбайт (MS-DOS) або навіть всього 64… Рис. 9.5. Організація структури з перекриттям. Можна по черзі завантажувати в пам'ять гілки A-B, A-C-D і A-C-E…

Динамічний розподіл. Свопінг.

Вивантажений процес може бути повернений в той же самий адресний простір або в інше. Це обмеження диктується методом скріплення. Для схеми… Свопінг не має безпосереднього відношення до управління пам'яттю, швидше він…  

Тема 11

Найпростіші схеми управління пам’яттю (продовження).

Схема із змінними розділами

В принципі, система свопінгу може базуватися на фіксованих розділах. Ефективнішою, проте, представляється схема динамічного розподілу або схема із змінними розділами, яка може використовуватися і в тих випадках, коли всі процеси цілком поміщаються в пам'яті, тобто у відсутність свопінгу. В цьому випадку спочатку вся пам'ять вільна і не розділена заздалегідь на розділи. Завданню, що знов поступає, виділяється строго необхідна кількість пам'яті, не більш. Після вивантаження процесу пам'ять тимчасово звільняється. Після закінчення деякого часу пам'яттю є змінне число розділів різного розміру (мал. 8.6). Суміжні вільні ділянки можуть бути об'єднані.

Рис. 10.1. Динаміка розподілу пам'яті між процесами (сірим кольором показана невживана пам'ять)

 

У який розділ поміщати процес? Найбільш поширено три стратегії.

Стратегія першого відповідного (First fit). Процес поміщається в перший відповідний за розміром розділ.

Стратегія найбільш відповідного (Best fit). Процес поміщається в той розділ, де після його завантаження залишиться менше всього вільного місця.

Стратегія найменш відповідного (Worst fit). При приміщенні в найбільший розділ в нім залишається достатньо місця для можливого розміщення ще одного процесу.

Моделювання показало, що частка корисно використовуваної пам'яті по-перше двох випадках більше, при цьому перший спосіб декілька швидше. Попутно відмітимо, що перераховані стратегії широко застосовуються і іншими компонентами ОС, наприклад для розміщення файлів на диску.

Типовий цикл роботи менеджера пам'яті полягає в аналізі запиту на виділення вільної ділянки (розділу), виборі його серед тих, що є відповідно до однієї із стратегій (першого відповідного, найбільш відповідного і найменш відповідного), завантаженні процесу у вибраний розділ і подальших змінах таблиць вільних і зайнятих областей. Аналогічне коректування необхідне і після завершення процесу. Скріплення адрес може здійснюватися на етапах завантаження і виконання.

Цей метод гнучкіший в порівнянні з методом фіксованих розділів, проте йому властива зовнішня фрагментація – наявність великого числа ділянок невживаної пам'яті, не виділеної жодному процесу. Вибір стратегії розміщення процесу між першим відповідним і найбільш відповідним слабо впливає на величину фрагментації. Цікаво, що метод найбільш відповідного може виявитися найгіршим, оскільки він залишає безліч дрібних незайнятих блоків.

Статистичний аналіз показує, що пропадає в середньому 1/3 пам'яті! Це відоме правило 50% (дві сусідні вільні ділянки на відміну від двох сусідніх процесів можуть бути об'єднані).

Одне з вирішень проблеми зовнішньої фрагментації – організувати стискування, тобто переміщення всіх зайнятих (вільних) ділянок у бік зростання (убування) адрес, так, щоб вся вільна пам'ять утворила безперервну область. Цей метод іноді називають схемою з переміщуваними розділами. У ідеалі фрагментація після стискування має бути відсутньою. Стискування, проте, є дорогою процедурою, алгоритм вибору оптимальної стратегії стискування дуже важкий і, як правило, стискування здійснюється в комбінації з вивантаженням і завантаженням по інших адресах.

 

 

Сторінкова пам'ять

У найпростішому і найбільш поширеному випадку сторінкової організації пам'яті (або paging) як логічний адресний простір, так і фізичне… Логічна адреса в сторінковій системі – впорядкована пара (p,d), де p – номер… Описувана схема дозволяє завантажити процес, навіть якщо немає безперервної області кадрів, достатньої для розміщення…

Сегментна і сегментно-сторінкова організація пам'яті

Програмісти, що пишуть на мовах низького рівня, повинні мати уявлення про сегментну організацію, явним чином міняючи значення сегментних регістрів… Кожен сегмент – лінійна послідовність адрес, що починається з 0. Максимальний… Логічна адреса – впорядкована пара v=(s,d), номер сегменту і зсув усередині сегменту.

Висновок

У справжній лекції описані прості способи управління пам'яттю в ОС. Фізична пам'ять комп'ютера має ієрархічну структуру. Програма є набором сегментів в логічному адресному просторі. ОС здійснює скріплення логічних і фізичних адресних просторів. У подальших лекціях розглядатимуться сучасні рішення, пов'язані з підтримкою віртуальної пам'яті.

 

Тема 12: Віртуальна пам’ять.

Поняття віртуальної пам'яті

Суть концепції віртуальної пам'яті полягає в наступному. Інформація, з якою працює активний процес, повинна розташовуватися в оперативній пам'яті. У… Таким чином, в наявності всіх компонентів процесу в основній пам'яті… Можливість виконання програми, що знаходиться в пам'яті лише частково, має ряд цілком очевидних переваг.

Архітектурні засоби підтримки віртуальної пам'яті

  У найпоширенішому випадку необхідно відобразити великий віртуальний адресний…  

Сторінкова віртуальна пам'ять

Після розбиття менеджером пам'яті віртуального адресного простору на сторінки віртуальна адреса перетвориться у впорядковану пару (p,d), де p –… Оскільки число віртуальних сторінок велике, таблиця сторінок набирає… За відсутності сторінки в пам'яті в процесі виконання команди виникає виняткова ситуація, звана сторінкове порушення…

Сегментно-сторінкова організації віртуальної пам'яті

На практиці, проте, появи в системі великої кількості таблиць сторінок прагнуть уникнути, організовуючи сегменти, що не перекриваються, в одному…  

Структура таблиці сторінок

Отже, віртуальна адреса складається з віртуального номера сторінки і зсуву. Номер запису в таблиці сторінок відповідає номеру віртуальної сторінки.… Основну проблему для ефективної реалізації таблиці сторінок створюють великі… Підрахуємо зразковий розмір таблиці сторінок. У 32-бітовому адресному просторі при розмірі сторінки 4 Кбайт (Intel)…

Асоціативна пам'ять

Відповідно до властивості локальності більшість програм протягом деякого проміжку часу звертаються до невеликої кількості сторінок, тому активно… Природне вирішення проблеми прискорення – забезпечити комп'ютер апаратним… Один запис таблиці в асоціативній пам'яті (один вхід) містить інформацію про одну віртуальну сторінку: її атрибути і…

Інвертована таблиця сторінок

У цій таблиці міститься по одному запису на кожен сторінковий кадр фізичної пам'яті. Істотно, що достатньо однієї таблиці для всіх процесів. Таким… Не дивлячись на економію оперативної пам'яті, застосування інвертованої…  

Розмір сторінки

Чим більше розмір сторінки, тим менше буде розмір структур даних, обслуговуючих перетворення адрес, але тим більше будуть втрати, пов'язані з тим,… Як слід вибирати розмір сторінки? По-перше, потрібно враховувати розмір… Як правило, розмір сторінок задається апаратний, наприклад в DEC PDP-11 – 8 Кбайт, в DEC VAX – 512 байт, в іншій…

Висновок

У справжній лекції розглянуті апаратні особливості підтримки віртуальної пам'яті. Розбиття адресного простору процесу на частини і динамічна трансляція адреси дозволили виконувати процес навіть у відсутність деяких його компонентів в оперативній пам'яті. Підкачка бракуючих компонентів з диска здійснюється операційною системою в той момент, коли в них виникає необхідність. Наслідком такої стратегії є можливість виконання великих програм, розмір яких може перевищувати розмір оперативної пам'яті. Щоб забезпечити даній схемі потрібну продуктивність, відображення адрес здійснюється апаратних за допомогою багаторівневої таблиці сторінок і асоціативної пам'яті.

 

 

Виняткові ситуації при роботі з пам'яттю

Більшість ОС використовують сегментно-сторінкову віртуальну пам'ять. Для забезпечення потрібної продуктивності менеджер пам'яті ОС прагне підтримувати в оперативній пам'яті актуальну інформацію, намагаючись вгадати, до яких логічних адрес послідує звернення в недалекому майбутньому. Вирішальну роль тут грає вдалий вибір стратегії заміщення, реалізованої в алгоритмі виштовхування сторінок.

 

Виняткові ситуації при роботі з пам'яттю

Що ж відбувається, коли потрібної сторінки в пам'яті немає або операція звернення до пам'яті недопустима? Природно, що операційна система має бути… Сторінкове порушення може відбуватися в самих різних випадках: за відсутності… Нас цікавитиме конкретний варіант сторінкового порушення - звернення до відсутньої сторінки, оскільки саме його…

Тема 13: Управління сторінковою пам’яттю.

Стратегії управління сторінковою пам'яттю

Стратегія вибірки (fetch policy) - в який момент слід переписати сторінку з вторинної пам'яті в первинну. Існує два основні варіанти вибірки - за… Алгоритм вибірки з попередженням здійснює випереджаюче читання, тобто окрім… Стратегія розміщення (placement policy) - в яку ділянку первинної пам'яті помістити сторінку, що поступає. У системах…

Алгоритми заміщення сторінок

знайти деяку зайняту сторінку основної пам'яті; перемістити у разі потреби її вміст в зовнішню пам'ять; переписати в цей сторінковий кадр вміст потрібної віртуальної сторінки із зовнішньої пам'яті;

Алгоритм FIFO. Виштовхування першої сторінки

Аномалія Біледі (Belady) На перший погляд здається очевидним, що чим більше в пам'яті сторінкових… Система з трьома кадрами (9 faults) виявляється продуктивнішою, ніж з чотирма кадрами (10 faults), для рядка звернень…

Виштовхування сторінки, що найдовше не використовувалась. Алгоритм LRU.

Ключова відмінність між FIFO і оптимальним алгоритмом полягає в тому, що один дивиться назад, а інший вперед. Якщо використовувати минуле для… Рис. 12.2. Приклад роботи алгоритму LRU

Виштовхування рідко використовуваної сторінки. Алгоритм NFU

Програмна реалізація алгоритму, близького до LRU, - алгоритм NFU(Not Frequently Used). Для нього потрібні програмні лічильники, поодинці на кожну сторінку, які… Таким чином, кандидатом на звільнення виявляється сторінка з найменшим значенням лічильника, як сторінка, до якої…

Інші алгоритми

Наприклад, алгоритм Second-Chance - модифікація алгоритму FIFO, яка дозволяє уникнути втрати часто використовуваних сторінок за допомогою аналізу… У комп'ютері Macintosh використаний алгоритм NRU (Not Recently-Used), де… Є також і багато інших алгоритмів заміщення. Об'єм цього курсу не дозволяє розглянути їх детально. Докладний опис…

Управління кількістю сторінок, виділеною процесу. Модель робочої множини

Отже, що робити, якщо у розпорядженні процесу є недостатнє число кадрів? Чи потрібно його припинити із звільненням всіх кадрів? Що слід розуміти під…   Трешинг (Thrashing)

Модель робочої множини

Процеси починають працювати, не маючи в пам'яті необхідних сторінок. В результаті при виконанні першої ж машинної інструкції виникає page fault, що… Таким чином, існує набір сторінок (P1, P2 ... Pn), що активно використовуються…

Сторінкові демони

Прикладом такого роду процесу може бути фоновий процес - складальник сторінок, що реалізовує полегшений варіант алгоритму відкачування, заснований… Але якщо виникає вимога сторінки в умовах, коли список вільних сторінок… У ОС Windows 2000 аналогічну роль грає менеджер балансного набору (Working set manager), який викликається раз в…

Окремі аспекти функціонування менеджера пам'яті

Розглянемо випадок, коли система віртуальної пам'яті може вступити в конфлікт з підсистемою введення-виводу. Наприклад, процес може запитати… Друге рішення - локалізувати сторінки в пам'яті, використовуючи спеціальний… Інше використання біта локалізації може мати місце і при нормальному заміщенні сторінок. Розглянемо наступний ланцюг…

Висновок

Описана система управління пам'яттю є сукупністю програмно-технічних засобів, що забезпечують продуктивне функціонування сучасних комп'ютерів. Успіх реалізації тієї частини ОС, яка відноситься до управління віртуальною пам'яттю, визначається близькістю архітектури апаратних засобів, що підтримують віртуальну пам'ять, до абстрактної моделі віртуальної пам'яті ОС. Справедливості ради відмітимо, що в переважній більшості сучасних комп'ютерів апаратура виконує функції, потреби моделі ОС, що істотно перевищують, так що створення апаратно-залежної частини підсистеми управління віртуальною пам'яттю ОС в більшості випадків немає надмірно складною задачею.

 

 

Тема 14: Основні функції та інтерфейс файлової системи. Організація файлів та каталогів.

Вступ

Історія систем управління даними в зовнішній пам'яті починається ще з магнітних стрічок, але сучасну зовнішність вони придбали з появою магнітних дисків. До цього кожна прикладна програма сама вирішувала проблеми іменування даних і їх структуризації в зовнішній пам'яті. Це утрудняло підтримку на зовнішньому носієві декількох архівів інформації, що довготривало зберігається. Історичним кроком став перехід до використання централізованих систем управління файлами. Система управління файлами бере на себе розподіл зовнішньої пам'яті, відображення імен файлів в адреси зовнішньої пам'яті і забезпечення доступу до даних.

Файлова система – це частина операційної системи, призначення якої полягає в тому, щоб організувати ефективну роботу з даними, що зберігаються в зовнішній пам'яті, і забезпечити користувачеві зручний інтерфейс при роботі з такими даними. Організувати зберігання інформації на магнітному диску непросто. Це вимагає, наприклад, хорошого знання пристрою контроллера диска, особливостей роботи з його регістрами. Безпосередня взаємодія з диском - прерогатива компоненту системи введення-виводу ОС, званого драйвером диска. Для того, щоб позбавити користувача комп'ютера від складнощів взаємодії з апаратурою, була придумана ясна абстрактна модель файлової системи. Операції запису або читання файлу концептуально простіше, ніж низькорівневі операції роботи з пристроями.

Основна ідея використання зовнішньої пам'яті полягає в наступному. ОС ділить пам'ять на блоки фіксованого розміру, наприклад, 4096 байт. Файл, що зазвичай є неструктурованою послідовністю однобайтових записів, зберігається у вигляді послідовності блоків (не обов'язково суміжних); кожен блок зберігає ціле число записів. У деяких ОС (MS-DOS) адреси блоків, що містять дані файлу, можуть бути організовані в зв'язний список і винесені в окрему таблицю в пам'яті. У інших ОС (Unix) адреси блоків даних файлу зберігаються в окремому блоці зовнішньої пам'яті (так званому індексі або індексному вузлі). Цей прийом, званий індексацією, є найбільш поширеним для застосувань, що вимагають довільного доступу до записів файлів. Індекс файлу складається із списку елементів, кожен з яких містить номер блоку у файлі і зведення про місцеположення даного блоку. Прочитування чергового байта здійснюється з так званої поточної позиції, яка характеризується зсувом від початку файлу. Знаючи розмір блоку, легко обчислити номер блоку, що містить поточну позицію. Адресу ж потрібного блоку диска можна потім витягувати з індексу файлу. Базовою операцією, що виконується по відношенню до файлу, є читання блоку з диска і перенесення його в буфер, що знаходиться в основній пам'яті.

Файлова система дозволяє за допомогою системи довідників (каталогів, директорій) пов'язати унікальне ім'я файлу з блоками вторинної пам'яті, що містять дані файлу. Ієрархічна структура каталогів, використовувана для управління файлами, може служити іншим прикладом індексної структури. В цьому випадку каталоги або теки грають роль індексів, кожен з яких містить посилання на свої підкаталоги. З цієї точки зору вся файлова система комп'ютера є великим індексованим файлом. Окрім власне файлів і структур даних, використовуваних для управління файлами (каталоги, дескриптори файлів, різні таблиці розподілу зовнішньої пам'яті), поняття "Файлова система" включає програмні засоби, що реалізовують різні операції над файлами.

 

Перерахуємо основні функції файлової системи.

· Ідентифікація файлів. Пов'язання імені файлу з виділеним йому простором зовнішньої пам'яті.

· Розподіл зовнішньої пам'яті між файлами. Для роботи з конкретним файлом користувачеві не потрібно мати інформації про місцеположення цього файлу на зовнішньому носієві інформації. Наприклад, для того, щоб завантажити документ редактор з жорсткого диска, нам не потрібно знати, на якій стороні якого магнітного диска, на якому циліндрі і в якому секторі знаходиться даний документ.

· Забезпечення надійності і відмовостійкої. Вартість інформації може у багато разів перевищувати вартість комп'ютера.

· Забезпечення захисту від несанкціонованого доступу.

· Забезпечення сумісного доступу до файлів, так щоб користувачеві не доводилося докладати спеціальних зусиль по забезпеченню синхронізації доступу.

· Забезпечення високої продуктивності.

Іноді говорять, що файл - це пойменований набір зв'язаної інформації, записаної у вторинну пам'ять. Для більшості користувачів файлова система - найбільш видима частина ОС. Вона надає механізм для онлайнового зберігання і доступу як до даних, так і до програм для всіх користувачів системи. З погляду користувача, файл - одиниця зовнішньої пам'яті, тобто дані, записані на диск, мають бути у складі якого-небудь файлу.

Важливий аспект організації файлової системи - облік вартості операцій взаємодії з вторинною пам'яттю. Процес прочитування блоку диска складається з позиціонування прочитуючої головки над доріжкою, що містить необхідний блок, очікування, поки необхідний блок зробить оборот і опиниться під головкою, і власне прочитування блоку. Для цього потрібний значний час (десятки мілісекунд). У сучасних комп'ютерах звернення до диска здійснюється приблизно в 100 000 разів повільніше, ніж звернення до оперативної пам'яті. Таким чином, критерієм обчислювальної складності алгоритмів, що працюють із зовнішньою пам'яттю, є кількість звернень до диска.

У даній лекції розглядаються питання структури, іменування, захисту файлів; операції, які дозволяється проводити над файлами; організація файлового архіву (повного дерева довідників). Проблеми виділення дискового простору, забезпечення продуктивної роботи файлової системи і ряд інших питань, що цікавлять розробників системи, ви знайдете в наступній лекції.

 

Організація файлів і доступ до них

Загальні відомості про файли

Імена файлів

Файлами є абстрактні об'єкти. Їх завдання - зберігати інформацію, приховуючи від користувача деталі роботи з пристроями. Коли процес створює файл, він дає йому ім'я. Після завершення процесу файл продовжує існувати і через своє ім'я може бути доступний іншим процесам.

Правила іменування файлів залежать від ОС. Багато ОС підтримують імена з двох частин (имя+расширение), наприклад progr.c (файл, що містить текст програми на мові Сі) або autoexec.bat (файл, що містить команди інтерпретатора командної мови). Тип розширення файлу дозволяє ОС організувати роботу з ним різних прикладних програм відповідно до заздалегідь обумовлених угод. Зазвичай ОС накладають деякі обмеження, як на використовувані в імені символи, так і на довжину імені файлу. Відповідно до стандарту POSIX, популярні ОС оперують зручними для користувача довгими іменами (до 255 символів).

 

Типи файлів

Основні типи файлів: регулярні (звичайні) файли і директорії (довідники, каталоги). Звичайні файли містять призначену для користувача інформацію.… Нагадаємо, що хоча усередині підсистеми управління файлами звичайний файл… Далі мова піде головним чином про звичайні файли.

Атрибути файлів

Окрім імені ОС часто пов'язують з кожним файлом і іншу інформацію, наприклад дату модифікації, розмір і так далі Ці інші характеристики файлів називаються атрибутами. Список атрибутів в різних ОС може варіюватися. Зазвичай він містить наступні елементи: основну інформацію (ім'я, тип файлу), адресну інформацію (пристрій, початкова адреса, розмір), інформацію про управління доступом (власник, допустимі операції) і інформацію про використання (дати створення, останнього читання, модифікації і ін.).

Список атрибутів зазвичай зберігається в структурі директорій (див. наступну лекцію) або інших структурах, що забезпечують доступ до даних файлу.

 

Організація файлів і доступ до них

Програміст сприймає файл у вигляді набору однорідних записів. Запис - це найменший елемент даних, який може бути оброблений як єдине ціле прикладною програмою при обміні із зовнішнім пристроєм. Причому в більшості ОС розмір запису дорівнює одному байту. Тоді як застосування оперують записами, фізичний обмін з пристроєм здійснюється великими одиницями (зазвичай блоками). Тому записи об'єднуються в блоки для виводу і розблоковуються - для введення. Питання розподілу блоків зовнішньої пам'яті між файлами розглядаються в наступній лекції.

 

ОС підтримують декілька варіантів структуризації файлів.

Послідовний файл

Простий варіант - так званий послідовний файл. Тобто файл є послідовністю записів. Оскільки записи, як правило, однобайтові, файл є неструктурованою послідовністю байтів.

Обробка подібних файлів припускає послідовне читання записів від початку файлу, причому конкретний запис визначається її положенням у файлі. Такий спосіб доступу називається послідовним (модель стрічки). Якщо як носій файлу використовується магнітна стрічка, то так і робиться. Поточна позиція прочитування може бути повернена на початок файлу (rewind).

 

Файл прямого доступу

Тут мається на увазі відносний номер, що специфікує даний блок серед блоків диска, що належать файлу. Про зв'язок відносного номера блоку з… Природно, що в цьому випадку для доступу до середини файлу проглядання всього… Таким чином, файл, що складається з однобайтових записів на пристрої прямого доступу, - найбільш поширений спосіб…

Інші форми організації файлів

Перший крок в структуризації - зберігання файлу у вигляді послідовності записів фіксованої довжини, кожна з яких має внутрішню структуру. Операція… Інший спосіб представлення файлів - послідовність записів змінної довжини,…

Операції над файлами

Створення файлу, що не містить даних. Сенс даного виклику - оголосити, що файл існує, і привласнити йому ряд атрибутів. При цьому виділяється місце… Видалення файлу і звільнення займаного їм дискового простору. Відкриття файлу. Перед використанням файлу процес повинен його відкрити. Мета даного системного виклику - дозволити…

Каталоги. Логічна структура файлового архіву

Кожен каталог містить список каталогів і/або файлів, що містяться в даному каталозі. Каталоги мають один і той же внутрішній формат, де кожному… Число директорій залежить від системи. У ранніх ОС була тільки одна коренева…

Розділи диска. Організація доступу до архіву файлів.

У сучасних ОС прийнято розбивати диски на логічні диски (це низькорівнева операція), іноді звані розділами (partitions). Буває, що, навпаки,… У деяких системах управління файлами потрібний, щоб кожен архів файлів цілком… У інших системах (Multics) вся сукупність файлів і каталогів є єдиним деревом. Сама система, виконуючи пошук файлів по…

Операції над директоріями

· Створення директорії. Знов створена директорія включає записи з іменами '.' і '..', проте вважається порожній. · Видалення директорії. Видалена може бути тільки порожня директорія. · Відкриття директорії для подальшого читання. Hапример, щоб перерахувати файли, що входять в директорію, процес…

Безпека файлової системи

Захист файлів

Загальні проблеми безпеки ОС розглянуті в лекціях 15-16. Інформація в комп'ютерній системі має бути захищена як від фізичного руйнування (reliability), так і від несанкціонованого доступу (protection).

Тут ми торкнемося окремих аспектів захисту, пов'язаних з контролем доступу до файлів.

 

Контроль доступу до файлів

Наявність в системі багатьох користувачів припускає організацію контрольованого доступу до файлів. Виконання будь-якої операції над файлом має бути дозволене тільки у разі наявності у користувача відповідних привілеїв. Зазвичай контролюються наступні операції: читання, запис і виконання. Інші операції, наприклад копіювання файлів або їх перейменування, також можуть контролюватися. Проте вони частіше реалізуються через перерахованих. Так, операцію копіювання файлів можна представити як операцію читання і подальшу операцію запису.

 

Списки прав доступу

· Конструювання подібного списку може виявитися складним завданням, особливо якщо ми не знаємо заздалегідь користувачів системи. · Запис в директорії повинен мати змінний розмір (включати список потенційних… · Для вирішення цих проблем створюють класифікації користувачів, наприклад, в ОС Unix всі користувачі розділені на…

Висновок

Отже, файлова система є набором файлів, директорій і операцій над ними. Імена, структури файлів, способи доступу до них і їх атрибути - важливі аспекти організації файлової системи. Зазвичай файл є неструктурованою послідовністю байтів. Головне завдання файлової системи - пов'язати символьне ім'я файлу з даними на диску. Більшість сучасних ОС підтримують ієрархічну систему каталогів або директорій з можливим вкладенням директорій. Безпека файлової системи, що базується на веденні списків прав доступу, - одна з найважливіших концепцій ОС.

 

 

Тема 15: Структура файлових систем. Сучасні архітектури файлових систем.

Загальна структура файлової системи

Як вже мовилося, файлова система повинна організувати ефективну роботу з даними, що зберігаються в зовнішній пам'яті, і надати користувачеві можливості для запам'ятовування і вибірки цих даних.

Для організації зберігання інформації на диску користувач спочатку зазвичай виконує його форматування, виділяючи на нім місце для структур даних, які описують стан файлової системи в цілому. Потім користувач створює потрібну йому структуру каталогів (або директорій), які, по суті, є списками вкладених каталогів і власне файлів. І нарешті, він заповнює дисковий простір файлами, приписуючи їх тому або іншому каталогу. Таким чином, ОС повинна надати в розпорядження користувача сукупність системних викликів, які забезпечують його необхідними сервісами.

Крім того, файлові служби можуть вирішувати проблеми перевірки і збереження цілісності файлової системи, проблеми підвищення продуктивності і ряд інших.

 

Загальна структура файлової системи

Нижній рівень - устаткування. Це насамперед магнітні диски з рухомими головками - основні пристрої зовнішньої пам'яті, що є пакетами магнітних… Безпосередньо з пристроями (дисками) взаємодіє частина ОС, звана системою… У структурі системи управління файлами можна виділити базисну підсистему, яка відповідає за виділення дискового…

Методи виділення дискового простору

Управління зовнішньою пам'яттю

Перш ніж описувати структуру даних файлової системи на диску, необхідно розглянути алгоритми виділення дискового простору і способи обліку вільної і зайнятої дискової пам'яті. Ці завдання зв'язані між собою.

 

Методи виділення дискового простору

Ключовим, безумовно, є питання, який тип структур використовується для обліку окремих блоків файлу, тобто спосіб скріплення файлів з блоками диска. У ОС використовується декілька методів виділення файлу дискового простору. Для кожного з методів запис в директорії, відповідний символьному імені файлу, містить покажчик, слідуючи якому можна знайти всі блоки даного файлу.

 

Виділення безперервною послідовністю блоків

Ця схема має дві переваги. По-перше, її легко реалізувати, оскільки з'ясування місцезнаходження файлу зводиться до питання, де знаходиться перший… Безперервне виділення використовується в ОС IBM/CMS, в ОС RSX-11 (для… Цей спосіб поширений мало, і ось чому. В процесі експлуатації диск є деякою сукупністю вільних і зайнятих фрагментів.…

Зв'язний список

Рис. 14.2. Зберігання файлу у вигляді зв'язного списку дискових блоків Зовнішня фрагментація для даного методу відсутня. Будь-який вільний блок може бути використаний для задоволення…

Таблиця відображення файлів

Як і раніше істотно, що запис в директорії містить тільки посилання на перший блок. Далі за допомогою таблиці FAT можна локалізувати блоки файлу… Головне достоїнство даного підходу полягає в тому, що по таблиці відображення…

Індексні вузли

Індексування підтримує прямий доступ до файлу, без збитку від зовнішньої фрагментації. Індексоване розміщення широко поширене і підтримує як… Зазвичай застосовується комбінація однорівневого і багаторівневих індексів.…

Управління вільним і зайнятим дисковим простором

Дисковий простір, не виділений жодному файлу, також має бути керованим. У сучасних ОС використовується декілька способів обліку використовуваного місця на диску. Розглянемо найбільш поширені.

 

Облік за допомогою організації бітового вектора

Головна перевага цього підходу полягає в тому, що він відносно простий і ефективний при знаходженні першого вільного блоку або n послідовних блоків… Описуваний метод обліку вільних блоків використовується в Apple Macintosh. Не дивлячись на те що розмір описаного бітового вектора найменший зі всіх можливих структур, навіть такий вектор може…

Облік за допомогою організації зв'язного списку

Інший підхід - зв'язати в список всі вільні блоки, розміщуючи покажчик на перший вільний блок в спеціально відведеному місці диска, попутно кэшируя в пам'яті цю інформацію.

Подібна схема не завжди ефективна. Для трасування списку потрібно виконати багато звернень до диска. Проте, на щастя, нам необхідний, як правило, тільки перший вільний блок.

Іноді удаються до модифікації підходу зв'язного списку, організовуючи зберігання адрес n вільних блоків в першому вільному блоці. Перші n-1 цих блоків дійсно використовуються. Останній блок містить адреси інших n блоків і так далі

Існують і інші методи, наприклад, вільний простір можна розглядати як файл і вести для нього відповідний індексний вузол.

 

Розмір блоку

Для систем із сторінковою організацією пам'яті характерна схожа проблема з розміром сторінки. Проведені дослідження показали, що більшість файлів мають невеликий розмір.… Можна також врахувати, що в системах з віртуальною пам'яттю бажано, щоб одиницею пересилки диск-пам'ять була сторінка…

Структура файлової системи на диску

Рис. 14.5. Приклад структури файлової системи на диску На початку розділу знаходиться суперблок, що містить загальний опис файлової системи, наприклад:

Реалізація директорій

Для доступу до файлу ОС використовує шлях (pathname), повідомлений користувачем. Запис в директорії зв'язує ім'я файлу або ім'я піддиректорії з…   Рис. 14.6. Реалізація директорій

Приклади реалізації каталогів у деяких ОС

Директорії в ОС MS-DOS

У ОС MS-DOS типовий запис в директорії має вигляд, показаний на мал. 12.7.

Рис. 14.7. Варіант запису в директорії MS-DOS

У ОС MS-DOS, як і в більшості сучасних ОС, директорії можуть містити піддиректорії (що специфікуються бітом атрибуту), що дозволяє конструювати довільне дерево директорій файлової системи.

Номер першого блоку використовується як індекс в таблиці FAT. Далі по ланцюжку в цій таблиці може бути знайдені решта блоків.

 

Директорії в ОС Unix

Структура директорії проста. Кожен запис містить ім'я файлу і номер його індексного вузла (див. мал. 12.8). Решта всієї інформації про файл (тип, розмір, час модифікації, власник і так далі і номери дискових блоків) знаходиться в індексному вузлі.

Рис. 14.8. Варіант запису в директорії Unix

У пізніших версіях Unix форма запису зазнала ряд змін, наприклад ім'я файлу описується структурою. Проте суть залишилася колишньою.

 

Пошук в директорії

Список файлів в директорії зазвичай не є впорядкованим по іменах файлів. Тому правильний вибір алгоритму пошуку імені файлу в директорії має великий вплив на ефективність і надійність файлових систем.

 

Лінійний пошук

Метод простий, але вимагає тимчасових витрат. Для створення нового файлу спочатку потрібно перевірити директорію на наявність такого ж імені. Потім… Реальний недолік даного методу - послідовний пошук файлу. Інформація про…  

Хеш-кодування-таблиця

В результаті хешування можуть виникати колізії, тобто ситуації, коли функція хешування, застосована до різних імен файлів, дає один і той же…  

Інші методи пошуку

Окрім описаних методів пошуку імені файлу, в директорії існують та інші. Як приклад можна привести організацію пошуку в каталогах файлової системи NTFS за допомогою так званого B-дерева, яке стало стандартним способом організації індексів в системах баз даних (див. [Ахо, 2001]).

 

Монтування файлових систем

Функція mount (вмонтовувати) зв'язує файлову систему з вказаного розділу на диску з існуючою ієрархією файлових систем, а функція umount… Процедура монтування полягає в наступному. Користувач (у Unix це… mount(special pathname,directory pathname,options);

Зв'язування файлів

Ядро дозволяє користувачеві зв'язувати каталоги, спрощуючи написання програм, що вимагають перетину дерева файлової системи (див. мал. 12.11). Часто… Це зручно, але створює ряд додаткових проблем. Простий спосіб реалізувати скріплення файлу - просто дублювати інформацію про нього в обох директоріях. При цьому,…

Кооперація процесів при роботі з файлами

Файл, що розділяється, - ресурс, що розділяється. Як і у разі будь-якого спільно використовуваного ресурсу, процеси повинні синхронізувати доступ до… Наприклад, якщо декілька користувачів одночасно редагують який-небудь файл і… Розглянемо спочатку грубий підхід, тобто тимчасове захоплення призначеним для користувача процесом файлу або запису…

Приклади вирішення колізій і тупикових ситуацій

Розглянемо як приклад утворення потенційної безвиході при створенні зв'язку (link), коли дозволений сумісний доступ до файлу [Bach, 1986]. Два процеси, наступні функції, що виконують одночасно: процес A: link("a/b/c/d","e/f/g");

Основні характеристики і сучасна архітектура файлових систем

Надійність файлової системи

Життя повне неприємних несподіванок, а руйнування файлової системи часто небезпечніше, ніж руйнування комп'ютера. Тому файлові системи повинні розроблятися з урахуванням подібної можливості. Окрім очевидних рішень, наприклад своєчасне дублювання інформації (backup), файлові системи сучасних ОС містять спеціальні засоби для підтримки власної сумісності.

 

Цілісність файлової системи

І якщо унаслідок непередбачуваного останову системи на диску будуть збережені зміни тільки для частини цих об'єктів (порушена атомарність файлової… У сучасних ОС передбачені заходи, які дозволяють звести до мінімуму збиток від…  

Порядок виконання операцій

Розглянемо приклад створення жорсткого зв'язку для файлу [Робачевський, 1999]. Для цього файловій системі необхідно виконати наступні операції: · створити новий запис в каталозі, вказуючий на індексний вузол файлу; · збільшити лічильник зв'язків в індексному вузлі.

Журналізація

Для відкоту необхідно, щоб для кожної протокольованої в журналі операції існувала зворотна. Наприклад, для каталогів і реляційних СУБД це саме так.… Журналізація реалізована в NTFS, Ext3FS, REISERFS і інших системах. Щоб…  

Перевірка цілісності файлової системи за допомогою утиліт

Якщо ж порушення все ж таки відбулося, то для усунення проблеми несумісності можна удатися до утиліт (fsck, chkdsk, scandisk і ін.), які перевіряють цілісність файлової системи. Вони можуть запускатися після завантаження або після збою і здійснюють багатократне сканування різноманітних структур даних файлової системи у пошуках суперечностей.

Можливі також евристичні перевірки. Hапример, знаходження індексного вузла, номер якого перевищує їх число на диску або пошук в призначених для користувача директоріях файлів, що належать суперкористувачеві.

На жаль, доводиться констатувати, що не існує ніяких засобів, що гарантують абсолютне збереження інформації у файлах, і в тих ситуаціях, коли цілісність інформації потрібно гарантувати з високим ступенем надійності, удаються до дорогих процедур дублювання.

 

Управління "поганими" блоками

Перший спосіб - зберігати список поганих блоків в контроллері диска. Коли контроллер ініціалізувався, він читає погані блоки і заміщає дефектний… Рішення на рівні ОС може бути наступним. Перш за все, необхідно ретельно…  

Продуктивність файлової системи

Оскільки звернення до диска - операція відносно повільна, мінімізація кількості таких звернень - ключове завдання всіх алгоритмів, що працюють із зовнішньою пам'яттю. Найбільш типова техніка підвищення швидкості роботи з диском - кешування.

Кешування

Кешем диска є буфер в оперативній пам'яті, що містить ряд блоків диска (див. мал. 12.12). Якщо є запит на читання/запис блоку диска, то спочатку проводиться перевірка на предмет наявності цього блоку в кеші. Якщо блок в кеші є, то запит задовольняється з кеша, інакше запитаний блок прочитується в кеш з диска. Скорочення кількості дискових операцій виявляється можливим унаслідок властивої ОС властивості локальності (про властивість локальності багато мовилося в лекціях, присвячених опису роботи системи управління пам'яттю).

Акуратна реалізація кешування вимагає вирішення декількох проблем.

Рис. 14.12. Структура блокового кешу Заміщення блоків повинне здійснюватися з урахуванням їх важливості для файлової системи. Блоки мають бути розділені на…

Оптимальне розміщення інформації на диску

Кешування - не єдиний спосіб збільшення продуктивності системи. Інша важлива техніка - скорочення кількості рухів прочитуючої головки диска за рахунок розумної стратегії розміщення інформації. Наприклад, масив індексних вузлів в Unix прагнуть розмістити на середніх доріжках. Також має сенс розміщувати індексні вузли поблизу від блоків даних, на які вони посилаються і так далі

Крім того, рекомендується періодично здійснювати дефрагментацію диска (збірку сміття), оскільки в популярних методиках виділення дискових блоків (за виключенням, можливо, FAT) принцип локальності не працює, і послідовна обробка файлу вимагає звернення до різних ділянок диска.

 

Сучасна архітектура файлових систем

На верхньому рівні розташовується так званий диспетчер файлових систем (наприклад, в Windows 95 цей компонент називається installable filesystem… Кожна файлова система (іноді говорять - драйвер файлової системи) на етапі… Та ж ідея підтримки декількох файлових систем в рамках однієї ОС може бути реалізована по-іншому, наприклад виходячи з…

Висновок

Реалізація файлової системи пов'язана з такими питаннями, як підтримка поняття логічного блоку диска, скріплення імені файлу і блоків його даних, проблемами розділення файлів і проблемами управління дискового простору.

Найбільш поширені способи виділення дискового простору: безперервне виділення, організація зв'язного списку і система з індексними вузлами.

Файлова система часто реалізується у вигляді листкової модульної структури. Нижні шари мають справу з устаткуванням, а верхні - з символічними іменами і логічними властивостями файлів.

Директорії можуть бути організовані різними способами і можуть зберігати атрибути файлу і адреси блоків файлів, а іноді для цього призначається спеціальна структура (індексні вузли).

Проблеми надійності і продуктивності файлової системи – найважливіші аспекти її дизайну.

 

 

Тема 16: Фізичні принципи організації вводу-виводу.

Управління вводом–виводом в операційних системах.

Зміст понять "Обробка інформації" і "операції введення-виводу" залежить від того, з якої точки зору ми дивимося на них. З… Пояснення того, що саме робить процесор при обробці інформації, як він вирішує… Дана лекція буде присвячена другому виду роботи обчислювальної системи – операціям введення-виводу. Ми розберемо, що…

Фізичні принципи організації введення-виводу

Існує багато різноманітних пристроїв, які можуть взаємодіяти з процесором і пам'яттю: таймер, жорсткі диски, клавіатура, дисплеї, миша, модеми і т. д., аж до пристроїв відображення і введення інформації в авіаційнно-космічних тренажерах. Частина цих пристроїв може бути вбудована всередину корпусу комп'ютера, частина – винесена за його межі і спілкуватися з комп'ютером через різні лінії зв'язку: кабельні, оптоволоконні, радіорелейні, супутникові і так далі Конкретний набір пристроїв і способи їх підключення визначаються цілями функціонування обчислювальної системи, бажаннями і фінансовими можливостями користувача. Не дивлячись на все різноманіття пристроїв, управління їх роботою і обмін інформацією з ними будуються на відносно невеликому наборі принципів, які ми постараємося розібрати в цьому розділі.

 

Загальні відомості про архітектуру комп'ютера

· шину даних, що складається з ліній даних і службовку для передачі інформації між процесором і пам'яттю, процесором і пристроями введення-виводу,… · адресну шину, що складається з ліній адреси і службовку для завдання адреси… · шину управління, що складається з ліній управління локальною магістраллю і ліній її стану, що визначають поведінку…

Структура контроллера пристрою

Регістр стану містить біти, значення яких визначається станом пристрою введення-виводу і які доступні тільки для читання обчислювальною системою. Ці… Регістр управління отримує дані, які записуються обчислювальною системою для… Регістр вихідних даних служить для приміщення в нього даних для читання обчислювальною системою, а регістр вхідних…

Опитування пристроїв і переривання. Виняткові ситуації і системні виклики.

1. Процесор в циклі читає інформацію з порту регістра станів і перевіряє значення біта зайнятості. Якщо біт зайнятості встановлений, то це означає,… 2. Процесор записує код команди виводу в порт регістра управління. 3. Процесор записує дані в порт регістра вхідних даних.

Тема 17: Логічні принципи організації вводу-виводу.

Структура системи вводу-виводу

Розглянуті в попередньому розділі фізичні механізми взаємодії пристроїв вводу-виводу з обчислювальною системою дозволяють зрозуміти, чому різноманітні зовнішні пристрої легко можуть бути додані в існуючі комп'ютери. Все, що необхідно зробити користувачеві при підключенні нового пристрою, – це відобразити порти пристрою у відповідний адресний простір, визначити, який номер відповідатиме перериванню, що генерується пристроєм, і, якщо потрібно, закріпити за пристроєм деякий канал DMA. Для нормального функціонування hardware це буде досить. Проте ми до цих пір нічого не сказали про те, як має бути побудована підсистема управління вводум-виводом в операційній системі для легені і безболісного додавання нових пристроїв і які функції взагалі зазвичай на неї покладаються.

 

Структура системи вводу-виводу

· Швидкість обміну інформацією може варіюватися в діапазоні від декількох байтів в секунду (клавіатура) до декількох гігабайтів в секунду (мережеві… · Одні пристрої можуть використовуватися декількома процесами паралельно (є… · Пристрої можуть запам'ятовувати виведену інформацію для її подальшого вводу або не володіти цією функцією.…

Систематизація зовнішніх пристроїв та інтерфейс між базовою підсистемою вводу-виводу і драйверами

· символьні (клавіатура, модем, термінал і т. п.); · блокові (магнітні і оптичні диски і стрічки, і т. д.); · мережеві (мережеві карти);

Функції базової підсистеми вводу-виводу

Базова підсистема вводу-виводу служить посередником між процесами обчислювальної системи і набором драйверів. Системні виклики для виконання операцій вводу-виводу трансформуються нею у виклики функцій необхідного драйвера пристрою. Проте обов'язки базової підсистеми не зводяться до виконання тільки дій трансляції загального системного виклику в звернення до приватної функції драйвера. Базова підсистема надає обчислювальній системі такі послуги, як підтримка системних викликів, що блокуються, не блокуються і асинхронних, буферизація і кешування вхідних і вихідних даних, здійснення spooling'a і монопольного захоплення зовнішніх пристроїв, обробка помилок і переривань, що виникають при операціях вводу-виводу, планування послідовності запитів на виконання цих операцій. Давайте зупинимося на цих послугах докладніше.

 

Блоковані, неблоковані та асинхронні системні виклики

До першої, найбільш звичній для більшості програмістів групі відносяться системні виклики, що блокуються. Як випливає з самої назви, застосування… До другої групи відносяться системні виклики, що не блокуються. Їх назва не… До третьої групи відносяться асинхронні системні виклики. Процес, що використав асинхронний системний виклик, ніколи в…

Буферизація і кешування

Перша причина буферизації – це різні швидкості прийому і передачі інформації, якими володіють учасники обміну. Розглянемо, наприклад, випадок… Друга причина буферизації – це різні об'єми даних, які можуть бути прийняті… Третя причина буферизації пов'язана з необхідністю копіювання інформації із застосувань, що здійснюють…

Spooling і захоплення пристроїв

Розглянемо як зовнішній пристрій принтер. Хоча принтер не може друкувати інформацію, що поступає одночасно від декількох процесів, може виявитися… У деяких операційних системах замість використання spooling для усунення race… Забезпечення spooling і механізму захоплення пристроїв є прерогативою базової підсистеми вводу-виводу.

Обробка переривань і помилок

Одна і та ж процедура обробки переривання може застосовуватися для декількох пристроїв вводу-виводу (наприклад, якщо ці пристрої використовують одну… Дії з обробки переривання і компенсації виникаючих помилок можуть бути…  

Планування запитів

Після завершення виконання поточного запиту операційна система (по ходу обробки виниклого переривання) повинна вирішити, який із запитів в списку… Завдання планування використання пристрою зазвичай покладається на базову…  

Висновок

Не дивлячись на все різноманіття пристроїв вводу-виводу, управління їх роботою і обмін інформацією з ними будуються на відносно невеликій кількості… Механізм, подібний до механізму переривань, може використовуватися також і для… Для побудови програмної частини системи вводу-виводу характерний "листковий" підхід. Для безпосередньої…

– Конец работы –

Используемые теги: Фізична, логічна, Організація, Пам, яті, комп, ютера, Найпростіші, схеми, управління, Пам, яттю0.145

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Фізична та логічна організація пам’яті комп’ютера. Найпростіші схеми управління пам’яттю

Что будем делать с полученным материалом:

Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Еще рефераты, курсовые, дипломные работы на эту тему:

Лекція № 4 Тема: Структура комп’ютера та характеристики компонентів комп’ютера
Тема Структура комп ютера та характеристики компонентів комп ютера... План Основні функціональні вузли комп ютера та зв язки між ними...

Тема: Ознайомлення з апаратним забезпеченням комп’ютера. Техніка безпеки роботи за комп’ютером
Тема Ознайомлення з апаратним забезпеченням комп ютера Техніка безпеки роботи за комп ютером... Мета Ознайомитись з апаратними засобами забезпечення персонального... Оснащення робочого місця апаратне забезпечення ЕОМ типу Pentium IV периферійні пристрої програмне забезпечення...

Методологія сучасного управління в контексті суспільного розвитку.Управління як предмет філософського аналізу. Основні типи управління та рівні його дії
Кафедра філософії і психології... Діденко Н Г Коноваленко Н В...

З ДИСЦИПЛІНИ КОМП’ЮТЕРНА ЕЛЕКТРОНІКА ЧАСТИНА II Обслуговування комп’ютерних систем та мереж
Молоді та спорту України... Рада директорів ВНЗ І ІІ р а Херсонської області... Херсонський політехнічний коледж...

UNIX та Internet: робота з віддаленим комп’ютером
За час свого існування система UNIX витримала значні зміни, стала потужнішою, складнішою і зручнішою. Найбільш важливі версії: Перша редакція 1971 … Ліцензія на цю версію була куплена фірмою Microsoft, яка розробила на її… За оцінюванням одного зі створювачів UNIX, Денніса Рітчі, система на мові С мала на 20-40% більший розмір, а…

Опорний конспект лекції на тему №14: Управління фінансами. Організаційно-правові засади управління фінансами
Організаційно правові засади управління фінансами... Органи управління фінансами Фінансовий контроль...

Тема: Визначення конфігурації персонального комп’ютера ПК засобами POST і стандартними засобами операційної системи Windows
Криворізький технічний університет... Кафедра комп ютерних систем та мереж... Методичні вказівки...

КУРСОВИЙ ПРОЕКТ з дисципліни Організація ресторанного господарства на тему: Організація обслуговування споживачів, що проживають у готелях за типом шведського столу Готельно-ресторанна справа
ХАРКІВСЬКИЙ ДЕРЖАВНИЙ УНІВЕРСИТЕТ ХАРЧУВАННЯ ТА ТОРГІВЛІ... Кафедра готельного і ресторанного бізнесу...

Клавіатура служить для введення інформації в комп’ютер. На клавіатурі можна виділити основні групи клавіш: алфавітно-цифрові клавіші
Клавіатура комп ютера... Клавіатура служить для введення інформації в комп ютер На клавіатурі можна... Переведення числа з двійкової системи числення в десяткову...

0.028
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам