
- •Операційні системи
- •Функціонування комп'ютерної системи
- •Обработка переривань
- •Структура пам'яті
- •Лекція 5: Архітектура ос. Управління процессами: Основні поняття. Семафори і монітори План
- •2. Керування процесами
- •Віртуальні машини - інший розповсюджений підхід до розробки операційних систем й їхніх користувальницьких інтерфейсів
- •Механізми й політики
- •Реалізація операційних систем
- •Генерація операційної системи
- •Перемикання з одного процесу на інший
- •Планувальники, що виконують диспетчеризацію процесів
- •Лекція 10. Методи синхронізації процесів План
- •Алгоритм рішення проблеми критичної секції
- •Алгоритм «в пиріжковій» (bakery algorithm)
- •Синхронізація на основі загальних семафорів
- •Реалізація семафорів
- •Рішення за допомогою семафорів завдання
- •Рішення за допомогою семафорів завдання "читачі - письменники"
- •Рішення за допомогою семафорів завдання " філософи, що обідають,"
- •Монітори
- •Лекція № 11. Управління памяттю План
- •Динамічне завантаження й динамічна лінковка
- •Оверлейна структура програми
- •Відкачка й підкачування
- •Лекція 13. Сегментна організація пам’яті. Віртуальна пам’ять
- •Оптимальний алгоритм заміщення сторінок
- •Сторінкова організація на вимогу в Windows nt
- •Лекція № 14. Системи файлів План
- •Типова організація файлової системи зображена на мал. 19.3.
- •Логічна організація директорій
- •Монтування файлових систем
- •Структура файлової системи
- •Лекція № 15. Віртуальні файлові системи План
- •Лекція 17. Системи вводу-виводу План
- •Опитування пристроїв
- •Переривання
- •Ввід-вивід із прямим доступом до пам'яті (dma)
- •Блокові й символьні пристрої
- •Мережні пристрої істотних відрізняються від блоків і символьних; мають свій власний інтерфейс і систему команд
- •Годинники й таймери
- •Блокуємий (синхронний) і не блокуємий (асинхронний) ввід-вивід
- •Структури даних для вводу-виводу в ядрі ос
- •Життєвий цикл запиту на ввід-вивід
- •Продуктивність вводу-виводу
- •Лекція 18. Мережі й мережеві структури. Класичні и сучасні мережеві комунікаційні протоколи План
- •Мережі Ethernet
- •Протокол tcp/ip
- •Функционирование Ethernet-мереж
- •Лекція 19: Безпека операційних систем і мереж. План
- •Лекція 20. Огляд архітектури й можливостей системи Linux: архітектура, ядро, поширення й ліцензування, принципи проектування, керування процесами План
- •Історія Linux
- •Ядро Linux
- •Сучасний стан Linux, дистрибутиви й ліцензування
- •Принципи проектування й компоненти системи Linux
- •Модулі ядра, що завантажують, Linux
- •Керування процесами в Linux
- •Планування завдань ядра й синхронізація в ядрі
- •Лекція 21. Огляд архітектури й можливостей системи Linux: керування пам'яттю, ресурсами, файлові системи, драйвери пристроїв, мережі, безпека План
- •Керування фізичною пам'яттю в Linux
- •Віртуальна пам'ять в Linux
- •Виконання й завантаження користувальницьких програм в Linux
- •Системи файлів Linux
- •Ввод й вивід в Linux
- •Взаємодія процесів в Linux
- •Структура мережі в Linux
- •Безпека в Linux
- •Розвиток і використання Linux
- •Лекція 22. Огляд архітектури й можливостей систем Windows 2000/xp/2003/Vista/2008/7 План
- •Система Windows 2000
- •Історія Windows
- •Принципи проектування Windows 2000 - розширюваність, переносимость, надійність, безпека, сумісність, продуктивність, підтримка інтернаціоналізації й локалізації.
- •Архітектура Windows 2000
- •Ядро Windows 2000
- •Обработка переривань у ядрі
- •Виконавча підсистема (executive) ос Windows 2000
- •Підсистеми оточення в Windows 2000
- •Лекція 23. Системні механізми Windows План
- •Система файлів Windows
- •Рограммный інтерфейс Windows
- •Програмний інтерфейс Windows: Керування процесами
- •Керування віртуальною й фізичною пам'яттю й робочими наборами в Windows
- •Лекція 24. Ос для мобільних пристроїв. Windows Mobile План
- •Особливості ос для мобільних пристроїв
- •Ринок ос для мобільних пристроїв
- •Перспективи ос для мобільних пристроїв
- •Лекція 25. Перспективи операційних систем і мереж План
- •Операційні системи інших великих фірм
- •Solaris - операційна система розробки фірми Oracle / Sun
- •Сучасні тенденції в розвитку ос
- •Нові ос сімейства Windows
- •Нові тенденції в розвитку ос
- •Графічні оболонки ос
- •Підтримка паралельних обчислень
- •Розвиток бездротових мереж
- •Перспективи розвитку ос
Нові тенденції в розвитку ос
Проект Midori. Midori - проект Microsoft Research, що початий на початку 2000-х рр. за назвою Singularity. Midori – дослідницька ОС, реалізована на керованому коді (managed code)являющемся основою платформи .NET й обеспечивающем повний контроль типів, безпеки й ін., що значно підвищує надійність і безпека коду. Однак до Midori розроблювачі ОС предпочитали менш надійні, але більше ефективні способи реалізації ОС на мовах C й C++, так що, на наш погляд, Midori – досить сміливий експеримент. На керованому коді в ОС Midori реалізовані, у тому числі, і ядро ОС, і драйвери пристроїв. Midori надає ефективна підтримка распалаллеливания, що особливо важливо при сучасних тенденціях розвитку апаратних платформ. Для підвищення безпеки виконання додатків Midori забезпечує їхній захист на основі виконання кожного додатка у своїй окремій "пісочниці" (sandbox)Одна з основних особливостей Midori – те, що вона є Интернет-ориентированной ОС. У майбутньому не виключений перехід розвитку ОС фірми Microsoft із платформи Windows на нову платформу Midori.
Графічні оболонки ос
Як ми вже відзначали, графічна оболонка є в кожної сучасної ОС. Графічні оболонки ОС надають наступні основні можливості.
Зручний графічний користувальницький інтерфейс.
Можливість виконати будь-які системні настроювання за допомогою GUI. Треба, по нашому особистому досвіді, особливо відзначити щодо цього графічні оболонки ОС Linux.
Підтримка нових тенденцій у розвитку інтерфейсів – multi-touch, Tablet PC й ін.
Уніфікація графічних оболонок для різних ОС. У різних операційних системах використаються графічні оболонки CDE, KDE, GNOME. Можливо, у найближчому майбутньому їхній список розшириться.
Відзначимо, що оболонки для різних ОС практично неотличимы (всі вони мають, наприклад, кнопку Start, папку My Documents і т.д.), що зручно для кінцевих користувачів, тому що спрощує вивчення робітничого середовища.
Однак, на наш погляд, використання тільки графічних оболонок (без вивчення командних мов і конфігураційних файлів) знижує рівень підготовки системних програмістів. При вивченні ОС програмістам, особливо - системним, варто мати це у виді. Щодо цього корисні навички фахівцеві дає використання ОС типу UNIX - насамперед, знання командних мов і конфігураційних файлів.
Підтримка паралельних обчислень
Всі сучасні ОС надають бібліотеки для розробки паралельних алгоритмів з використанням можливостей апаратури. Вони підтримують наступні основні види, стандарти й інструменти паралелізму:
OpenMP - прагматы для распараллеливания програм для компіляторів з різних мов;
MPI (Message Passing Interface) – паралельне виконання програм, взаємодіючих за допомогою передачі повідомлень.
ОС фірми Microsoft підтримують стандарт OpenMP. Є також бібліотеки MPI.NET, що підтримують стандарт MPI, а також бібліотеки ParallelFx. Фірма Microsoft випустила спеціальну версію операційної системи - Windows High Performance Computing (HPC) 2008, що підтримує паралельне програмування.
Розвиток бездротових мереж
Важливою сучасною тенденцією є розвиток усе більше й більше високопродуктивних бездротових мереж, що знаходить своє відбиття й у розвитку операційних систем. Виділимо наступні перспективні мережні технології.
WiMAX – регіональні бездротові мережі на основі технології Wi-Fi (бездротового радіозв'язку по стандартах IEEE.802.11) продуктивністю до 1 Гбит / с.
3G – мобільний зв'язок третього покоління на основі стандартів CDMA й UMTS (швидкодією до 14 МБит / с)
4G – нове покоління мобільних мереж зв'язку зі швидкістю передачі до 1 ГБит / з, що забезпечують також підвищена якість голосового зв'язку. Формально стандарт на мережі 4G ще не прийнятий, це - справа найближчого майбутнього.
Цікавою тенденцією є також використання цифрових телевізійних каналів для виходу в Інтернет за допомогою спеціальних пристроїв set-top boxes.