Відкрити головне меню

Пакетна обробка — організація виконання декількох процесів в попередньо визначеній послідовності за допомогою команд керування процесами та наборами даних операційної системи або спеціалізованої мови пакетної обробки[1].

Пакетна обробка як засіб організації завдань з'явилась в часи, коли операційні системи були однозадачними, а запуск завдань здійснювався оператором вручну шляхом введення відповідних команд. Окрім команд запуску завдань оператор також вводив команди опису наборів даних, які могли міститись на магнітних дисках, магнітних або перфорованих стрічках, перфокартах тощо. Ці команди дозволяли програмі сприймати такі набори даних як одноманітні, незалежні від пристрою, способу організації та методів доступу (з прямим або послідовним доступом тощо). Введення цих команд вимагало значного часу, протягом якого машина фактично простоювала. Для запобігання таких простоїв було запропонованого записувати команди запуску програм, опису та ініціалізації наборів даних на носій та ініціювати виконання програм шляхом послідовного читання цих команд з такого носія. Для зручності ці команди звичайно записувались на перфокарти (що дозволяло досить легко замінювати перфокарти у стосі перфокарт — пакеті).

В подальшому пакети запуску програм перетворились на окремі програми та отримали власний синтаксис як синтаксис мови керування завданнями.

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

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

Відомі або важливі системи і середовища пакетної обробкиРедагувати

У Unix-подібних ОС програми cron, at і batch (у сучасних системах[коли?] batch є варіантом at) дозволяють досить складну диспетчеризацію задач. ОС Windows має компонент job scheduler. Більшість кластерних систем, орієнтованих на інтенсивні обчислення, використовують пакетну обробку з метою максимізувати продуктивність кластера.[2]

Операційні системи для мейнфреймів IBM, передусім z/OS, мають, напевно, найбільш розвинені середовища пакетного виконання, завдяки десяткам років постійної еволюції. У 21-му столітті такі системи забезпечують паралельну роботу сотень і тисяч онлайнових і пакетних задач у рамках одного екземпляру ОС. Серед технологій, які значною мірою допомагають у пакетній і онлайновій обробці даних, можна відзначити JCL[en] (англ. Job Control Language, мова керування завданнями), скриптові мови, такі як REXX, системи вводу завдань Job Entry Subsystem[en], менеджер керування навантаженням Workload Manager (WLM), менеджер автоматичного рестарту Automatic Restart Manager (ARM), сервіси відновлення ресурсів (англ. Resource Recovery Services, RRS), засоби[які?] IBM DB2, Parallel Sysplex, засоби оптимізації навантаження типу HiperDispatch, канальна архітектура вводу/виводу та інші.

ПриміткиРедагувати

  1. IBM Corporation. Glossary of z/OS terms and abbreviations - job. Процитовано February 18, 2013. 
  2. High performance computing tutorial, with checklist and tips to optimize. January 25, 2018. «a multi-user, shared and smart batch processing system improves the scale ..... Most HPC clusters are in Linux»