Історія Unix: від лабораторій Bell до iPhone

Автор: Judy Howell
Дата Створення: 1 Липня 2021
Дата Оновлення: 23 Червень 2024
Anonim
История Unix. Часть первая: AT&T Unix
Відеоролик: История Unix. Часть первая: AT&T Unix

Зміст



Винос:

Той факт, що Unix все ще використовується після більш ніж 40 років, є ознакою його універсальності.

Ви можете подумати, що ваш смартфон або планшет є абсолютно новим, але технологія, що лежить в основі його, має багатовікову історію ще з 60-х років. Якщо у вас є iOS або Android-пристрій, він базується на операційній системі під назвою Unix, розробленій в Bell Labs. Навіть якщо у вас ПК під керуванням Windows, він спілкується з багатьма серверами протягом дня, багато з яких також працюють на Unix. За свою довгу історію мало дивно, що Unix все ще так поширений. Тут добре погляньте, як це дійшло так далеко.

Рання історія

Генезис того, що зрештою став Unix, розпочався в середині 1960-х років проектом під назвою MULTICS. Консорціум організацій, включаючи MIT, GE та Bell Labs, зібрався, щоб створити систему для підтримки "обчислювальної утиліти". Сьогодні ми можемо назвати це хмарними обчисленнями. На жаль, MULTICS, можливо, занадто далеко випереджав свій час, і Bell Labs врешті-решт вийшов з проекту в 1969 році, залишивши пару програмістів, Денніс Річі та Кена Томпсона, застрягли на старій техніці.


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

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

Крім цих високих цілей, у Томпсона був і більш особистий мотив: він хотів пограти в придуманий хед під назвою «Космічні подорожі».

Томпсон та Річі вирішили впровадити свою систему на корпорації цифрового обладнання PDP-7. Вони накреслили основну систему і написали її мовою складання. Вони вирішили назвати це "UNICS" як каламбур MULTICS. Незабаром вони змінили назву на "Unix".


Вони хотіли більш потужного комп’ютера, тому вони попросили керівництво придбати PDP-11, щоб розробити заявку на обробку для патентного відділу Bell Labs. Як результат, першим додатком для кінцевих користувачів для Unix була по суті текстова обробка.

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

Ні помилок, ні стресу - покроковий посібник зі створення програмного забезпечення, що змінює життя, не руйнуючи ваше життя


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

Поворотним моментом для Unix став той момент, коли він був реалізований на C, мові, розробленій Томпсоном та Річі. С була мовою високого рівня. Написання операційної системи таким чином глибоко вплине на її еволюцію; це зробило Unix портативним, що означало, що його можна буде працювати на різних комп'ютерах з відносно невеликими зусиллями. (Дізнайтеся про історію мов програмування в Комп'ютерному програмуванні: від машинної мови до штучного інтелекту.)

Unix викликав багато уваги, коли Томпсон і Річі опублікували документ про цю систему в престижному журналі інформатики Communications of the ACM у 1974 році.

Розподіл програмного забезпечення Берклі

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

Компанія Bell Labs фактично роздала університетам копії Unix у комплекті із вихідним кодом. Одним з них був UC Berkeley. Включення вихідного коду дозволило студентам, особливо Біллу Джою, внести зміни та вдосконалення. Ці удосконалення стали відомі як розробка програмного забезпечення Берклі (BSD).

Ряд нововведень вийшов із проекту BSD, включаючи першу версію Unix, яка скористалася віртуальною пам’яттю лінійки міні-комп’ютерів VAX DECs та редактора vi.

Найважливішим доповненням стала реалізація TCP / IP, яка зробила Unix, і BSD Unix, зокрема, операційною системою вибору в новонародженому Інтернеті. (Дізнайтеся більше про розвиток TCP / IP в Історії Інтернету.)

Версії, засновані на BSD, також стали популярними на новому ринку робочих станцій, особливо на комп’ютерах Sun Microsystems, які Білл Джой залишив Берклі для співпраці.

GNU та Linux

Sun не була єдиною компанією, що продає Linux. Після розпаду AT&T на початку 80-х років вона нарешті змогла потрапити і в комп'ютерний бізнес. Компанія AT&T представила System V, яка була спрямована на більш багатокористувацькі установки.

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

Річард Сталлман, програміст лабораторії штучного інтелекту MITs, оголосив проект GNU (GNUs Not Unix) у 1983 році.

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

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

Як би шалено не звучала ця схема, Стеллман зумів залучити групу програмістів для роботи над проектом, розробивши високоякісне програмне забезпечення, таке як редактори, компілятори та інші інструменти, всі випущені за ліцензіями (зокрема, General Public License (GPL)) ), що гарантував доступ до вихідного коду. Вплив GNU навіть переконав програмістів BSD очистити код AT&T з системи, зробивши його також повністю перерозподіленим.

Останнім відсутнім фрагментом було ядро, або ядро ​​системи. Ядро GNU, HURD, виявилося складніше в реалізації, ніж передбачалося. На щастя, один фінський проект хобі аспірантів виявився GNUs рятуванням благодаті. Лінус Торвальд випустив своє ядро ​​Linux у 1991 році, і хоча він не мав наміру цього статися, розпочав революцію в операційних системах. Незабаром почали з'являтися "дистрибуції" інструментів Linux та GNU, що дозволило кожному, хто має необхідні навички, мати Unix-подібну операційну систему, схожу на ту, яка коштувала тисячі доларів, що використовуються в університетах та науково-дослідних лабораторіях. Найкраще, що вони могли це робити на звичайному ПК безкоштовно. (Детальніше про сучасні популярні дистрибутиви читайте в Linux Distros: Які найкращі?)

Це було невідступним для зростаючої кількості веб-стартапів та Інтернет-провайдерів у 90-х. Вони могли безкоштовно отримати серверне програмне забезпечення та найняти яскравих молодих випускників інформатики, які знали, як запустити їх і не дуже багато грошей. Сьогодні сервер Linux / Apache / MySQL / PHP є однією з платформ вибору для постачальників веб-служб.

Перехід на мобільний телефон

Незважаючи на те, що Unix більше 40 років, його універсальність дозволяє використовувати далеко не оригінальні міні-комп'ютери, на яких він вперше працював. Один з найбільш помітних - це Apple Ap iOS, який частково базується на FreeBSD, який сам базується на оригінальному BSD-коді. Інша основна мобільна ОС, Android, базується на модифікованому ядрі Linux. Хоча жодне з них не містить оригінальний код Unix, вони зберігають багато основних ідей, навіть під гладкими візуальними інтерфейсами, далекими від командного рядка, що більшість людей асоціюється з Unix.

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