Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

spz / lect / lekc1_1_SSW

.pdf
Скачиваний:
17
Добавлен:
23.02.2016
Размер:
403.82 Кб
Скачать

Системне програмне забезпечення.

І.Яковлєва

1

Структура системного програмного забезпечення

1.Структура СПЗ.

2.Місце ОС в СПЗ.

3.Поняття операційного середовища.

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

5.Системи керування файлами.

6.Інтерфейсні оболонки для взаємодії користувача з ОС і програмні середовища.

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

8.Утиліти.

9.Основні функції ОС.

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

Програма - це запис алгоритму розв'язання задачі у вигляді послідовності команд або операторів мовою, яку розуміє комп'ютер. Кінцевою метою любої комп'ютерної програми є керування апаратними засобами.

Для нормального розв'язання задач на комп'ютері потрібно, щоб програма була налагоджена, не потребувала дороблень і мала відповідну документацію. Тому стосовно роботи на комп'ютері часто використовують термін програмне забезпечення (software).

В англомовній технічній літературі термін System Software (системне

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

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

2.Системи керування файлами.

3.Інтерфейсні оболонки для взаємодії користувача з ОС і програмні середовища.

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

5.Утиліти.

Системне програмне забезпечення.

І.Яковлєва

2

Розглянемо коротенько ці групи системних програм.

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

Рис.1. Узагальнена структура програмного забезпечення обчислювальної системи

Основними функціями, що виконує ОС, є наступні:

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

2.прийом і виконання програмних запитів на запуск, припинення, зупинку інших програм;

3.завантаження в оперативну пам'ять підлягаючих виконанню програм;

Системне програмне забезпечення.

І.Яковлєва

3

4.ініціація програми (передача їй керування, у результаті чого процесор виконує програму);

5.ідентифікація всіх програм і даних;

6.забезпечення роботи систем керувань файлами (СКФ) і/чи систем керування базами даних (СКБД), що дозволяє різко збільшити ефективність усього програмного забезпечення;

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

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

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

10.розподіл пам'яті, а в більшості сучасних систем і організація віртуальної пам'яті;

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

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

13.захист однієї програми від впливу іншої; забезпечення схоронності даних;

14.надання послуг на випадок часткового збою системи;

15.забезпечення роботи систем програмування, за допомогою яких користувачі готують свої програми.

2. Призначення системи керування файлами — організація більш зручного доступу до даних, організованих як файли. Саме завдяки системі керування файлами замість низькорівневого доступу до даних із указівкою конкретних фізичних адрес потрібного нам запису використовується логічний доступ із вказівкою імені файлу і запису в ньому. Як правило, сучасні ОС мають відповідні системи керування файлами. Однак виділення цього виду системного програмного забезпечення в окрему категорію представляється доцільним, оскільки ряд ОС дозволяє працювати з декількома файловими системами (або з однією з декількох, або відразу з декількома одночасно). У цьому випадку говорять про монтируємі файлові системи (додаткову систему керування файлами можна установити), і в цьому змісті вони самостійні. Більш того, можна назвати приклади найпростіших ОС, що можуть працювати і без файлових систем, а виходить, їм необов'язково мати систему керування файлами, або вони можуть працювати з однією з обраних файлових систем. Треба, однак, розуміти, що будь-яка система керування файлами не існує сама по собі - вона розроблена для роботи в конкретній ОС і з конкретною файловою системою. Можна сказати, що

Системне програмне забезпечення.

І.Яковлєва

4

усім відома файлова система FAT (file allocation table) має багато реалізацій як система керування файлами, наприклад FAT-16 для самої

MS-DOS, super-FAT для OS/2, FAT для Wlndows NT і т.д. Іншими словами,

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

Для зручності взаємодії з ОС можуть використовуватися додаткові інтерфейсні оболонки. Їхнє основне призначення або розширити можливості по керуванню ОС, або змінити убудовані в систему можливості. Як класичні приклади інтерфейсных оболонок і відповідних операційних середовищ виконання програм можна назвати різні варіанти графічного інтерфейсу X Window у системах сімейства UNIX (наприклад, ДО Desktop Environment у Linux), PM Shell чи Object Desktop у OS/2 із графічним інтерфейсом

Presentation Manager; нарешті, можна вказати різноманітні варіанти інтерфейсів для сімейства ОС Windows компанії Microsoft, що заміняють Explorer і можуть нагадувати або UNIX з його графічним інтерфейсом, або OS/2, або MAC OS. Слід зазначити, що про сімейство ОС компанії Microsoft із загальним інтерфейсом, реалізованим програмними модулями з назвою Explorer (у файлі system.ini, що знаходиться в каталозі Windows, мається рядок SHELL=EXPLORER.EXE), все ж можна сказати, що замінною в цих системах є тільки інтерфейсная оболонка, у той час як саме операційне середовище залишається незмінним; вона інтегрована в ОС. Іншими словами, операційне середовище визначається програмними інтерфейсами, тобто API (application program Interface). Інтерфейс прикладного програмування (API) містить у собі керування процесами, пам'яттю і введенням/виведенням.

РЯД операційних систем можуть організовувати виконання програм, створених для інших ОС. Наприклад, у OS/2 можна виконувати як програми, створені для самої OS/2, так і програми, призначені для виконанні в середовищі MS-DOS і Windows 3.x. Відповідна операційне середовище організується в операційній системі в рамках окремої віртуальної машини. Аналогічно, у системі Linux можна створити умови для виконання деяких програм, написаних для Windows 95/98. Визначеними можливостями виконання програм, створених для іншого операційного середовища, володіє і Windows NT. Ця система дозволяє виконувати деякі програми, створені для MS-DOS, OS/2 1.x, Windows 3.x. Правда, у своєму останнім сімействі ОС Windows XP розроблювачі вирішили відмовитися від можливості виконання DOS-програм.

Нарешті, до цього класу системного програмного забезпечення варто віднести і емулятори, що дозволяють змоделювати в одній операційній системі яку-небудь іншу машину або операційну систему. Так, відома система емуляції WМWАRЕ, що дозволяє запустити в середовищі Linux будьяку іншу ОС, наприклад Windows. Можна, навпаки, створити емулятор,

Системне програмне забезпечення.

І.Яковлєва

5

що працює в середовищі Windows, що дозволить змоделювати комп’ютер, що працює під керуванням будь-якої ОС, у тому числі і під Linux.

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

3.Система програмування на мал. 1 представлена наперед усе такими компонентами, як транслятор з відповідної мови, бібліотеки підпрограм, редактори, компоновщики й відладчики. Не буває самостійних (відірваних від ОС) систем програмування. Будь-яка система програмування може працювати тільки у відповідній ОС, під якою вона і створена, однак при цьому вона може дозволяти розробляти програмне забезпечення і під інші ОС. Наприклад, одна з популярних систем при програмування мовою C/C++ від фірми Watcom для OS/2 дозволяє одержувати програми і для самої OS/2, і для DOS, і для Windows.

У тому випадку, коли створювані програми повинні працювати зовсім на іншій апаратній базі, говорять про крос-системи. Так, для ПК на базі мікропроцесорів сімейства i80x86 є велика кількість крос-систем, що дозволяють створювати програмне забезпечення для різних мікропроцесорів і мікроконтролерів.

4.Нарешті, під утилітами розуміють спеціальні системні програми, за допомогою яких можна як обслуговувати саму операційну систему, так і підготовляти для роботи носії даних, виконувати перекодування даних, здійснювати оптимізацію розміщення даних на носії і проводити деякі інші роботи, зв'язані з обслуговуванням обчислювальної системи. До утиліт варто віднести і програму розбивки нагромаджувача на магнітних дисках на розділи, і програму форматування, і програму переносу основних системних файлів самої ОС. Також до утиліт відносяться і відомі комплекси програм від фірми Symantec, що носять ім'я Пітера Нортона (творця цієї фірми і співавтора популярного набору утиліт для перших IBM PC). Природно, що утиліти можуть працювати тільки у відповідному операційному середовищі.

Соседние файлы в папке lect