Сучасний світ важко уявити без використання комп’ютерної або мобільної техніки. Вона сьогодні присутній повсюдно. Всі такі пристрої працюють під управлінням операційних систем. Але що являє собою будь-яка ОС, які призначення та функції операційної системи? На жаль, більшість пересічних користувачів чітко на це питання відповісти не можуть. Тому далі пропонується розглянути деякі аспекти, пов’язані і з розумінням структури ОС, і з її функціями.
Операційна система: призначення та основні функції
Якщо кілька вникнути в сам термін «операційна система», навіть людина, що не має абсолютно ніякого відношення до комп’ютерної техніки, відразу зможе визначити, що це таке. Раз операційна система, значить, вона виконує певні операції. Але які?
Основне призначення операційної системи, якщо говорити в двох словах, зводиться до того, що в кінцевому рахунку вона є засобом взаємодії користувача з комп’ютером, апаратної і софтверної частини і програмних компонентів між собою. Іншими словами, тут мова йде про організацію та контроль обчислювальних процесів із залученням тих чи інших компонентів, призначених для виконання конкретних завдань користувача, системних і т. д.).
Порівняти будь-яку ОС можна з певним посередником між всіма компонентами, які здійснюють взаємодію на всіх рівнях виключно через звернення до операційної системи, її модулів та інструментам. Без неї ні встановлене обладнання (не рахуючи деяких периферійних пристроїв), ні програми працювати не будуть. В якості ще одного порівняння можна навести звичайний автомобіль, у якого немає двигуна. Основні компоненти зразок кузова, коліс або коробки передач є, водій виконує роль, а без двигуна їхати машина все одно не хоче. Так і тут.
Типи операційних систем
Залишимо поки що питання, пов’язані з призначенням операційної системи комп’ютера, і розглянемо, які бувають ОС. Для них прийнято кілька базових класифікацій, в залежності від різних об’єднуючих ознак.
Так, за типом користувальницького інтерфейсу і організації обчислювальних процесів дуже часто робиться поділ на системи, створені на основі об’єктно-орієнтованого програмування у вигляді комерційних систем Windows і MacOSX, DOS і UNIX-подібні ОС (Linux, Solaris і т. д.), які, до речі, є безкоштовними, мають відкритий вихідний код і поширюються за ліцензією GNU, що означає можливість їх зміни іншими розробниками програмного забезпечення або ентузіастами програмування, наприклад, з метою модернізації.
Втім, якщо взяти будь-яку модифікацію Linux, призначення операційної системи все одно залишиться тим же, що було описано в загальному порядку.
З іншого боку, всі операційні системи поділяють на чотири категорії: однокористувацькі (одно – і багатозадачні) та аналогічні багатокористувацькі. Для розуміння такої класифікації, мабуть, особливі пояснення не потрібні. Єдине, що варто відзначити, так це багатозадачність в однокористувацьких ОС. До того, що ми спостерігаємо, наприклад, у Windows, вона не має практично ніякого відношення, а зводиться в основному лише до обміну даними між користувачем і машиною з подальшим виведенням результатів на друк.
Операційна система: склад і призначення основних модулів
Тепер давайте розглянемо основні компоненти, які присутні в ОС будь-якого типу. Головними складовими вважаються такі:
- ядро;
- командний процесор;
- драйвера;
- сервісні інструменти.
Якщо говорити про основний функціонал, тут можна виділити такі напрями:
- організація завантаження в оперативну пам’ять і виконання програм будь-якого рівня;
- управління ОЗП на рівні розподілу її між процесами що запускаються, в тому числі і організація роботи віртуальної пам’яті;
- управління доступом до енергозалежним компонентів комп’ютера і периферійних пристроїв;
- робота з мережами і мережевими протоколами;
- забезпечення функціонування користувальницького інтерфейсу.
Іноді в якості додаткових функцій наводяться ще багатозадачність (паралельне або псевдопараллельное виконання декількох завдань), розподіл системних ресурсів між процесами і службами з організацією пріоритетів доступу, забезпечення безперебійного взаємодії між окремими процесами, забезпечення безпеки самої ОС і користувальницьких даних і т. д.
Взаємозв’язок з первинною системою вводу/виводу
Незважаючи на те що сучасні операційні системи вміють багато, тим не менш не можуть обійтися без первинних модулів BIOS (або сучасних UEFI). Чому так?
Та тільки тому, що первинна система вводу/виводу містить базову інформацію про всіх «залізних» компонентах, встановлених на комп’ютері (точніше, підключених до материнської плати), і відразу після подачі живлення ще перед безпосереднім стартом основної операційної системи виконує перевірку їх працездатності, і лише потім передає управління комп’ютером завантажувачу ОС. Всі володарі стаціонарних терміналів знають, що в момент включення комп’ютера лунає звук з системного динаміка. Одиночний сигнал як раз і свідчить про те, що з встановленим обладнанням все гаразд (в іншому випадку сигналів може бути декілька, а їх послідовності і кількість можуть виявити, який саме компонент комп’ютера не працює, працює неправильно, пошкоджений або відсутній). В деякому сенсі BIOS теж можна назвати свого роду операційної системи, призначення якої зараз полягає в тестуванні «заліза» і збереження інформації про нього. Дещо раніше, коли використовувалися ще DOS-системи BIOS містив і інструмент старту завантажувача цих ОС.
Графічний інтерфейс
Перше, що бачить користувач після повного завантаження системи — основний графічний інтерфейс з «Робочим столом», панелями і кнопками. Призначення операційної системи Windows з такою організацією зовнішнього вигляду ОС зводиться до того, щоб користувач міг максимально швидко і просто отримати доступ до потрібних йому функцій системи або встановленими програмами.
У всіх ОЗ, які були розроблені з використанням об’єктно-орієнтованого програмування на основі мови С+/++, основне управління здійснюється з використанням клавіатури, маніпуляторів (миші, джойстики, тачпади, геймпади і т. д.), що самим кардинальним чином відрізняється від безпосереднього введення команд за типом DOS-систем (хоча в тих же ОС Windows будь-якого покоління є схожий інструмент у вигляді командного рядка).
Ядро
Ядро являє собою базовий модуль, відповідальний за організацію і керування файловою системою, а простіше кажучи, забезпечує обмін даними між пристроями різних типів, включаючи і периферію.
Якщо говорити простіше, це інструмент забезпечення взаємодії апаратної частини («заліза») на основі встановлених драйверів з іншими системними або користувацькими додатками.
Командний процесор
Говорячи про призначення операційної системи в загальних рисах, не можна обійти стороною і командний процесор, іноді званий ще інтерпретатором, який або запитує, або виконує власні команди, або і те і інше. Це може бути все що завгодно. Той же висновок різного роду повідомлень, в яких користувачу пропонується вибір якоїсь дії, і є саме просте прояв роботи цього процесора. З іншого боку, користувач сам може ініціювати запит на виконання якоїсь команди, наприклад, у вигляді звичайного запуску встановленої програми.
Драйвери пристроїв
Драйвери, що встановлюються для обладнання будь-якого типу (хоч «залізного», хоч віртуального), виконують одну з найважливіших функцій у системі – забезпечення коректної роботи будь-якого встановленого обладнання (апаратного комплексу). Без них – нікуди.
Якщо розглядати операційні системи Windows, вони тестують присутні компоненти в процесі власної установки і інсталюють необхідне програмне забезпечення (але тільки зі своєї бази драйверів). Але такий підхід досить часто виявляється неефективним, оскільки в комп’ютерній системі можуть бути нестандартні пристрою чи обладнання, виробник якого у корпорації Microsoft підтримки не має. Тим не менше самі системи, незважаючи на неможливість установки драйвера, все одно визначають такі пристрої за спеціальними ідентифікаторами VEN (Vendor – виробник) і DEV (Device – пристрій). Якщо знати їх, знайти в Інтернеті потрібний драйвер, який буде максимально відповідати встановленим компоненту, не визначеним системою, труднощів не складе.
Сервісні модулі
Як вже говорилося, призначення операційної системи полягає ще й в тому, щоб виробляти обслуговування і її самої, і використовуються нею компонентів комп’ютера.
Так, в якості найпростішого прикладу можна привести інструменти перевірки, очищення та дефрагментації жорсткого диска, тестування мережевих підключень, скажімо, на основі застосування команди ping, проведення певних операцій з файлами та папками (архівування, стиснення і т. д.).
Довідкова система
Нарешті, кілька слів про використання довідки. Ця система призначена для швидкого отримання відповіді на питання, що цікавить користувача конкретне питання. Якщо раніше доступ можна було отримати тільки до всього довідкового каталогу (F1), з часом у тих же системах Windows з’явилася можливість пошуку потрібного розділу з конкретизацією питання. Крім того, можна скористатися системою підказок і рекомендацій, що може істотно полегшити роботу з якимось додатком або системним інструментом.
Короткий підсумок
Якщо підвести підсумок і зробити деякі базові висновки, можна зазначити, що призначення програми «Операційна система» (а це, за великим рахунком, саме програма, ну або, якщо хочете, набір програм) зводиться до забезпечення спрощеного взаємодії користувача з комп’ютером (для чого, власне, всі ОС і розроблялися) за рахунок приховування виконання фонових процесів і здійснення зв’язків між усіма компонентами програмно-апаратного комплексу на будь-якому рівні.