Тема 1: Вступ. Мета та задачі курсу.

 

System Software – означає програми та комплекси програм, які є спільними для всіх, хто використовує технічні засоби комп’ютера і які застосовуються, як для автоматизації розробки (створення) нових програм, так і для організації виконання існуючих програм. З цих позицій системне програмне забезпечення (СПЗ ) може бути розділене на такі групи:

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

2. Системи програмування.

3. Утиліти.

 

 

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

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

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

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

Таким чином, типова структура СПЗ має такий вигляд (Рис. __)

 

 

Основними функціями ОС є:

1. Сприймання від користувача (або від оператора системи) завдань або команд у вигляді директив (або команд) оператора, а також у вигляді вказівок від маніпуляторів (наприклад, миші) та їх обробка.

2. Завантаження, запуск, призупинення, зупинка програм.

Керування файловими системами та системами управління базами даних.

3. Забезпечення режиму мультипрограмування, тобто виконання двох та більше програм на одному процесорі.

4. Забезпечення функцій з організації та керування усіма операціями вводу/виводу.

5. Забезпечення виконання обмежень на час відповіді в режимі реального часу (для ОС відповідного типу).

6. Розподіл пам’яті (як основної, так і зовнішньої), та організація віртуальної пам’яті.

7. Планування та диспетчеризація задач у відповідності із заданими стратегією та дисципліною обслуговування.

8. Організація механізмів обміну повідомленнями і даними між програмами, що виконуються, а також захист одної програми від впливу інших.

9. Забезпечення роботи систем програмування.

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

Взаємодія користувача з комп’ютерною системою відбувається через інтерфейс користувача, який підтримується ОС. Надалі приймається, що функції ОС реалізуються тільки програмним способом. Але деякі з них можуть бути представлені програмно-апаратними засобами (firmware) у вигляді постійних запам’ятовуючих пристроїв (BIOS).

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

Наприклад: користування вводом/виводом.

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