основыкнигиwin/dos*nixготовоелирикагостиФОРУМПОИСК
Эрик С. Реймонд -- Краткая история страны хакеров

Расцвет Unix

В то же время, однако, в дебрях Нью-Джерси в 1969 году зародилась идея, со временем затмившая традиции, носителем которых были апологеты PDP-10. В год рождения ARPAnet хакер лаборатории Bell Labs по имени Кен Томпсон изобрел Unix.

Томпсон занимался разработкой операционной системы с разделением времени, получившей название Multics и имевшей тех же предков, что и ITS. Multics была тестовым полигоном для некоторых важных идей, касающихся того, как можно скрыть сложность операционной системы в ней самой, сделав ее неощутимой для пользователя и даже для большинства программистов. Идея состояла в том, чтоб сделать работу с Multics (и программирование для нее!) намного проще, так, чтобы можно было концентрироваться на решении каких-то реальных задач, а не на преодолении сложностей ОС.

Bell Labs отказалась от участия в проекте, когда появились первые признаки того, что Multics превращается в бесполезную вещь (позже система распространялась под торговой маркой Honeywell, но коммерческого успеха не имела). Потерпев неудачу с Multics, Кен Томпсон начал заниматься реализацией множества идей этого проекта и своих собственных на устаревшей модели PDP-7 производства той же Digital Equipment.

Еще один хакер по имени Деннис Ритчи изобрел новый язык, получивший название Си, предназначенный для зарождающегося Unix Кена Томпсона. Как и для Unix приоритетами для Си были удобство, естественность и гибкость. Интерес к этому проекту в Bell Labs быстро рос и достиг апогея в 1971 году, когда Томпсон и Ритчи получили заказ на создание того, что мы сейчас называем системой автоматизации офисной деятельности, для использования в пределах лаборатории. Но Томсон и Ритчи ставили перед собой гораздо более грандиозную цель.

Традиционно, операционные системы писались исключительно на ассемблере для того, чтобы добиться от имеющихся машин максимальной эффективности. Томпсон и Ритчи одними из первых поняли, что аппаратное обеспечение и компиляторы стали достаточно эффективными, чтобы полностью написать на Си операционную систему и к 1974 году вся среда была успешно перенесена на несколько машин разного типа.

Такое было сделано впервые и влияние этого решения оказалось огромным. Если Unix выглядит одинаково и предлагает одни и те же возможности на машинах разного типа, для всех из них он может выступать в качестве единой программное среды. И пользователям больше не придется заново разрабатывать архитектуру программного обеспечения каждый раз, когда машина устаревает. Хакеры могли бы просто переносить инструментальные средства разработки программ с машины на машину и не изобретать велосипед.

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

Эта комбинация оказалась приемлемой для решения широкого круга вычислительных задач, в том числе и абсолютно неожиданных для разработчиков. Несмотря на отсутствие формальной поддержки проекта, он очень быстро приобрел популярность в AT&T. К 1980 году Unix использовался во многих университетах и исследовательских организациях, тысячи хакеров считали его своим.

Основными 'рабочими лошадками' эпохи становления Unix были PDP-11 и их потомок – VAX. Но благодаря переносимости Unix он работал практически на всех машинах, которые были подключены к ARPAnet. И на ассемблере никто не писал; программы на Си с легкостью переносились с любой из этих машин на любую другую.

Unix даже имел собственные сетевые возможности, вроде Unix-to-Unix Copy Protocol (UUCP): низкоскоростные, ненадежные, но дешевые. Любые две машины с Unix могли бы обмениваться электронными сообщениями по обычным телефонным линиям; эта возможность была встроена в систему, а не являлась дополнительной. Узлы Unix сами по себе начали формировать сетевую нацию и хакерская культура развивалась параллельно с ней. Созданная в 1980 году сеть Usenet быстро превзошла по размеру ARPAnet.

Несколько узлов Unix существовали в ARPAnet сами по себе. Культуры PDP-10 и Unix начали постепенно сближаться, но на первых порах развивались все же по отдельности. Хакеры PDP-10 были склонны рассматривать сообщество Unix как сборище выскочек, использующих инструментарий, который казался донельзя примитивным по сравнению с вычурными, изобилующими сложностями LISP и ITS. 'Каменные ножи и медвежьи шкуры!' – ворчали эстеты.

Но существовало и третье течение. Первый персональный компьютер появился в 1975 году. Компания Apple была создана в 1977-м, а в последующие годы ситуация менялась поразительно быстро. Потенциал микрокомпьютеров был очевиден и привлек внимание еще одного поколения молодых талантливых хакеров. Их языком был BASIC, настолько примитивный, что приверженцы PDP-10 и поклонники Unix относились к нему с нескрываемым презрением.



ПРЕДЫДУЩАЯ ЧАСТЬ
Первые хакеры
СОДЕРЖАНИЕ СЛЕДУЮЩАЯ ЧАСТЬ
Конец старых времен