Назад до Інформатика
СереднійІнформатика

Операційні системи

Ядро й системні виклики, планувальник і багатозадачність, віртуальна памʼять, файлові системи, драйвери, завантаження компʼютера та порівняння Windows, macOS, Linux і Android.

Що таке операційна система?

Операційна система (ОС) – це головна програма компʼютера, яка запускається першою і керує всім іншим. Вона стоїть посередині між «залізом» і людиною: ви кажете «відкрий фото», а ОС уже сама знаходить файл на диску, виділяє памʼять, дає команду відеокарті намалювати зображення. 🎯 Без ОС кожна програма мусила б сама вміти спілкуватися з кожною моделлю диска, принтера й відеокарти у світі. Операційна система бере це на себе й дає програмам єдиний зрозумілий набір команд. Саме тому одна й та сама гра запускається на тисячах різних компʼютерів. 💻 ОС є всюди, не лише в ПК: у смартфоні (Android, iOS), у телевізорі, банкоматі, розумному годиннику й навіть у бортовому компʼютері автомобіля.

Будова операційної системи

Будова операційної системи

Програми не торкаються «заліза» напряму: усі запити проходять через ядро операційної системи

Головні завдання операційної системи

Що саме робить ОС, поки ви просто працюєте за компʼютером:

  • ⚙️ Керує процесами – запускає, зупиняє програми й вирішує, яка з них зараз працює на процесорі.
  • 🧠 Розподіляє памʼять – видає кожній програмі свою частину RAM і стежить, щоб вони не заважали одна одній.
  • 📁 Керує файлами – організовує дані в папки, знаходить, зберігає й видаляє їх на диску.
  • 🔌 Спілкується з пристроями – через драйвери керує клавіатурою, принтером, відеокартою, мережею.
  • 🔒 Забезпечує безпеку – розділяє користувачів, перевіряє права доступу, ізолює програми одна від одної.
  • 🖱️ Дає інтерфейс – робочий стіл, вікна й меню (або командний рядок), через які людина керує машиною.

Ядро Системи (The Kernel)

Уявіть, що комп'ютер – це величезний симфонічний оркестр (материнська плата, процесор, відеокарта, оперативна пам'ять). А Ядро Операційної системи – це ДИРИГЕНТ. Mozilla Firefox або гра не можуть просто взяти і щось намалювати на моніторі! Вони обов'язково "просять дозволу" (системний виклик) у диригента, і вже він віддає команду відеокарті. Ядро повністю відділене від звичайних програм в цілях безпеки.

Режим ядра і режим користувача

Процесор уміє працювати у двох режимах, і це головний захист усієї системи. 👤 Режим користувача (user mode) – тут живуть звичайні програми: браузер, ігри, редактори. Їм заборонено напряму чіпати «залізо» й памʼять інших програм. Якщо така програма зламається, впаде тільки вона. 👑 Режим ядра (kernel mode) – тут працює ядро, і йому дозволено все. Саме тому помилка в ядрі валить увесь компʼютер, а не одну вкладку браузера. 🛡️ Завдяки цьому поділу зламана або шкідлива програма не може стерти чужі дані чи «спалити» відеокарту: щоб дістатися до обладнання, їй доведеться ввічливо попросити ядро.

Системний виклик: як програма просить про послугу

Приклад

💾 Ви натискаєте «Зберегти» в текстовому редакторі. Ось що відбувається насправді: 1️⃣ Редактор НЕ пише на диск сам. Він викликає системну функцію, наприклад write(). 2️⃣ Процесор перемикається з режиму користувача в режим ядра. 3️⃣ Ядро перевіряє права: «Чи має цей користувач дозвіл писати в цю папку?» 4️⃣ Файлова система вираховує, у які саме блоки диска покласти дані. 5️⃣ Драйвер диска віддає команду накопичувачу SSD. 6️⃣ Ядро повертає редактору відповідь «готово», процесор вертається в режим користувача. ⏱️ Усе це триває частки мілісекунди й повторюється тисячі разів на секунду – під час кожного кліку, натискання клавіші й завантаження сторінки.

Які бувають ядра

Архітектури ядер відрізняються тим, скільки коду працює з правами «бога»:

  • 🧱 Монолітне ядро – усі служби (файли, мережа, драйвери) в одному великому блоці. Швидке, але помилка драйвера валить систему. Приклад: Linux.
  • 🧩 Мікроядро – у режимі ядра лишається мінімум, решта працює як звичайні програми. Дуже надійне, але повільніше через постійний обмін повідомленнями. Приклад: QNX, MINIX.
  • ⚖️ Гібридне ядро – компроміс: основне в ядрі, частина служб окремо. Приклади: Windows NT, macOS (XNU).
  • 💡 Саме через надійність мікроядро QNX обирають для автомобілів і медичного обладнання, де збій неприпустимий.

Ілюзія багатозадачності

💡

Ваш комп'ютер може мати 8 ядер в процесорі, проте у вас відкрито одночасно 100 вкладок в браузері, грає музика в Spotify і качається торрент. Як це працює? Це ІЛЮЗІЯ! Операційна система (її модуль Планувальник) просто миттєво перемикає процесор між завданнями. Вона дала процесору завдання: "Попрацюй над музикою 1 мілісекунду, тепер над грою 1 мілісекунду, тепер намалюй мишку". Це відбувається так швидко, що нам здається ніби все працює одночасно!

Як планувальник нарізає час процесора

Як планувальник нарізає час процесора

Кожна програма отримує крихітний «квант часу» – перемикання відбувається тисячі разів на секунду

Як планувальник вирішує, кого пустити на процесор

Черга до процесора будується не навмання. Існує кілька класичних стратегій:

  • 🥇 FCFS (перший прийшов – перший обслужений) – найпростіший, але одне довге завдання блокує всіх.
  • 🔄 Round Robin (карусель) – кожному по рівному кванту часу по черзі. Саме так досягається «чуйність» системи.
  • ⭐ За пріоритетами – важливіші завдання (звук, курсор, системні служби) пропускають уперед.
  • 📊 Багаторівневі черги – ОС стежить за поведінкою програми: якщо вона довго рахує, її пріоритет знижують, щоб не «заморозити» інтерфейс.
  • ⚠️ Проблема «голодування» – завдання з низьким пріоритетом може не дочекатися черги, тому ОС поступово підвищує пріоритет тим, хто довго чекає.

Процеси і потоки

Процес – це запущена програма разом із власною ділянкою памʼяті. Кожен процес ізольований: браузер не бачить памʼять текстового редактора, і навпаки. 🧵 Потік (thread) – це «гілка виконання» всередині процесу. Потоки одного процесу мають спільну памʼять, тому легко обмінюються даними, але можуть і заважати одне одному. 🌐 Приклад: браузер – це один застосунок, але кожна вкладка часто запускається окремим процесом. Тому коли одна сторінка «падає», решта вкладок живі. А всередині вкладки працюють потоки: один малює сторінку, другий завантажує картинки, третій програє відео.

Віртуальна памʼять: як ОС «обманює» програми

Кожна програма вважає, що весь обсяг памʼяті належить тільки їй і починається з адреси нуль. Насправді це вигадка, яку створює операційна система разом із процесором. 🗺️ ОС веде таблицю відповідності: віртуальна адреса програми → реальна комірка в RAM. Памʼять розбита на невеликі шматки – сторінки (зазвичай по 4 КБ), які можуть лежати де завгодно у фізичній памʼяті. ✅ Що це дає: програми не можуть залізти в чужу памʼять (безпека), памʼять не дробиться на непридатні шматочки, а якщо RAM бракує, рідковживані сторінки тимчасово переносяться на диск – і починає працювати файл підкачки.

Синій екран смерті (BSoD) та Файл Підкачки

Приклад

Що робити, якщо 16 ГБ оперативної пам'яті у вашому комп'ютері ЗАВЕРШАТЬСЯ? Почне працювати "Файл Підкачки" (Swap): ОС бере частину вашого жорсткого диска (HDD/SSD) і бреше самій собі, що це оперативна пам'ять. Комп'ютер починає сильно "тормозити" (диск працює дуже повільно), проте не вимикається. Але якщо стається КРИТИЧНА помилка в самому ЯДРІ (через вірус, перегрів відеокарти чи кривий драйвер) – система спеціально виводить СИНІЙ ЕКРАН і вимикається (panic), щоб урятувати залізо від згорання і дані від повного стирання.

Файлові системи: як ОС наводить лад на диску

Диск сам по собі – це просто мільярди комірок. Перетворює їх на звичні папки й файли саме файлова система:

  • 🪟 NTFS – стандарт для Windows. Права доступу, журналювання, шифрування, великі файли.
  • 🍎 APFS – сучасна система macOS та iOS. Заточена під SSD, миттєві знімки стану диска.
  • 🐧 ext4 – основна для Linux. Надійна, перевірена роками, стійка до збоїв живлення.
  • 💾 FAT32 – стара й універсальна: читають усі пристрої, але не вміє файли більші за 4 ГБ.
  • 🔌 exFAT – саме її обирають для флешок і карт памʼяті: без обмеження на розмір файлу й працює і у Windows, і в macOS.
  • 📓 Журналювання – система спершу записує «що саме збирається зробити». Тому після раптового вимкнення світла диск не перетворюється на кашу.

Драйвери: перекладачі між ОС і пристроями

У світі існують тисячі моделей принтерів, і кожна «розмовляє» своєю мовою. Операційна система не може знати їх усі, тому виробник пише драйвер – невелику програму-перекладач. 🗣️ ОС каже загальну команду «надрукуй сторінку», а драйвер перетворює її на конкретні сигнали саме для цієї моделі. Тому новий пристрій іноді просить «встановити драйвер»: система отримує словник для спілкування з ним. ⚠️ Драйвери зазвичай працюють у режимі ядра, а отже мають максимальні права. Саме тому кривий або підроблений драйвер – одна з найчастіших причин синього екрана й ласа ціль для вірусів. Завантажуйте драйвери лише з сайту виробника.

Як компʼютер завантажується

Як компʼютер завантажується

Шлях від натискання кнопки живлення до робочого столу

Завантаження системи крок за кроком

Приклад

⚡ Ви натиснули кнопку живлення. Далі за лічені секунди відбувається таке: 1️⃣ POST – мікропрограма UEFI (раніше BIOS) перевіряє, чи на місці процесор, памʼять і диск. Якщо ні – компʼютер пищить або показує помилку. 2️⃣ Пошук системи – UEFI шукає на дисках завантажувач (bootloader). 3️⃣ Завантажувач (Windows Boot Manager, GRUB) знаходить ядро ОС і завантажує його в оперативну памʼять. 4️⃣ Старт ядра – ядро бере керування компʼютером на себе й підіймає драйвери. 5️⃣ Системні служби – запускається головний процес (у Linux це systemd), який стартує мережу, звук, графіку. 6️⃣ Вхід – зʼявляється екран входу, після пароля завантажується ваш робочий стіл. 💡 Чому SSD так прискорює вмикання? Кроки 3-5 – це читання сотень файлів із диска. На SSD вони летять у рази швидше, ніж на HDD.

Сімейства операційних систем

Найпоширеніші ОС і чим вони відрізняються:

  • 🪟 Windows (Microsoft, з 1985) – найпопулярніша для ПК. Максимум сумісності з іграми та навчальними програмами.
  • 🍎 macOS (Apple) – лише для компʼютерів Apple, побудована на Unix. Популярна серед дизайнерів і відеомонтажерів.
  • 🐧 Linux (з 1991) – відкритий код, безкоштовна, безліч варіантів (Ubuntu, Fedora, Mint). Керує більшістю вебсерверів світу.
  • 🤖 Android (Google) – найпоширеніша ОС на планеті, працює на ядрі Linux. Смартфони, планшети, телевізори.
  • 📱 iOS / iPadOS (Apple) – для iPhone та iPad, спільне коріння з macOS.
  • 🌐 ChromeOS (Google) – легка система для Chromebook, майже все працює в браузері. Часто використовується в школах.

💡 Історія: від перфокарт до Linux

💡

🕰️ Перші компʼютери 1950-х узагалі не мали ОС: програму подавали на перфокартах, і машина рахувала одну задачу за раз. Щоб перейти до наступної, оператор фізично міняв стос карток. 🏛️ 1969 рік, лабораторія Bell Labs: Кен Томпсон і Денніс Рітчі створюють Unix. Її ідеї – файли, права доступу, маленькі програми, що поєднуються між собою, – лягли в основу майже всіх сучасних систем. 🐧 1991 рік: 21-річний фінський студент Лінус Торвальдс пише власне ядро як хобі й публікує його у відкритому доступі. Він скромно назвав це «просто хобі, нічого серйозного». Сьогодні Linux працює у ваших смартфонах, у Netflix, у NASA і в кожному з 500 найпотужніших суперкомпʼютерів світу.

Цікаві факти про операційні системи

Те, що не завжди розповідають на уроках:

  • 🏆 Усі 500 найпотужніших суперкомпʼютерів світу працюють на Linux – без жодного винятку.
  • 🤖 Android – це теж Linux: у нього те саме ядро, просто з іншим «обличчям».
  • 🍏 macOS офіційно сертифікована як справжня UNIX-система – як і деякі серверні ОС.
  • 🐧 Талісман Linux – пінгвін на імʼя Тукс (Tux). Торвальдса колись вкусив пінгвін у зоопарку.
  • 🚀 Космічні апарати й марсоходи використовують особливі ОС реального часу: там збій коштує мільярди.
  • 📟 Ваша пральна машина, ліфт і банкомат теж мають операційну систему – просто дуже маленьку.

Операційні системи реального часу

Для звичайного компʼютера нормально, якщо програма відповіла на 200 мілісекунд пізніше – ви цього навіть не помітите. Але є системи, де запізнення означає катастрофу. ⏱️ ОС реального часу (RTOS) гарантують не «швидко», а точно в строк. Подушка безпеки має спрацювати рівно за 20 мілісекунд після удару – ні раніше, ні пізніше. 🚗 Де вони працюють: системи ABS та подушки безпеки в автомобілях, кардіостимулятори, промислові роботи, літаки, супутники. Найвідоміші – VxWorks (нею керувалися марсоходи NASA) та FreeRTOS для мікроконтролерів.

Віртуалізація і контейнери

Сучасна ОС уміє запускати всередині себе інші операційні системи. 🖥️ Віртуальна машина (VM) – програма (VirtualBox, VMware, Hyper-V) створює «компʼютер усередині компʼютера» з власним віртуальним процесором і диском. Так можна запустити Linux у вікні Windows. Для школи це знахідка: учні можуть безпечно експериментувати, а зламану систему просто видаляють і створюють заново. 📦 Контейнери (Docker) – легший варіант: вони не тягнуть за собою цілу ОС, а користуються ядром основної системи, ізолюючи лише саму програму з її налаштуваннями. Запускаються за секунди, тому на них тримається більшість сучасних інтернет-сервісів.

Як операційна система захищає ваші дані

Безпека – одна з головних функцій сучасної ОС:

  • 👥 Облікові записи й права – адміністратор може все, звичайний користувач не зіпсує системні файли.
  • 🛡️ Запит підтвердження (UAC у Windows) – важливі зміни потребують окремого дозволу, тому вірус не встановиться «тихо».
  • 📦 Пісочниця (sandbox) – застосунок на смартфоні бачить лише свої файли й окремо просить доступ до камери чи контактів.
  • 🔐 Шифрування диска (BitLocker, FileVault) – якщо ноутбук украдуть, без пароля дані прочитати не вийде.
  • 🔄 Оновлення – закривають знайдені вразливості. Саме тому «оновити систему» це не примха, а базовий захист.

Практика: подивіться на ОС власними очима

Приклад

🔍 Усе, про що йшлося вище, можна побачити просто зараз: WINDOWS Натисніть Ctrl + Shift + Esc – відкриється Диспетчер завдань. Вкладка «Процеси» показує всі запущені програми, скільки кожна зʼїдає процесора й памʼяті. macOS Відкрийте «Моніторинг системи» (Activity Monitor) через пошук Spotlight. LINUX У терміналі введіть команду top (або htop, якщо встановлено). 📊 Спробуйте дослідити: • Скільки процесів працює, коли ви «нічого не робите»? Зазвичай їх понад сотню – це системні служби. • Відкрийте кілька вкладок браузера й подивіться, як зростає споживання памʼяті. • Знайдіть процес, який займає найбільше процесора. ⚠️ Дивіться, але нічого не завершуйте примусово без потреби – можна закрити важливу системну службу.

📌 Головне з теми

💡

Операційна система – це посередник між людиною, програмами й «залізом». Її серце – ядро, яке працює в захищеному режимі й має повний доступ до обладнання, тоді як звичайні програми змушені просити в нього дозволу через системні виклики. Запамʼятайте три ключові механізми: планувальник створює ілюзію багатозадачності, швидко перемикаючи процесор між завданнями; віртуальна памʼять дає кожній програмі власний ізольований простір; драйвери перекладають команди ОС на мову конкретних пристроїв. І головне: Windows, macOS, Linux, Android відрізняються зовні, але всередині розвʼязують ті самі задачі однаковими способами. Зрозумівши принципи на одній системі, ви легко розберетеся в будь-якій іншій.