Коли ви включаєте свій комп’ютер, то першим ділом чекаєте, коли в оперативну пам’ять завантажиться операційна система. І тільки потім звертаєтеся до необхідних вам програм. Більша частина всього, що користувач робить зі своїм комп’ютером, відбувається за допомогою операційної системи. Її слід розглядати в якості керуючого центру комп’ютера. Велика частина сучасних персональних комп’ютерів працює під управлінням операційних систем Microsoft Windows. Mac поставляються з вже встановленою системою OS X, яка до недавнього часу називалася Mac OS X. Багато корпоративних сервери управляються операційними системами Linux і UNIX.

У наші дні операційні системи розташувалися не лише в комп’ютерах, але і в багатьох інших електронних пристроях. І сучасні мобільні телефони та точки бездротового доступу теж працюють під управлінням операційних систем, хоча і дещо інших, ніж комп’ютерні. Що й казати: сучасний телефон могутніше настільного комп’ютера початку століття.

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

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

Далеко не кожен комп’ютер володіє операційною системою. Наприклад, комп’ютер, керуючий мікрохвильовою піччю на вашій кухні, операційної системи позбавлений. Справа в тому, що цього комп’ютера доводиться мати справу лише з одним набором завдань, що визначаються установками часу, температури і режими роботи. І, можливо, кількома встановленими режимами. & Laquo; Гнучкості розуму & raquo; від цього комп’ютера не потрібно і операційна система тільки збільшила б витрати на розробку і виробництво цього кухонного пристрою. Комп’ютера мікрохвильовки для всіх його нехитрих завдань досить усього лише однієї програми, реалізованої на апаратному рівні.

Але існують і інші пристрої, які операційна система наділяє кількома важливими здібностями:

  • Дозволяє виконувати різні завдання
  • Забезпечує взаємодію користувача з пристроєм на більш складному рівні
  • Підтримує в порядку зміни, що вносяться користувачем

Операційними системами володіють всі настільні комп’ютери. Найбільш поширені операційні системи сімейства Windows, розроблені корпорацією Microsoft. Apple встановлювати на свої комп’ютери власну операційну систему, про яку йшлося вище. Крім того, існує величезна сімейство UNIX-систем. Історія їх розробки сповнена видатними особистостями, інноваційними корпораціями та прикладами співпраці в ім’я досягнення спільної мети. На світі існують сотні різних операційних систем, орієнтованих на виконання вузькоспеціальних завдань. У їх числі операційні системи для великих ЕОМ (мейнфреймів), роботів, промислового устаткування і систем реального часу.

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

Для користувача настільного комп’ютера це означає можливість ставити оновлення безпеки, системні заплатки, додаткові програми і навіть міняти операційну систему. А комп’ютер при цьому залишається тим самим. Іншими словами, ви можете поміняти поведінку свого комп’ютера, нічого не змінюючи в його апаратної складової. Це ж стосується і сучасних мобільних телефонів. Незалежно від того, на якому пристрої встановлена ​​операційна система, вона бере на себе контроль над кожною виконуваною нею завданням і управління його системними ресурсами.

Функції операційної системи

Якщо сильно спростити опис виконуваних операційною системою завдань, то можна виділити дві основні:

  1. Вона управляє апаратними та програмними системними ресурсами. Якщо говорити про типовий настільному комп’ютері, то до цих ресурсів відносяться в тому числі: процесор, пам’ять, дисковий простір. Якщо говорити про мобільний телефон, то сюди ж додаються клавіатура (або сенсорний екран), адресна книга, система набору номерів, батарея і мережеве з’єднання
  2. Вона забезпечує стабільне і послідовне взаємодія додатків з апаратним забезпеченням. Додаток може бути незнайоме з детальними характеристиками апаратної частини

Перше завдання, управління апаратними та програмними ресурсами, вкрай важлива. Справа в тому, що різні програми і методи введення даних змагаються за увагу центрального процесора (ЦП, ЦП, CPU), про принципи роботи якого ми вже писали. Їм необхідна пам’ять, простір накопичувача, а також смуга введення і виведення. Операційна система відіграє роль хорошого наставника, влаштовуючи все так, щоб кожен додаток отримало необхідні йому ресурси, і при цьому не вступило в протиріччя з іншими додатками. Операційна система розподіляє обмежені ресурси комп’ютера таким чином, щоб результат для всіх користувачів і всіх додатків вийшов найкращим. Зрозуміло, з можливих в даній конфігурації. Комп’ютер має цілком певною продуктивністю процесора і обсягом пам’яті, нарощування якої & mdash; як нам уже відомо & mdash; не завжди веде до зростання продуктивності машини. Операційній системі належить найбільш вигідним чином розподіляти ці та інші ресурси.

Друге завдання, забезпечення взаємодії програмної та апаратної частини, знаходить особливу важливість з урахуванням того факту, що сучасні комп’ютери відкриті для внесення змін до їх конфігурацію. Засоби інтерфейсу прикладних програм (application program interface, API) дозволяють розробнику написати програму на одному комп’ютері і при цьому майже не сумніватися в тому, що вона буде працювати і на іншому комп’ютері такого ж типу. Навіть у тому випадку, якщо обсяг пам’яті або ємність накопичувача на двох машинах будуть відрізнятися один від одного.

Операційна система влаштовує все так, щоб додаток продовжувало запускатися на даному комп’ютері навіть після того, як буде модифікована його апаратна частина або вироблені програмні оновлення. Справа в тому, що саме операційна система, а не кожне конкретне застосування, стежить за апаратним забезпеченням і розподілом його ресурсів. Перед розробниками операційних систем стоїть непросте завдання: зробити систему сумісною з обладнанням від тисяч підприємств, що випускають комп’ютерні компоненти та периферійні пристрої. Сучасна операційна система здатна & laquo; дізнатися & raquo; тисячі різних принтерів, жорстких дисків і спеціальних периферійних пристроїв. Більш того, в кожному конкретному випадку це обладнання буде поєднуватися іншим чином.

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

Всі величезна безліч існуючих операційних систем можна розділити на чотири основні типи:

  1. Операційні системи реального часу (Real-time operating system, RTOS). Операційні системи реального часу призначені для управління машинним обладнанням, науковими інструментами та промисловими системами. Зазвичай користувальницький інтерфейс таких систем не балує дизайнерськими вишукуваннями, а утиліти, орієнтовані на кінцевого користувача, відсутні. Це готова до використання & laquo; закрита коробка & raquo ;. Найважливішим завданням такого типу операційної системи є стежити за тим, щоб певна операція виконувалася в певний відрізок часу. І ці відрізки були рівними. У складних машинах не можна допустити, щоб їх елементи рухалися швидше ніж потрібно, оскільки система розпорядженні & laquo; зайвими & raquo; ресурсами. Або, навпаки, не рухалися зовсім з причини зайнятості системи
  2. Однокористувацькі однозадачні операційні системи (Single-user, single task). Як випливає з їхньої назви, ці операційні системи орієнтовані на виконання одним користувачем одного завдання в один період часу. Яскравим прикладом системи такого типу може служити Palm OS для наладонників Palm. Ці пристрої користувалися певною популярністю до того як почалося масове поширення смартфонів
  3. Однокористувацькі багатозадачні операційні системи (Single-user, multi-tasking). Системи цього типу управляють більшістю сучасних настільних і портативних комп’ютерів. І Microsoft Windows, і Apple OS X відносяться саме до цього типу. Наприклад, користувач Windows може одночасно писати замітку в текстовому редакторі і завантажувати файл з Інтернету. У цей же самий час принтер може друкувати, а поштовий клієнт приймати електронну кореспонденцію
  4. Розраховані на багато операційні системи (Multi-user). Розраховані на багато операційні системи дозволяють декільком користувачам одночасно отримувати доступ до ресурсів пристрою. Операційній системі доводиться утримувати баланс між тими вимогами, які висувають різні користувачі. При цьому операційній системі доводиться стежити за тим, щоб у кожної з працюючих програм було достатньо ресурсів, і завдання, яке вирішується одним з користувачів, не заважала іншим користувачам. В якості яскравих прикладів багатокористувацьких систем можна навести Unix, VMS та операційні системи для великих ЕОМ, подібні MVS

Важливо внести ясність у деякі тонкощі, які можуть утруднити визначення типу операційної системи. Існують багатокористувацькі операційні системи та системи, що підтримують мережеві з’єднання. І це різні операційні системи. Наприклад, Windows 2000 і Novell Netware підтримували сотні і навіть тисячі мережевих з’єднань. При цьому їх не можна вважати істинно многопользовательскими. Єдиним справжнім користувачем Windows 2000 і Netware є системний адміністратор. Мережева підтримка і всі видалені акаунти користувачів включені в загальний план операційної системи, програмно визначається її адміністратором.

Комп’ютерні операційні системи

Коли ви включаєте живлення комп’ютера, перший запускає програму стає набір інструкцій, що міститься в постійній пам’яті комп’ютера (ПЗУ, ROM). Цей код тестує системне апаратне забезпечення і переконується в тому, що все працює коректно. Цей процес називається самотестуванням при запуску (POST, power-on self test). У його ході здійснюється перевірка процесора, пам’яті і базової системи введення-виведення (БСВВ, BIOS) на помилки. Результати тестування зберігаються в спеціальній області пам’яті. Якщо самотестування завершилося успішно, запускається розміщене в постійній пам’яті програмне забезпечення. Воно відоме під ім’ям BIOS. Це програмне забезпечення починає активацію жорстких дисків комп’ютера. У більшості сучасних комп’ютерів при активації жорсткого диска знаходиться перший фрагмент операційної системи: початковий завантажувач (bootstrap loader).

Початковий завантажувач є маленькою програмою, у якої всього одна функція: завантажити в пам’ять операційну систему. Це дозволить почати роботу. У загальному випадку, завантажувач запускає невеликі програми-драйвери, які взаємодіють з різними апаратними підсистемами і контролюють їх. Все це розташовується в тій же пам’яті, яка містить саму операційну систему, призначену для користувача інформацію і додатки. У рух наводиться структура даних, що містить безліч сигналів, індикаторів і синхронізацій, що забезпечують взаємодію в межах і між підсистемами і додатками комп’ютера. Потім контроль над комп’ютером переходить до операційної системи.

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

Далі буде & hellip;