Хакеры, герои компьютерной революции
Шрифт:
Компромисс заключался в том, что ночью машина могла работать в однопользовательском режиме, так что хакеры могли продолжать запускать на ней гигантские дисплейные программы и полностью управлять PDP-6.
Полностью эксперимент в разделении времени завершился не так уж и плохо. Причиной этому было создание новой системы с разделением времени, системы, душой которой была Хакерская Этика.
* * *
Ядро системы было написано Гринблаттом и Нельсоном за несколько недель упорного хакинга. После того как некоторая часть программного обеспечения была написана, Том Найт и остальные сделали необходимую для него настройку оборудования, а также добавили память - состоявшую из большого шкафа, шириной в обхвате как две стиральных машины Landromat, которая немедленно получила прозвище Moby Memory.
Администрация
Название было ироничным, в плане дружественности остальных систем и программ, ITS была куда как более совместима, чем CTSS. В соответствии с Хакерской Этикой, ITS могла быть легко связана с другими вещами, таким образом, что она могла бесконечно расширяться, а пользователи могли пробовать этот мир более эффективным способом.
Как и в любой системе расширения времени, на ITS несколько пользователей могли запускать несколько программ одновременно. Но в этой системе один пользователь мог одновременно запускать несколько программ. В ITS делался сильный акцент на использование преимуществ дисплеев, в частности была реализована весьма продвинутая система редактирования, которая работала в полноэкранном режиме ("за несколько лет до того как этим начался пользоваться весь остальной мир", - позднее хвастался Гринблатт). Так как хакеры хотели, чтобы машина работала максимально быстро (так же как и в однопользовательском режиме), Гринблатт и Нельсон написали код на машинном языке, который позволял осуществлять беспрецендентный контроль над системой разделения времени.
Внутри ITS было еще более сильное олицетворение Хакерской Этики. В отличие от остальных систем с разделением времени ITS не использовала паролей. Она была сделана так, что позволяла хакерам иметь доступ к любому пользовательскому файлу. Старая практика держать ленты в ящике, в коллективной программной библиотеке, которая позволяла остальным пользоваться ими и совершенствовать их, была реализована и в ITS. Каждый пользователь мог иметь набор персональных файлов, которые хранились на диске. Открытая архитектура ITS подталкивала пользователей просматривать эти файлы, смотреть какими интересными хаками занимаются остальные, искать ошибки в программах и устранять их. Если, к примеру, вам нужна была функция, которая рассчитывает косинус, вы могли полазить по файлам Госпера и найти его хак, который считал синус при помощи десяти команд. Вы могли бы посмотреть программы признанных хакеров, посмотреть идеи, в них содержащиеся, и восхититься тем, что они сделали. Идея была в том, что программы принадлежали не конкретным людям, а всему миру пользователей.
В ITS также сохранялось чувство сообщества, которое было у хакеров, когда на машине работал только один пользователь, а все остальные грудились вокруг и смотрели что он кодирует. Посредством хитрой координатной коммутационной системы, пользователь не только мог определить, кто еще работал в системе, просто набрав команду, но и переключиться на монитор пользователя. Можно было работать одновременно с другим пользователем. Например, Найт мог войти в систему, обнаружить что Госпер сидит на другом порту, вызвать его программу, а затем писать свой код в программу, которую хачил Госпер.
Данное свойство использовалось всеми возможными способами. Позже, когда Найт делал сложные графические терминалы, могло быть так, что пользователь сидел в тяжких раздумьях над своей программой, и вдруг, внезапно на экране появлялся шестиногий? жук. Он начинал ползать по экрану, начинал поедать ваш код, роняя повсюду маленькие светящиеся крошки. В это время за другим терминалом бился в истерическом смехе хакер, который таким непонятным способом, сообщал вам, что в вашей программе находится ошибка. И хотя любой подключившийся к системе пользователь мог заниматься не только вещами такого рода, но и забраться в ваши каталоги и удалить файлы (как они говорили "репать"), которые
в них находились, ваши программы, которые вы долго и упорно хачили и другую ценную информацию, такого никогда не делалось. При работе на ITS, хакеры всегда следовали правилам чести.Доверие, которое ITS оказывала пользователям, наилучшим образом проявлялось в обращении с проблемой умышленных выводов системы из строя. Раньше, хакерский обряд посвящения заключался в выводе из строя системы с разделением времени и нанесения ей таких увечий, что регистры перегружались избыточными расчетами и система "вешалась".
Становилась полностью мертвой. Позднее хакеры выросли из этого деструктивного режима, но часто случалось, что это представляло собой существенную проблему для тех, кто с этой системой работали.
Чем больше запоров и замков было навешано на систему, тем больший соблазн испытывал какой-нибудь случайный хакер для того чтобы поставить систему на колени. Multics, например, чтобы вывести его из строя, требовал весьма нетривиального хака. Так что всегда находился какой-нибудь "мачо", который самоутверждался вешая Multics.
ITS, в полную противоположность этому имела специальную команду с помощью которой можно было завесить систему. Все что для этого надо было сделать - просто набрать KILL SYSTEM, после чего PDP-6 с хрустом останавливалась. Идея заключалась в том, чтобы повеселиться над тривиальностью того, как это можно было делать. В редких случаях, какойнибудь лозер мог посмотреть на доступные команды и сказать: "Эй! А что делает команда KILL?", после чего завешать всю систему. В общем и целом, ITS была доказательством того что лучшая система безопасности заключалась в отсутствии всякой безопасности.
Естественно, что как только ITS начала работать на PDP-6, на систему обрушился шквал желающих отлаживать систему, который не спадал еще в течение десяти лет. Гринблатт был самым выдающимся из тех, кто тратил все свое время на "хакинг ITS", разыскивая ошибки, добавляя новые свойства и заставляя части кода работать быстрее. Так что ITS стала своего рода домом для системных хакеров.
В том мире, который представляла из себя лаборатория ИИ, роль системных хакеров была в самом центре. Хакерская Этика позволяла любому работать на ITS, но публичные последствия системного хакерства, отбрасывали неприятный оттенок на качество вашей работы.
Если вы пытались улучшить ассемблер MIDAS или отладчик ITS-DDT и если вы допускали серьезную ошибку, то все программы начинали вешаться и люди начинали пытаться выяснять , кто тот лозер, который все это устроил. С другой стороны, ничто не имело большего вызова хакерству, чем качество системного хакинга.
Те кто отвечали за планирование работы не воспринимали системный хакинг с должным уважением. Их больше заботили приложения, использовавшие компьютеры, которые позволяли идти дальше, позволяли создавать полезные концепции и средства на пользу человечества. Для хакеров система была конечной целью сама по себе. Большинство хакеров, было очаровано системами еще начиная со своего детства. И они забросили в своей жизни все остальное, после того как поняли, что наилучшим средством в создании систем являлся компьютер. Вы могли его использовать не только для того чтобы создавать системы фантастической сложности, сколь роскошные, столь же и эффективные, но затем, при помощи таких операционных систем как ITS, тот же самый компьютер сам мог быть системой. И красота ITS проявлялась сама, делая более легким написание программ, которые бы в ней потом работали, упрашивая вас добавить в нее новые свойства, и прочие "звонки и свистки". ITS была хакерским жилищем, и любой мог сделать его для себя более удобным и красивым, найдя в нем свою собственную маленькую нишу. ITS была идеальной системой для построения? других систем.
Это была бесконечная логическая спиральная петля. По мере того как люди использовали ITS, они могли принимать некоторое конкретное новое свойство или нет, но как правило они думали лишь о том, как улучшить систему. Это было естественным, потому что важный постулат хакерства утверждал, что ни одна программа не является законченной.
Вы можете всегда сделать ее лучше. Системы являются живыми существами: если люди прекращают их совершенствовать и останавливают работу над ними, то они умирают.