10.1. Послідовна обробка даних
Перше покоління комп’ютерів (1943-1955): механічні реле, електронні лампи та комутаційні панелі. Про операційні системи ніхто і не чув, програми безпосередньо взаємодіяли з апаратним забезпеченням машини. Ці комп’ютери керувалися безпосередньо з пульта управління (панелі), що складався з сигнальних ламп та тумблерів. Звичайний режим роботи програміста був такий: записатися на певний час, потім спуститися у машинну кімнату (або залу), вставити свою комутаційну панель у комп’ютер (або пізніше, на загальну панель комп’ютера) та проводити різні маніпуляції на панелі для розв’язку свого завдання.
На початок 50-х, з випуском перфокарт, ситуація дещо покращала. Стало можливо замість використання комутаційних панелей записувати та прочитувати програми з карт, але в усьому іншому процедура обчислень залишалася незмінною. Фактично тоді на комп’ютерах займалися тільки прямими числовими обрахунками.
У перші роки, коли машини тільки вчилися обчислювати, ними управляли самі програмісти. Кожному користувачеві відводився певний час. Програміст сідав за пульт і залишався з машиною наодинці. Ніяких операційних систем та файлів на диску, – «все своє ношу із собою». І дійсно, програмісти носили з собою стягнуті гумками колоди перфокарт, а якщо їх було багато, то в скриньках, які були зроблені найчастіше з фанери. Носили з собою і всі інші «причандали»: паперову «тирсу» від пробивки отворів на перфокартах, аби у будь-який час можна було заклеїти (звичайно ж нігтем) «зайвий» отвір для отримання іншого коду; ножик або шило для проколювання отворів на перфокарті і таке інше.
Перша дія програміста за пультом – натиснення кнопки «Стирання ОЗУ», потім у порожню машину вводилася колода перфокарт, і управління передавалося у комірку за адресою 0001. Коли програма закінчувала роботу, машина зупинялася і спалахувала лампочка «Останов», а якщо виникала особлива ситуація – ділення на нуль або переповнювання, то спалахувала лампочка аварійної зупинки «Авост». Ось і все управління обчислювальним процесом.
За таких умов відлагодження програм було дуже повільною та малопродуктивною справою. Поки програміст думав, чому відбувся авост, машина простоювала, дорогоцінний час витрачався даремно. На самому початку 50-х років це було ще стерпно, але незабаром політика відкритих дверей себе вичерпала. Машин було ще мало, а програмістів стало дуже багато, буквально кожна хвилина машинного часу була на рахунку. Думати за пультом ЕОМ стало неприпустимою розкішшю. Двері машинних залів наглухо закрили, туди допускалися тільки люди з екзотичною професією «оператор ЕОМ».
Програміст заздалегідь розмірковував та планував усі дії з відлагодження програми, писав розлогу інструкцію операторові і разом з колодою перфокарт здавав її диспетчерові обчислювального центру. Диспетчер відповідно до пріоритетів формував «живу чергу» завдань, вкладав колоди одну за одною у спеціальні довгі та вузькі скрині і відносив їх у машинну залу операторові.
Робота оператора була неймовірно напруженою. Підходячи до ящика із завданнями, він брав чергову колоду, вставлював її у зчитуючий пристрій. Потім, відповідно до інструкції, набирав на пульті команди, записував покази лампочок, змотував в рулон “видачу” з пристрою друку та разом з відпрацьованою колодою складав усе у скриню для оброблених завдань, яка поверталась назад у диспетчерську обчислювального центру.
Не дивлячись на всі старання операторів, уникнути втрат машинного часу все одно не вдавалося. Поки оператор бігав від введення до виведення, машина простоювала. До того ж він часто припускався помилок, тому природною та необхідною стала постановка завдання про автоматизацію праці операторів.
Такий режим роботи можна назвати послідовною обробкою даних. Цю назву відображає той факт, що призначені для користувача програми виконувалися на комп’ютері послідовно. Через деякий час у спробі підвищити ефективність послідовної обробки були розроблені різні системні інструменти. До них належать бібліотеки функцій, редактори зв’язків або компоновники, завантажувачі та драйвери введення-виведення, що існують у вигляді програмного забезпечення, яке є загальнодоступним для всіх користувачів.
- Міністерство освіти і науки україни
- 9.12. Огляд WinDev 154
- 10. Історія операційних систем 169
- Список літератури 187
- Передмова
- 1. Передвісники комп’ютерної ери
- 1.1. Комп’ютерна програма–що це?
- 1.2. Доелектронна історія обчислювальної техніки
- Логарифмічна лінійка
- 1.3. Можливості двійкового коду
- 1.4. Розвиток двійкової системи
- 1.5. Винахід перших комп’ютерів
- Перша в історії працююча програмнокерована універсальна обчислювальна машина z-3 (1941 р.)
- 1.6. Гарвардська архітектура
- 1.7. Архітектура фон Неймана
- 1.8. Створення зрозумілих людині кодів
- 1.9. Крок на благо програмування
- 1.10. Можливості програмного управління
- 2. Нові мови програмування
- 2.1. Поневіряння пакетної обробки
- 2.2. Універсальна мова програмування
- 2.3. Усунення неоднозначності
- 2.4. Заклик до дотримання математичної строгості
- 2.5. Пошук та усунення помилок
- 2.6. Нелегке мистецтво програмування
- 2.7. Обчислювальна техніка та програмування в срср
- 3. Розквіт та хаос програмного забезпечення
- 3.1. Місце народження хакерів
- 3.2. Два чародії програмування
- 3.3. Перші промислові стандарти
- 3.4. Дружній інтерфейс
- 3.5. Прообраз сучасного «ноутбука»
- 4. Болісний шлях розвитку програмування
- 4.1. Плануюче обчислення
- 4.2. Внесок Великої Британії
- 4.3. Програмування англійською мовою
- 5. Три комерційні гіганти
- 5.1. Перша комерційна мова програмування
- 5.2. Обчислювальна техніка приходить у бізнес
- 5.3. Народження codasyl
- 5.4. Конференція в Цюріху
- 5.5. На шляху до сумісності комп’ютерів
- 5.6. Розбіжності Нового Світу
- 6. Десятиліття динамічного розвитку
- 6.1. Перші кроки непроцедурної мови
- 6.3. Алфавітне хрещення
- 6.4. Успіх та суперечки
- 6.5. Інженерний підхід
- 6.6. Структурний підхід
- 6.7. Поява мови “Ада”
- 7. Програмування приходить у наші домівки
- 7.1. Розквіт Бейсіка
- 7.2. Поява мови Модула-2
- 7.3. Музикальний француз
- 7.4.Довгожитель Lisp – інструмент функціонального програмування
- 7.5. Prolog – нездійснена мрія еом V покоління
- 7.6. Революція на ім’я Java
- 8. Історія і шляхи розвитку супер-еом
- 8.1. Усе починалося з менфреймов
- 8.2. Напрями розвитку обчислювальної техніки
- 8.3. Розвиток елементної бази. Закон Мура
- 8.4. Вдосконалення архітектури
- Звичайна послідовн обробка
- Конвеєрна обробка
- 9. Сучасний стан та перспективи розвитку програмування
- 9.1. Криза у програмуванні
- 9.2. Методологія процедурно-орієнтованогопрограмування
- 9.3. Методологія об’єктно-орієнтованогопрограмування
- 9.4. Методологія об’єктно-орієнтованогоаналізу та проектування
- 9.5. Технології програмування
- 9.6. Case –засоби
- 9.7. Методологія rad
- 9.11.1. Знайомство с LightSwitch
- 9.11.2. Архитектура LightSwitch
- 9.11.3. Створення проекту в Microsoft Visual Studio LightSwitch
- 9.11.4. Дванадцять основних переваг LightSwitch
- 9.12. Огляд WinDev
- 9.12.1. ПризначенняWinDev
- 9.12.2. Деякі характеристики wLanguage
- 9.13. Технологія model checking
- 9.14. NeoBook – программирование для непрограммистов
- 9.14.1. Введення для секретарок
- 9.14.3. Можливості та області застосування
- 9.15. Файлові системи найближчого майбутнього
- 9.15.1. Зетта-повінь настає
- 9.15.2. Файлова система zfs
- 9.15.3. Файлова системаBtrfs
- 9.15.4. Файлова системаHammer
- 10. Історія операційних систем
- 10.1. Послідовна обробка даних
- 10.2. Прості пакетні системи
- 10.3. Багатозадачні пакетні системи
- 10.4. Системи з режимом розподілу часу
- 10.5. Основні досягнення
- 10.6. Сучасні системи unix
- 10.7. Os/2. Битва двох гігантів
- Список літератури