Цікаво

UNIX: побудова найважливішої ОС у світі

UNIX: побудова найважливішої ОС у світі


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

Якщо ви коли-небудь користувались смартфоном, втрачали час перегляду веб-сайту за веб-сайтом або грали у відеоігру на консолі Next-Gen, ви використовували операційну систему Unix або одну з її похідних.

Linux є духовним спадкоємцем оригінальної системи Unix, а Mac OSX побудована на основі Unix. Системи на основі Unix або похідні використовуються у гігантських фермах серверів, обробляючи майже весь світовий Інтернет-трафік. Інтернет речей та інші вбудовані системи використовують Unix або його наступників, а Linux на основі Unix навіть використовується на Міжнародній космічній станції для запуску необхідного обладнання.

Все це можливо, оскільки Кеннет Томпсон, Денніс Річі та їх колеги не могли спостерігати, як улюблений проект стає жертвою корпоративного скорочення витрат.

Покірний початок Unix

Як виявляється, найпопулярніша у світі операційна система бере свій комерційний провал.

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

Лише тоді Джон Маккарті, професор Массачусетського технологічного інституту, осмислив кращий спосіб у пам’ятці своїм колегам у 1959 р. Його пропозиція, відома як Timesharing, була революційною і зробила можливим використання всіх сучасних обчислень.

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

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

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

Мультики: Нещасний, неправильно зрозумілий родоначальник операційної системи Unix

До 1969 року Американська компанія Telephone & Telegraph Co. (AT&T) інвестувала мільйони доларів, намагаючись побудувати систему, що використовує принцип поділу часу Маккарті.

Як відомо, служба мультиплексної інформації та обчислень (Multics) була продуктом деяких провідних інформатиків галузі. Працюючи в легендарних телефонних лабораторіях компанії AT&T, ці дослідники на чолі з Кеннетом Томпсоном та Деннісом Річі підняли ідею розподілу часу на нові рівні складності та вишуканості.

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

У тому, що стало одним з найвідоміших випадків повзучості функцій в історії інформатики, Multics не вдалося досягти жодної з початкових цілей, викладених AT&T, оскільки розробники системи намагалися включити кожну нововведення, яку вони могли подумати, в система, яка насправді цього не вимагала.

Розчаровані відсутністю прогресу до системи, яку їм спочатку обіцяли, AT&T скоротила свої втрати та взагалі відмовилася від проекту Multics. Не маючи змоги виправдати дозвіл своїм дослідникам працювати над системою, яка не мала очевидної комерційної цінності, Bell Labs доручив Томпсону, Річі та решті команди Multics припинити будь-які подальші роботи над системою.

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

Історія підпільного розвитку Unix

Для команди Bell Labs відхід від сучасної операційної системи та повернення до часів пакетної обробки перфокарт було неможливим.

Томпсон, Річі та Радд Канадей, ще один дослідник лабораторії Белл, незабаром зробили перший історичний крок, записавши на папері контури абсолютно нового типу файлової системи для комп’ютера. Вони передбачили, як можна класифікувати файли за категоріями та помістити їх у контейнери, які можна було б розмістити в інших контейнерах, створивши навігаційний каталог файлів - таку саму систему, якою користується сьогодні кожен сучасний комп'ютер у світі.

Тоді Томпсон розпочав формалізацію створеної ними системи Multics. Натхненний грою, яку він написав для Multics, він знайшов у лабораторії стару систему PDP-7, яку всі вважали сміттям. Старіша система і менш надійна, ніж мейнфрейм GE-645, Томпсон почав переписувати свою гру, щоб запускати на ній, розбираючи код, щоб поміститися в менший простір.

Томпсон незабаром зрозумів, що він може зробити те саме для системи Multics в цілому, і протягом одного місяця влітку 1969 року він переписав велику частину Multics для запуску на PDP-7. Забавлені колеги жартували, що зусилля Томпсона, заблоковані вдома із системою, перетворили Мультиплексну інформаційно-обчислювальну систему на Немультиплексовану інформаційно-обчислювальну систему.

Мультики стали Unics, а врешті-решт, просто Unix.

PDP-7, який на той час вже був незграбним, не був достатнім для подальшого, незаконного розвитку нової операційної системи Unix. Тож у 1970 році Томпсон та його колеги обдурили керівництво Bell Labs придбати новішу систему PDP-11, яка слугувала б законним діловим цілям компанії, але також таємно представляла перший великий доказ концепції для своєї нової системи.

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

Розвиток спільноти ОС Unix

Зрештою AT&T стало відомо про те, що робили дослідники Томпсона та Белла. Визнавши справжню корисність ОС Unix, вони опинились у зв’язку.

Юридична угода з урядом США забороняла AT&T продавати або підтримувати продукцію чи послуги, які явно не були телефонними та телеграфними системами, що Unix, безумовно, не було. Будучи не в змозі продати його як продукт і не маючи можливості надати будь-яку програмну підтримку для нього офіційно, все, з чим вони могли легально вийти, - це ліцензування ОС Unix зацікавленим сторонам за номінальну плату.

Томпсон і компанія взяли це відкриття і побігли з ним. Відвідуючи торгові заходи, вони просуватимуть Unix розробникам, які швидко полюбили його.

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

Передбачуваний “улов” угоди з AT&T, що не може бути офіційної підтримки, зрештою виявився величезною органічною вигодою для ОС Unix. Якщо в операційній системі сталася помилка, користувачі повинні були розібрати код і виправити його самостійно, а якщо вони не могли зрозуміти, що сталося, вони повинні були звернутися за допомогою до інших користувачів Unix.

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

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

Врешті-решт спалахнули юридичні сутички, коли AT&T намагалися забезпечити свої вимоги щодо ОС Unix, але, як і всі добрі спроби припинити спільний доступ до файлів, зусилля AT&T лише прискорили таємне та непокірне поширення системи Unix з відкритим кодом, тим більше, що кілька юридичних версія AT & T версії Unix вже давно вийшла в дику природу. Це дозволило продовжувати розробляти системи на базі Unix поза межами досяжності юристів AT&T, міцно закріпивши її статус операційної системи, що працює для комп'ютерних професіоналів та любителів.

Сьогодні Unix та його похідні складають більшість операційних систем, які зараз використовуються, і його популярність продовжує поширюватися у міру зростання популярності програмного забезпечення з відкритим кодом. Все завдяки Кеннету Томпсону, Деннісу Річі та їхнім непокірливим колегам із Bell Labs, які - відмовившись спостерігати, як гинуть їхні улюблені Multics, - забезпечили, що їх операційна система Unix продовжить керувати світом.


Перегляньте відео: Basic kernel and shell and Unix OS. (Липень 2022).


Коментарі:

  1. Blase

    відмінний варіант

  2. Arashikora

    Чудова тема, вони дуже цікаві))))

  3. Gazahn

    Of course you're right. There's something about that, and that's a great idea. I am ready to support you.



Напишіть повідомлення