- •Срс 1. Класифікація операційних систем. Основні принципи побудови операційних систем Класифікація операційних систем
- •1. По призначенню ос діляться на:
- •2. По режиму обробки даних розрізняють:
- •3. За засобом взаємодії з обчислювальною системою ос діляться на:
- •4. За основним архітектурним принципом ос діляться на:
- •Основні принципи побудови операційних систем
- •1. Принцип модульності
- •2. Принцип функціональної вибірковості
- •3. Принцип генерованості ос
- •4.Принцип функціональної надлишковості
- •5. Принцип віртуалізації
- •Срс 2. Базові дисципліни планування psjn, hprn, srr, mlfb
- •Срс 3. Фіксовані розділи пам'яті
- •Срс 4: Сегментно-сторінкова модель пам'яті. Плоска модель пам'яті Сегментно-сторінкова модель
- •Плоска модель пам'яті
- •Срс 5: Класична задача розподілу ресурсів, що носить назву "Проблеми філософів, що обідають" Філософи, що обідають
- •Срс 6: Нескінченне відкладання Нескінченне відкладання
- •Срс 7: Таблиця розташування файлів. Структура завантажувального запису dos
- •Структура завантажувального запису dos
- •Срс 8: Файлова система ntfs Файлова система ntfs (New Technology File System)
- •Основні можливості файлової системи ntfs
- •Срс 10: Захист інформації в комп’ютерних системах засобами ос. Захист файлів в операційних системах класу Unix Захист файлів
- •Срс 11: Модель віртуальних комунікаційних портів. Програмні канали. Черги повідомлень Загальні області пам'яті
- •Семафори
- •Програмні канали
- •Черги повідомлень
- •Срс 12: Взаємодія з користувачем в ос. Інтерфейс користувача. Елементи інтерфейсу. Віджети Взаємодія з користувачем в ос
- •Інтерфейс користувача.
- •Елементи інтерфейсу
- •Контрольні запитання:
- •Срс 13: Багатопроцесорні розподілені системи Функціонально розподілені системи
- •Паралельні комп’ютери
- •Продуктивність паралельних комп’ютерів
- •Системи з розподіленою пам’яттю
- •Класичні матричні системи
- •Обчислювальні кластери
- •Срс 14: Microsoft Windows для планшетів
- •Срс 15: Історія появи комп'ютерів Macintosh і їх застосування
- •Особливості апаратного забезпечення комп'ютерів Macintosh
- •Срс 16: Організація операційних систем на базі Linux
- •Срс 17: Хмарні операційні системи
- •Що таке хмарні операційні системи?
- •Найпопулярніші на сьогоднішній день WebOs:
- •Висновки
- •Література
- •Навчальне видання Тетяна Іванівна Трояновська Методичні вказівки до виконання самостійної роботи студентів з дисципліни “Комп’ютерні системи та мережі”
Черги повідомлень
Черги використовують модель взаємодії процесів "багато відправників - один одержувач". Цю модель часто називають поштовою скринькою (mailbox) із-за схожості з поштовою скринькою, що висить на дверях кожної квартири. Процес-одержувач є власником черги, він створює чергу, а решта процесів дістає до неї доступ, "відкриваючи" її. Черга зазвичай має зовнішнє ім'я. Передача даних в черзі відбувається завжди повідомленнями, причому кожне повідомлення має заголовок і тіло. Заголовок завжди має фіксований для даної системи формат. У нього обов'язково входить довжина повідомлення, а інша інформація залежить від специфікацій конкретної системи: це може бути пріоритет повідомлення, тип повідомлення, ідентифікатор процесу, що послав повідомлення і тому подібне Тіло повідомлення інтерпретується по правилах, що встановлюються самими процесами - відправником і одержувачем. Заголовок і тіло є істотно різними структурами даних і розташовуються в різних місцях в пам'яті. Власне черга (найчастіше - лінійний список) ОС складає із заголовків повідомлень. У елементи черги включаються покажчики на тіла повідомлень, розташовані в пам'яті системи або процесів. Як правило, можливості процесу-одержувача повідомлень не обмежуються читанням по дисципліні FIFO, йому надається багатший вибір дисциплін: LIFO, по пріоритету, по типах, по ідентифікаторах відправника і тому подібне У розпорядженні власника є також засоби визначення розміру черги, а можливо, і проглядання черги - неруйнуючого читання з неї. У розпорядженні процесу-відправника є тільки виклик типу sendMessage - посилки повідомлення в чергу. Якщо при спробі процесу послати повідомлення виявляється, що черга заповнена, процес-відправник блокується. Це, втім, досить окремий випадок, оскільки системні обмеження на розмір черг ніколи не бувають дуже жорсткими. Процес-одержувач блокується при спробі читати повідомлення, коли черга порожня. Істотним питанням при конструюванні механізму черг є питання про включення або невключення в ОС системної буферизації повідомлень. При включенні такого засобу (рис.11.3) тіло відправленого повідомлення копіюється в системну область пам'яті, а при читанні - копіюється з неї в адресний простір процесу-одержувача. За відсутності системної буферизації тіла повідомлень зберігаються в загальній для відправника і одержувача пам'яті, а передається тільки покажчик на тіло повідомлення (рис.11.4). У першому випадку виконуються додаткові пересилки, витрачається додаткова пам'ять і вводяться жорсткіші обмеження на об'єм повідомлень, але досягається надійність передачі і значно більш простій інтерфейс процесів. У другому випадку значно економиться пам'ять, але самі процеси повинні піклуватися про управління спільно використовуваною пам'яттю і про збереження повідомлень в ній. За відсутності системної буферизації повідомлень застосовуються зазвичай два методи передачі тіла повідомлення: або процес-відправник поміщає тіло повідомлення в окремий сегмент, що розділяється, отримує у ОС маніпулятор цього сегменту для процесу-одержувача і передає цей маніпулятор у складі повідомлення; або для всіх повідомлень виділяється одна загальна область пам'яті із загальним маніпулятором, і для розміщення повідомлення в ньому використовуються системні виклики виділення пам'яті цілком.
Рисунок 11.3 – Розміщення повідомлень в адресному просторі ядра |
|
Рисунок 11.4 – Розміщення повідомлень в адресному просторі процесу-відправника |
|
