Структура ОС

Сучасні операційні системи містять принаймні такі основні компоненти: ядро, драйвери, файлова система, бібліотеки системних функцій, інтерфейс користувача.

Ядро операційної системи

Ядро ОС — це програма, але серед усіх інших програм, системних і прикладних, воно має найспецифічніше призначення: забезпечення взаємодію апаратних та програмних засобів.

Ядро — центральна частина операційної системи, що керує процесом виконання програм та їх доступом до ресурсів комп'ютера.

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

Драйвери

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

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

Драйвер — програмний модуль, що використовується іншими програмами для керування роботою пристроїв.

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

Файлова система

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

Бібліотеки системних функцій

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

Інтерфейс користувача

Як уже зазначалося, операційна система надає користувачеві можливість керувати виконанням прикладних програм та вмістом запам'ятовуючих пристроїв. Щоб система «розуміла» користувача, потрібен посередник — інтерфейс, який подаватиме об'єкти та системні функції ОС у вигляді, легкому для сприйняття людиною. Інтерфейс мають і прикладні програми. 

Інтерфейс користувача — це програмні засоби, що забезпечують взаємо¬дію користувача із системними та прикладними програмами.

Інтерфейс користувача операційної системи може як входити до складу ОС, так і створюватися службовими програмами — операційними оболонками і файловими менеджерами. Для ОС Windows найвідомішими файловими менеджерами вважаються програми Far та Windows Commander. 

Збереження інформації

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

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

Доріжка — сектори, що належать одній поверхні і знаходяться на однаковій відстані від осі обертання.

Циліндр — сукупність усіх доріжок, що належать різним поверхням, і знаходяться на однаковій відстані від осі обертання.

 

Фізичне збереження і доступ до даних на зовнішньому носієві забезпечується:

1) спеціальним електронним обладнанням, контролером дискових накопичувачів, з стандартним інтерфейсом обміну даними.

2) частиною операційної системи для логічної організації забезпечення управлінням даними .

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

Структура даних — сукупність елементів даних різних типів, об'єднаних у єдиний логічний блок.

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

Поле ідентифікації

Поле даних

Рис. 5. Структура доріжки

Файли об'єднуються в групи — каталоги, що можуть містити підкаталоги утворюючи ієрархічну деревоподібну структуру з одним коренем

Типи файлових систем

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

FAT (File Allocation Table) або FAT16 — файлова система операційної системи Dos. Розділ (volume) FAT займає цілу дискету або розділ жорсткого диску.

VFat, Fat32 — модифіковані версії FAT16, для операційних систем сімейства Windows 9x/ME.

NTFS файлова система для Wіndоws NT, розроблялася як надійна, стійка до апаратних помилок файлова системи.

UFS (Unix File System) — перша файлова система для операційної системи UNIX, всі сучасні версії походять від неї.

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

Sysv — файлові системи System V/386, Coherent і Xenix.

Iso9660 — стандартна файлова система для CD-ROM. Досить популярне розширення стандарту CD-ROM, розроблене Rock Rіdgе'm, для автоматичної підтримки імен файлів нестандартної довжини.

Nfs — мережева файлова система, що забезпечує спільне використання однієї файлової системи кількома комп'ютерами.

Hpfs — файлова система, розроблена для OS/2.

Minix — одна з перших файлових систем, досить обмежена за своїми можливостями (відсутні деякі параметри, довжина імені файлу обмежена 30-ма символами) і доступним об'ємом (максимум 64 Мб на одну файлову систему).