logo
Новий конспект САПР

Режими роботи обчислювальних систем

Ідея розподілу ресурсів займає центральне місце при побудові операційних систем на основі різних принципів. У ідеалі будь-яка прикладна програма повинна мати можливість одержувати необхід­ні ресурси у будь-який час. Проте бувають ситуації, коли загальна потреба в ресурсах перевищує можливості системи. У цьому випад­ку операційна система повинна знайти компромісне рішення і задо­вольнити ті запити, які вона вважає найбільш важливими. З погляду користувача (наприклад, проектувальника САПР) можна виділити пакетний і діалоговий режими роботи обчислювальної системи.

Режими пакетної обробки завдань - режим виконання певної су­купності завдань, при якому ці завдання обробляються в основному автоматично без синхронізації з подіями, що відбуваються зовні об­числювальної системи, зокрема без зв’язку з особами, що предста­вили завдання для виконання.

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

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

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

Аcem6Repu - машинно-орієнтовані мови низького рівня і програ­мні засоби для їх перетворення у мову машинних кодів.

TpaнcRяmopu - програмні засоби, що служать для перетворення програми, написаної на одній з мов програмування високого рівня (Fortran, Pascal, PL/1, С, C++ та ін.) у мову машинних кодів.

До cepeicxux npoopam можна віднести компонувальник програм, завантажувач, програми виявлення несправностей і т.п.

Діалоговий інтерактивний режим - режим взаємодії користу­вача з обчислювальною системою, при якому людина і обчислювальна система обмінюються даними в темпі, сумірному з темпом об­робки даних людиною. Обмін інформацією у діалоговому режимі здійснюється за допо­могою спеціальних діалогових мов. Розрізняють пасивний і актив­ний діалог. При пасивному діалозі ініціатива належить обчислювальній системі, вона «веде» за собою користувача, вимагаючи від нього у точках розгалуження обчислювального процесу додаткової інформації, необхідної для ухвалення закладених в алгоритм рі­шень. У цьому режимі обчислювальна система забезпечує користу­вача інформаційними повідомленнями (зокрема результатами роз­рахунків) і підказками, що полегшують використання діалогової си­стеми. Запити до користувача формуються або у вигляді меню, або у вигляді шаблонів. Меню є списком альтернативних можливостей, що виводиться на екран дисплея, для продовження рішення в пото­чній точці обчислювального процесу, користувач повинен вибрати одну з можливостей вказавши відповідний рядок меню, курсором або введенням з клавіатури номера цього рядка. Шаблоном назива­ється форматований кадр зображення, що виводиться на екран дис­плея, який містить тексти запитів до користувача і спеціальні поля призначені для занесення у них відповідей користувача у вигляді текстів або чисел. Активний діалог характеризується рівноправ’ям його учасників. Для організації такого діалогу зазвичай використо­вуються формальні директивні (командні) мови або мови близькі до природних. Діалоговий режим роботи, що забезпечується сучасними обчислювальними системами, в даний час використовується у САПР час­тіше ніж режим пакетної обробки. Проте в деяких випадках, коли час реакції системи на запити користувача дуже великий, діалого­вий режим стає менш ефективним, оскільки людина не автомат і для організації ланцюга перерваних тривалою бездіяльністю мірку­вань їй потрібен час. У цьому випадку доречний режим пакетної обробки. Пакетній режим застосовують також в простих випадках, коли існує можливість проектування об’єкту без участі проектувальника (САПР засновані на рішенні повністю формалізованих за­вдань - автоматичне проектування). З погляду організації роботи обчислювальних систем можна від­значити однопрограмний і багатопрограмний (мультипрограмний) режими роботи.

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

Мультипрограмний режим po6omu це режим у якому виконується декілька програм одночасно. Сучасні обчислювальні системи як правило функціонують у цьому режимі. Для обчислювальних сис­тем з декількома процесорами кількість одночасно виконуваних програм істотно перевершує кількість використовуваних процесо­рів.

У режимі мультипрограмування у основній пам’яті одночасно знаходиться декілька програм, завантажених для виконання. Число одночасно виконуваних програм визначає рівень мультипрограму­вання. Центральний процесор в кожен момент часу може виконува­ти лише одну програму. Таким чином, паралельно виконувані про­грами конкурують між собою за володіння ресурсами обчислюва­льної системи і за час центрального процесора. Кожна програма представляється в системі як завдання (процес). Таким чином при­йнято говорити про одночасно виконувані завдання (або процеси), основою яких є відповідні програми, причому завдання є одиницею мультипрограмування.

Задача, яка у поточний момент часу володіє центральним проце­сором, називається активною. Вона виконується до тихий пір, поки не перейде у стан очікування будь-якої події (наприклад, завершен­ня операції вводу-виводу) або не буде перервана з будь-яких причин операційною системою. Решта завдань (крім активного) знахо­диться у стані готовності використання центрального процесора або очікування якої-небудь події (завершення операції вводу-виводу, закінчення заданого інтервалу часу, завершення виконання програ­ми і т.д.). Після перекладу активного завдання в стан очікування вибирається одна з готових для виконання задач.

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

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

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

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

можуть виконуватися завдання великої кількості користувачів. При оптимальному розмірі кванта часу у кожного користувача створю­ється враження безперервної роботи з ЕОМ.

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

Режими розподілу часу і реального часу - найбільш важливі для САПР режими, використовуючи їх деяке число користувачів одно­часно мають доступ до обчислювальної машини за допомогою від­далених терміналів.

Крім використання стандартних операційних систем ЕОМ мож­ливо створення спеціалізованих операційних систем, орієнтованих тільки на автоматизоване проектування. Універсальні операційні системи мають ряд функцій, які не використовуються САПР, що веде до збільшення об’єму оперативної пам’яті, яка займає ядро операційної системи і час, який система витрачає на виконання цих не використовуваних функцій. Крім того, в спеціалізованій опера­ційній системі можуть бути відсутні деякі системно обробляючі програми (наприклад транслятори) якщо її робота пов’язана тільки із забезпеченням процесу автоматизованого проектування і не пов’язана з розробкою програм. У зв’язку з цим застосування спеці­алізованих операційних систем дозволяє підвищити продуктивність функціонування САПР і понизити рівень вимог до системного про­грамного забезпечення. Проте спеціалізована операційна система - дуже складний і дорогий програмний продукт, що обмежує можли­вості її широкого застосування.

Спеціальне програмне забезпечення

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

Системне програмне забезпечення САПР може бути використане для різних САПР близьких по функціональному призначенню, що розроблені на основі загальних концепцій, наприклад для САПР рі­зних технічних об’єктів. Системне програмне забезпечення САПР розробляється з чіткою орієнтацією на конкретні ЕОМ і операційні системи. Воно є продовженням операційної системи і забезпечує:

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

До складу спеціального програмного забезпечення САПР вклю­чаються прикладні програми або пакети прикладних програм, оріє­нтовані на вирішення конкретних завдань і сервісні програми, що виконують в рамках САПР сервісні функції і забезпечують викори­стання отриманих результатів.

Таким чином, спеціальне програмне забезпечення САПР направ­лено на вирішення певних проектних завдань. Саме це програмне забезпечення є предметом розробки системи. Від його характерис­тик і особливостей визначальним чином залежать функціональні можливості САПР.

Спеціальне програмне забезпечення не може функціонувати без загальносистемного програмного забезпечення, тому його можна розглядати як вузькоспеціалізоване продовження загальносистем­ного забезпечення ЕОМ і САПР.

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

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

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

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

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

Створення і використання програмного забезпечення САПР ви­магає дотримання певних основоположних принципів, одним з яких є принцип модульності системи.

Модуль спеціального програмного забезпечення САПР можна розглядати як сукупність певних програмних і операційних компо­нентів, якими є:

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

На рис. 7.1 представлена структура САПР об’єкту, що працює під управлінням базової операційної системи ЕОМ.

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

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

Рис.7.1 Структура САПР об’єкту, що працює під управлінням базової операційної системи ЕОМ.

Лекція 8 Лінгвістичне забезпечення САПР

План лекції

  1. Класифікація і використання мов у САПР

  2. Мови процедурні і не процедурні

  3. Мовні засоби машинної графіки