Скачать презентацию Вступна лекція Тема Вступ в системне програмування с Скачать презентацию Вступна лекція Тема Вступ в системне програмування с

Лекция 1 - Вступ в системне програмування shov.ppt

  • Количество слайдов: 42

Вступна лекція Тема. Вступ в системне програмування (с) Гроза П. М. Вступна лекція Тема. Вступ в системне програмування (с) Гроза П. М.

Навчальні питання 1. 2. 3. 4. (с) Гроза П. М. Програми і програмне забезпечення Навчальні питання 1. 2. 3. 4. (с) Гроза П. М. Програми і програмне забезпечення Системне програмування Етапи підготовки програми Розвиток системного програмування 2

Література 1. ГОСТ 19781 -90. Обеспечение систем обработки информации программное. Термины и определения. - Література 1. ГОСТ 19781 -90. Обеспечение систем обработки информации программное. Термины и определения. - М. : Изд-во стандартов, 1990 (с) Гроза П. М. 3

1. Програми і програмне забезпечення (с) Гроза П. М. 1. Програми і програмне забезпечення (с) Гроза П. М.

Програма def (ДСТ) це дані, призначені для керування конкретними компонентами системи обробки інформації (СОІ) Програма def (ДСТ) це дані, призначені для керування конкретними компонентами системи обробки інформації (СОІ) з метою реалізації визначеного алгоритму Для програміста – активний компонент, що виконує дії Для процесора - дані, які читає процесор й інтерпретує Для обслуговуючих програм - дані, які на вході мають однин вид, а на виході інший (с) Гроза П. М. 5

Програмне забезпечення (ПЗ) def сукупність програм СОІ і програмних документів, необхідних для їхньої експлуатації Програмне забезпечення (ПЗ) def сукупність програм СОІ і програмних документів, необхідних для їхньої експлуатації Властивості ПЗ Документованість Ефективність Надійність Можливість супроводу (с) Гроза П. М. 6

Документованість По Бруксу 1) помилкою в ПЗ є ситуація, коли програмний виріб функціонує не Документованість По Бруксу 1) помилкою в ПЗ є ситуація, коли програмний виріб функціонує не у відповідності зі своїм описом 2) отже, помилка в документації також є помилкою в програмному виробі Забезпечує роботу кінцевого користувача уможливлює тиражування ПЗ продаж ПЗ без розроблювача (с) Гроза П. М. 7

Ефективність Забезпечує перенесення витрати на етап виробництва ПЗ звільнення від витрат етап виконання уникнення Ефективність Забезпечує перенесення витрати на етап виробництва ПЗ звільнення від витрат етап виконання уникнення витрат на тиражування (с) Гроза П. М. 8

Надійність Надійність "Помилки в системі можливі через: збої апаратури, помилок ПЗ, неправильних дій користувача. Перші неминучі, другі - ймовірні, треті – гарантовані” Готьє Забезпечує 1. стійкість системи при появі помилок 2. усунення помилки 3. діагностування помилки і перетворення в коректне відмовлення 4. збереження системних структур даних 5. збереження цілісності даних користувача Забезпечується 1. тестуванням програми при допустимих вхідних даних 2. захистом від неправильних дій користувача 3. захистом від злому (с) Гроза П. М. 9

Можливість супроводу Забезпечує адаптацію ПЗ до конкретних умов застосування усунення помилок модифікацію ПЗ Забезпечується Можливість супроводу Забезпечує адаптацію ПЗ до конкретних умов застосування усунення помилок модифікацію ПЗ Забезпечується ретельним структурування ПЗ програмною документацію, яка є носієм інформації про структуру ПЗ (с) Гроза П. М. 10

Питання 11 Питання 11

2. Системне програмування (с) Гроза П. М. 2. Системне програмування (с) Гроза П. М.

Типи програм Системна програма - програма, що призначена для підтримки працездатності СОІ або підвищення Типи програм Системна програма - програма, що призначена для підтримки працездатності СОІ або підвищення ефективності її використання Прикладна програма - програма, що призначена для рішення задачі або класу задач у визначеній області застосування СОІ (с) Гроза П. М. 13

Системне програмування По Гегелю 1) система - єдине ціле, що складається з безлічі компонентів Системне програмування По Гегелю 1) система - єдине ціле, що складається з безлічі компонентів і безлічі зв'язків між ними 2) системне програмування - це розробка програм складної структури - процес розробки системних програм (ДСТ) (с) Гроза П. М. 14

ПЗ поділяється По ДСТ системне ПЗ прикладне ПЗ Сучасна точка зору на розподіл • ПЗ поділяється По ДСТ системне ПЗ прикладне ПЗ Сучасна точка зору на розподіл • системне ПЗ • проміжне ПЗ • прикладне ПЗ (с) Гроза П. М. 15

Проміжне ПО (middleware) сукупність програм, що здійснюють керування вторинними ресурсами, орієнтованими на рішення визначеного Проміжне ПО (middleware) сукупність програм, що здійснюють керування вторинними ресурсами, орієнтованими на рішення визначеного класу задач Відносяться - менеджери транзакцій, сервери БД, сервери комунікацій і інші програмні сервери (с) Гроза П. М. 16

Сучасні тенденції розвитку ПЗ 1. 2. 3. В зниженні обсягу системного і прикладного програмування Сучасні тенденції розвитку ПЗ 1. 2. 3. В зниженні обсягу системного і прикладного програмування Основна частина роботи програмістів виконується в проміжному ПЗ Значна частина СПЗ і практично все ППЗ пишеться на мовах високого рівня (с) Гроза П. М. 17

Системне ПЗ підрозділяється • системні керуючі програми • системні обслуговуючі програми Керуюча програма - Системне ПЗ підрозділяється • системні керуючі програми • системні обслуговуючі програми Керуюча програма - системна програма, що реалізує набір функцій керування, яка містить у собі керування ресурсами і взаємодію з зовнішнім середовищем СОІ, відновлення роботи системи після прояву несправностей у технічних засобах. Програма обслуговування (утиліта) - програма, призначена для надання послуг загального характеру користувачам і обслуговуючому персоналові СОІ (с) Гроза П. М. 18

Система програмування - система, утворена мовою програмування, компілятором або інтерпретатором програм, представлених на цій Система програмування - система, утворена мовою програмування, компілятором або інтерпретатором програм, представлених на цій мові, що відповідає документації, а також допоміжними засобами для підготовки програм до форми, придатної для виконання (с) Гроза П. М. 19

Питання 20 Питання 20

3. Етапи підготовки програми (с) Гроза П. М. 3. Етапи підготовки програми (с) Гроза П. М.

Принцип модульності - розбивка складної програми на складові частини, кожна з яких може розроблятися Принцип модульності - розбивка складної програми на складові частини, кожна з яких може розроблятися окремо Забезпечує полегшення (с) Гроза П. М. розробки налагодження супровід 22

Програмний модуль - програма або функціонально завершений фрагмент програми, призначений для збереження, трансляції, об'єднання Програмний модуль - програма або функціонально завершений фрагмент програми, призначений для збереження, трансляції, об'єднання з іншими програмними модулями і завантаження до оперативної пам'яті (с) Гроза П. М. 23

Правила вибору модульної структури • Функціональність - модуль виконує закінчену функцію • Незв'язність - Правила вибору модульної структури • Функціональність - модуль виконує закінчену функцію • Незв'язність - модуль має мінімум зв'язків з іншими модулями - зв'язок через глобальні змінні й області пам'яті небажана • Специфікуємість - вхідні і вихідні параметри модуля мають чітко формулюватися (с) Гроза П. М. 24

Вхідний модуль - програмний модуль ісходною мовою, що оброблюється транслятором і представлений для нього Вхідний модуль - програмний модуль ісходною мовою, що оброблюється транслятором і представлений для нього як одне ціле, достатнє для проведення трансляції Рис. 1 Етапи підготовки програми (с) Гроза П. М. 25

1) Обробка програмного модуля Макропроцесором Макропроцесор обробляє текст програми і на виході його отримуємо 1) Обробка програмного модуля Макропроцесором Макропроцесор обробляє текст програми і на виході його отримуємо нову редакцію тексту Рис. 1 Етапи підготовки програми (с) Гроза П. М. 26

2) Трансляція - перетворення програми, представленої на одній мові програмування, у програму на іншій 2) Трансляція - перетворення програми, представленої на одній мові програмування, у програму на іншій мові програмування, по змісту рівносильну першій Вихідна мова транслятора - машинна мова цільової обчислювальної системи Машинна мова - мова програмування, призначена для представлення програми у формі, що дозволяє виконувати її безпосередньо технічними засобами обробки інформації (с) Гроза П. М. 27

Транслятори - загальна назва для програм, що здійснюють трансляцію Підрозділяються на асемблери компілятори Результатом Транслятори - загальна назва для програм, що здійснюють трансляцію Підрозділяються на асемблери компілятори Результатом трансляції – об'єктний модуль (ОМ) (с) Гроза П. М. 28

Def Автокод - символьна мова програмування, вирази якого по своїй структурі в основному подібні Def Автокод - символьна мова програмування, вирази якого по своїй структурі в основному подібні командам і оброблюваної даним конкретної машинної мови Мова Асемблера - мова програмування, що має символьну форму машинної мови з можливостями, характерними для мови високого рівня Мова високого рівня - мова програмування, вирази і структура якої зручна для сприйняття людиною (с) Гроза П. М. 29

Об'єктний модуль - програмний модуль, отриманий в результаті трансляції вхідного модуля Містить • команди Об'єктний модуль - програмний модуль, отриманий в результаті трансляції вхідного модуля Містить • команди і дані машинної мови • зовнішні посилання (с) Гроза П. М. 30

3) Редактор зв'язків (компонувач) - з'єднує всі об'єктні модулі, що входять у програму в 3) Редактор зв'язків (компонувач) - з'єднує всі об'єктні модулі, що входять у програму в один модуль Результат роботи - завантажувальний модуль (ЗМ) Рис. 1 Етапи підготовки програми (с) Гроза П. М. 31

Завантажувальний модуль програмний модуль, представлений у формі, придатній для завантаження в оперативну пам'ять для Завантажувальний модуль програмний модуль, представлений у формі, придатній для завантаження в оперативну пам'ять для виконання Зберігається у виді файлу у зовнішній пам'яті (с) Гроза П. М. 32

4) Завантажник - забезпечує виконання ЗМ Для виконання завантажує ЗМ в оперативну пам'ять виконує 4) Завантажник - забезпечує виконання ЗМ Для виконання завантажує ЗМ в оперативну пам'ять виконує настроювання Можливий варіант підготовки програм зі зв'язуючим Завантажником (4`) з інтеграцією (1`) (с) Гроза П. М. 33

4`) Зв'язуючи Завантажник - виконує редагування зв'язків при кожному запуску програми на виконання і 4`) Зв'язуючи Завантажник - виконує редагування зв'язків при кожному запуску програми на виконання і сполучається з завантаженням Забезпечує • гнучкість у супроводі • економію зовнішньої пам'яті (с) Гроза П. М. Рис. 1 Етапи підготовки програми 34

1`) Інтерпретація - реалізація змісту деякого синтаксично закінченого тексту, який представлений конкретною мовою Недолік 1`) Інтерпретація - реалізація змісту деякого синтаксично закінченого тексту, який представлений конкретною мовою Недолік всі витрати на підготовку тиражуються при кожному виконанні Переваги зручність розробки гнучкість у супроводі переносимість Приклад - мови процедур (sell, REXX), JVM (с) Гроза П. М. 35

Схема роботи інтерпретатора і компілятора Рис. 2 б (с) Гроза П. М. 36 Схема роботи інтерпретатора і компілятора Рис. 2 б (с) Гроза П. М. 36

Крос-системи - системи, що забезпечують підготовку програм у середовищі, відмінної від цільового Виконується вся Крос-системи - системи, що забезпечують підготовку програм у середовищі, відмінної від цільового Виконується вся підготовка або окремі її етапи (с) Гроза П. М. 37

Питання 38 Питання 38

4. Розвиток системного програмування (с) Гроза П. М. 4. Розвиток системного програмування (с) Гроза П. М.

Історією розвитку СП 1965 - Bell labs розробляє ОС Multix - прообраз UNIX 1971 Історією розвитку СП 1965 - Bell labs розробляє ОС Multix - прообраз UNIX 1971 - написаний UNIX для роботи на платформі PDP – 11 1977 - UNIX стає переносною системою, тому що переписана мовою C (AT&T system V) 1981 - платформа Intel створює мікросхему 8086 ü з'являється однокористувальницька ОС MS-DOS ü для машин із процесором Intel з'являються версії UNIX (с) Гроза П. М. 40

Історією розвитку СП Кінець 80 - початок 90 р. – апаратні засоби збільшують потужність Історією розвитку СП Кінець 80 - початок 90 р. – апаратні засоби збільшують потужність ü Microsoft створює нову ОС Windows NT ü з'являється стандарт Win 32 ü з'являється Windows 95 – ОС для одного робочого місця, витісняє MS-DOS ü створюється 64 -бітна версії ОС UNIX на платформі Alpha фірми DEC (с) Гроза П. М. 41

Питання 42 Питання 42