Оболонка операційної системи
Оболонка операційної системи — це програма, яка виступає посередником між користувачем (людиною або іншою програмою) та можливостями або механізмами операційної системи. Завдяки ній користувач може взаємодіяти з ОС, використовуючи різні інструменти та команди. Здебільшого, оболонки операційних систем надають інтерфейс командного рядка або графічний інтерфейс користувача, залежно від ролі комп'ютера та операційної системи. Слово «оболонка» підкреслює позицію цієї програми в зовнішньому шарі операційної системи.[1][2]
Хоча більшість оболонок операційної системи не є прямими інтерфейсами до ядра, вони спілкуються з користувачем через підключені до комп’ютера периферійні пристрої. Слід зауважити, що ці оболонки, хоча і є спеціальними програмами, які використовують API ядра, роблять це так само, як і інші прикладні програми.
Окрім оболонок, що працюють на локальних системах, існують різні способи зробити віддалені системи доступними для локальних користувачів. Ці підходи зазвичай називають віддаленим доступом або віддаленим адмініструванням.
В 1970-80 роках на мейнфреймах могло працювати одночасно багато користувачів. Для роботи їм за допомогою текстового терміналу надавався текстовий інтерфейс користувача, який був підключений до мейнфрейму через послідовну лінію або модем.
Для віддаленого доступу в Unix-подібних системах використовувався протокол telnet, але з 2000-х років його витіснив SSH (англ. Secure Shell — безпечна оболонка)
Концепція віддаленого доступу поширилася з Unix-подібних системи на Microsoft Windows. У Microsoft Windows існує Remote Desktop Protocol (RDP), який можна використовувати для надання віддаленого доступу з графічним інтерфейсом користувача.
В Unix-подібних системах віддалений графічний інтерфейс також використовувався, навіть раніше, завдяки тому що X Window був спроектований як протокол в якому зображення та виконання програм може відбуватись на різних комп'ютераx.
Більшість оболонок операційної системи належать до однієї з двох категорій:
Інші варіанти не такі поширені, такі як Голосовий інтерфейс користувача, що дозволяє користувачам взаємодіяти з системою за допомогою голосових команд, та різні реалізації текстового інтерфейсу користувача, які не є інтерфейсом командного рядка: наприклад, системи текстового меню.
Інтерфейс командного рядка (CLI) – це спеціальна оболонка операційної системи, яка дає змогу користувачеві взаємодіяти з комп’ютером за допомогою текстових команд. Введені з клавіатури символьні команди використовуються для надання інструкцій операційній системі. Наприклад, за допомогою CLI користувач може запускати програми, виконувати операції з файлами та отримувати інформацію про стан системи.
CLI широко використовується в різних операційних системах, таких як UNIX, MS-DOS та інші. Кожна операційна система має свій набір команд і синтаксис для їх використання. Наприклад, в UNIX-подібних системах існують як різноманітні оболонки зі своїми власними можливостями та функціями, так і спеціалізовані.
Окрім взаємодії з операційною системою, CLI дозволяє зберігати та виконувати послідовності команд для автоматизації рутинних операцій - сценарії, скрипти, пакетні файли, в тому числі оболонка надає додаткові можливості такі як цикли та умовні операції. Це дає змогу користувачам автоматизовувати повторювані завдання без необхідності введення команд вручну кожного разу.
Графічний інтерфейс користувача забезпечує зручне керування програмами за допомогою графічних елементів, таких як вікна, меню та кнопки. Він дозволяє виконувати різні операції, такі як відкриття та закриття вікон, переміщення їх по екрану, зміну розміру і перехід між ними
GUI може бути невід'ємним компонентом операційної системи, або функціонувати як окремий компонент.
Багато GUI використовують концепцію "робочого столу", де файли та програми представлені у вигляді віртуальних об'єктів на екрані, що нагадує робочий стіл з паперовими документами. Це дозволяє користувачам зручно взаємодіяти з комп'ютером, користуючись звичайними метафорами.
У Unix-подібних системах інтерфейс часто базується на віконної системи, такі як X Window System або Wayland, що забезпечує керування вікнами, віртуальними робочими столами та іншими функціями. Наприклад, в операційній системі macOS оболонка Quartz Compositor є ключовим компонентом графічного інтерфейсу користувача. Вона відповідає за візуальне представлення вікон, меню, панелей та інших елементів інтерфейсу.
В операційній системі Microsoft Windows графічний інтерфейс користувача представлений оболонкою Windows, яка забезпечує доступ до функцій операційної системи через графічний інтерфейс.
Графічні програми сторонніх виробників які змінюють інтерфейс, а також досвід користування також вважаються оболонками. Подібним чином багато осіб і розробників, незадоволених інтерфейсом Windows Explorer, розробили програмне забезпечення, яке або змінює функціонування та зовнішній вигляд оболонки, або повністю замінює її. WindowBlinds від StarDock є прикладом програми змінює зовнішній вигляд, а LiteStep і Emerge Desktop - що повністю замінює її.
Відносні переваги оболонок на основі CLI та GUI часто обговорюються. Багато користувачів комп’ютерів використовують обидва типи оболонок залежності від задачі, яку потрібно виконати. Оболонки з інтерфейсом командного рядка вимагають від користувача досвіду та обізнаності з командами, та синтаксисом їх викликання, а також розуміння концепцій специфічної скриптової мови (наприклад bash, powershell).
Графічні оболонки розробляються інтуїтивними та легкими в користуванні, і не вимагають таких знань від користувачів-початківців.
Оскільки в операційних системах з графічним інтерфейсом також наявні програми, які працюють в інтерфейсі командного рядка, більшість операційних системи містять також стандартні для такої операційної системи командні оболонки cmd, powershell, bash.