В 1965 году фирмы Bell Telephone Laboratories (часть корпорации AT&T) и General Electric совместно с Массачусетским технологическим университетом (MIT) приступили к разработке новой операционной системы, получившей название Multics. Перед системой были поставлены задачи -- обеспечить одновременный доступ к ресурсам ЭВМ большого количества пользователей, обеспечить достаточную скорость вычислений, и хранение данных и дать возможность пользователям в случае необходимости совместно использовать данные. Хотя первая версия системы была запущена в 1965 году на ЭВМ GE 645, она не обеспечивала выполнение главных вычислительных задач, для решения которых она предназначалась. Фирма Bell Laboratorie прекратила своё участие в проекте по причине экономической неэффективности.
Группа сотрудников исследовательской лаборатории Bell, во главе которых Кен Томпсон (Ken Tompson) и Деннис Ритчи (Dennis Ritchie), понимая что они не смогут использовать Multics, продолжили работать над системой, которая должна стать удобной средой для программирования. В одной из бесед был набросан проект файловой системы, этот проект затем был набран и отпечатан службой Белл, распечатка этого проекта стала рабочим документом по разработке UNIX.
Bell Laborateries отказались финансировать эту разработку, не смотря на то, что представленный Томпсоном проект должен был максимально снизить стоимость системы. Выходом из ситуации стало применение для разработки мало используемой ЭВМ PDP-7. Кеном Томпсоном было написано ядро и небольшой набор утилит. В начале применялся кросс-ассемблер для переноса системы с GE 645, но вскоре для системы был написан ассемблер, оболочка (shell) и система больше не нуждалась в поддержке со стороны другой машины.
Первым применением системы UNIX стало её использование в патентном бюро Bell Labs для подготовки документации, с этой задачей система успешно справилась.
Томпсон написал систему на языке ассемблер но хотел переписать её на языке высокого уровня. В начале он хотел написать её на Фортране, но вместе с Деннисом Ритчи занялся языком Би (B) интерпретируемым языком произошедшем от языка BCPL. Для языка Би был написан компилятор с объявлениями переменных, процедурами и т. д. Новый вариант языка получил имя Си (C). Первая попытка переписать систему на языке Си не удалась. Около года Ритчи улучшал компилятор, добавил поддержку структур (записей), в итоге система была полностью переписана на этом языке.
В систему UNIX было введено несколько концепций, которые получили огромное признание у пользователей. В системе были использованы трубы (pipes), с помощью которых пользователь мог получать результат сложного действия, соединяя трубами простые задания, вскоре сотрудниками Белл был придуман способ записи, такой последовательности, используя знак |. Это нововведение породило новую философию в программировании, была рождена концепция инструментов -- программ, которые должны выполнять одно конкретное действие и делать это хорошо. Так же в UNIX были стандартизованы руководства (manuals), с помощью которых пользователь может получить информацию о команде в стандартизованном виде.
Кену Томпсону было поручено, провести обучение сотрудников Колифорнийского Университета Беркли, то чему он их учил была ОС UNIX. Университет Беркли получил грант DARPA, и таким образом UNIX заняла своё место у истоков того, что сейчас называют Internet. Университет Беркли предоставлял свою версию системы BSD, при этом лицензия принадлежала AT&T.
Позднее, так как система поставлялась в исходниках, и её было очень легко переносить на другие компьютеры, она приобрела огромную популярность, многие фирмы стали производить свою версию системы. В конце концов версий UNIX стало очень много и надо было подумать о совместимости. AT&T и Sun Microsystems объединили усилия для создания системы обладающей лучшими чертами других версий. В тоже время сообщество пользователей UNIX было обеспокоенно этим шагом, т. к. Sun могла получить преимущество перед другими. В результате усилий двух сторон были получены две версии системы, которые теперь известны как System V и BSD соответственно. Сейчас существует стандарт POSIX, которому стараются следовать все производители UNIX-подобных систем.
...
...