Электронная библиотека
Библиотека .орг.уа
Поиск по сайту
Наука. Техника. Медицина
   Наука
      Леви Стивен. Хакеры, герои компьютерной революции -
Страницы: - 1  - 2  - 3  - 4  - 5  - 6  - 7  - 8  - 9  - 10  - 11  - 12  - 13  - 14  - 15  - 16  -
17  - 18  - 19  - 20  - 21  - 22  - 23  - 24  - 25  - 26  - 27  - 28  - 29  - 30  - 31  - 32  - 33  -
34  - 35  - 36  - 37  - 38  - 39  - 40  - 41  - 42  - 43  - 44  - 45  - 46  - 47  - 48  - 49  - 50  -
51  - 52  - 53  - 54  - 55  - 56  - 57  - 58  - 59  - 60  - 61  -
етку на экране, которая представляла собой мышь. Мышь, утыкаясь в стены, прокладывала путь по лабиринту в поисках других отметок на экране в форме ломтиков сыра. Существовала также "VIP версия" игры, в которой мышь искала бокалы с мартини. После того как она добиралась до бокала, она искала другой бокал, и так до тех пор, пока у нее не кончалась энергия, или, она не становилась слишком пьяной чтобы продолжать поиски. Когда вы щелкали переключателем, для того чтобы запустить мышь через лабиринт во второй раз, она "запоминала" предыдущий путь к бокалам и как опытный завсегдатай баров безошибочно неслась к спиртному. Вот до такой степени продвинулись дисплейные хаки на TX-0. Дисплей PDP-1 был более легок в программировании, чем это было на TX-0, поэтому на ней существовали более красивые дисплейные хаки. Самый восхитительный был создан усилиями одного из двух гуру в области искусственного интеллекта в МТИ Марвином Минским (другим гуру, конечно, был Маккарти). Минский был более общителен, чем Маккарти, и более охотно переходил в хакерский режим работы. Он был человеком с очень большими идеями в области вычислительной техники и действительно верил в то, что придет день, и компьютеры будут уметь мыслить. Он часто вызывал большое оживление, публично называя человеческий мозг "мясной машиной" (meat machine), подразумевая, что когда-нибудь будет машинный разум, не имеющий биологической природы. Невысокого роста, с блеском глаз за толстыми стеклами очков, искрящейся лысиной, и в своем вечном свитере с воротником под горло, Минский излагал в своем обычном сухом стиле, одновременно пытаясь и максимально спровоцировать слушателей и дать намек, на то, что это все представляет собой глупость космического масштаба: "Конечно, машины не могут мыслить, хе-хе-хе±". Но Минский был человеком, который хорошо понимал происходящее, и хакеры PDP-1 часто сидели на его лекциях по курсу "Введение в ИИ 6.544", который он читал, потому что он был не только хорошим теоретиком, но и прекрасно разбирался в этой области. В начале 60-х годов Минский начал организацию того, что в дальнейшем превратилось в первую в мире лабораторию, занимавшуюся ИИ. Он знал, что для того чтобы сделать то, что он хочет, ему в качестве рабочей силы нужны гении в программировании, и поэтому он воспринимал хакерство в любом приемлемом виде. Одним из вкладов Минского в растущее количество канонических хаков была дисплейная программа для PDP-1 под названием Алгоритм Построения Окружности (Circle Algoritm). Он был открыт в результате ошибки; во время попытки бамнуть несколько инструкций из короткой программы, которая превращала прямые линии в кривые и спирали. Минский случайно напечатал вместо символа "Y" символ "Y со штрихом" (видимо имелась ввиду первая производная, а программа представляла собой программное построение сплайнов - пр.перев.) и вместо того чтобы начать чертить, как ожидалось, тильдообразные незавершенные спирали, компьютер нарисовал окружность. Это было несколько неожиданное открытие, при дальнейшем исследовании которого родилось сложное математическое описание процесса. Хакеря программу дальше, Минский использовал алгоритм построения окружности как отправную точку для более сложной программы моделирования, в которой три частицы взаимодействовали друг с другом и оставляли удивительные завитки на экране, создавая нечто похожее на розы с переменным количеством листьев. (Скорее всего, имелась в виду задача моделирования взаимодействия трех тел - пр. перев.). "Силы, приводившие частицы в движение были полностью неземными", - позднее вспоминал Боб Вагнер, - "Это была симуляция нарушения законов природы". Позднее Минский назвал этот хак "Три-Поз: Трехпозиционное Изображение", но хакеры любовно назвали его "Минскитроном". Слаг Рассел этим был очень вдохновлен. На собраниях в Хайэмовском Институте несколько месяцев назад, он и его друзья обсудили критерии самого радикального дисплейного хака. Так как они все были фанами дешевой научной фантастики, особенно романов, где действие происходило в космосе и автором которых был Е.Е. "Док" Смит, то они решили, что PDP-1 будет весьма неплохим компьютером для объединения фильма категории "B" и игрушки стоимостью в $120,000. Результатом этого объединения должна быть игра, в которой два игрока могли бы биться друг с другом в открытом космосе. В Хайэмовском Институте была немедленно организована Группа Изучения Космических Военных Конфликтов, которая вынесла авторитетное решение о том, что Слаг Рассел должен быть автором этого исторического хака. Прошло несколько месяцев, а Рассел еще и не думал приступать. Вместо этого он разглядывал картинки, рождаемые Минскитроном, и щелкал переключателями, когда программу начинало клинить. Поначалу он был восхищен ею, но вместе с тем продолжал считать, что этот хак является слишком абстрактным и математическим. Через некоторое время он сделал окончательный вывод: "Эта демка - полная фигня! Около тридцати двух или около того команд, которые в реальности ничего не делают". Слаг знал, что его игра про войну в открытом космосе, должна кое-что делать. Если использовать для описания этого доморощенные научно-фантастические термины, то она должна была это сделать таким способом, который никто и никогда раньше не использовал. Чувство, которое поначалу привело Слага к компьютерам заключалось в ощущении силы, которые вы получали при запуске всех этих чертовых штуковин. Вы могли приказать компьютеру сделать что-либо, а он начинал упрямиться и биться с вами, но, в конечном счете, вы одерживали верх, и он делал то, что вы ему говорили. Конечно, он всего-навсего отражал вашу глупость, и часто то, что вы приказывали ему сделать, приводило к абсолютно другому результату - отвратительному и безвкусному. Но, в конце концов, после пыток и несчастий, он делал в точности то, что вы хотели. Чувство, получаемое в результате этого, было несравнимо ни с какими эмоциями в мире. Оно могло сделать из вас наркомана. Именно к этому пристрастился Слаг Рассел, и он видел, что с остальными, кто сидел до рассвета в Клудж Комнате, было то же самое. Похоже, он догадывался, что их всех там держит - это было ощущение силы. Слаг испытывал подобное, хотя и менее яркое чувство при чтении романов Дока Смита. В его воображении рисовались образы белого ракетного крейсера несущегося в пространстве под рев двигателей, и он страстно хотел, чтобы ему удалось реализовать это же ощущение за консолью PDP-1. Это были именно те "Космические войны", о которых он мечтал. И он еще раз поклялся написать их. Но позднее. Слаг не был столь же обуреваем процессом написания программ как другие хакеры. Иногда ему нужен был толчок. После того как он сделал ошибку, раскрыв свой большой рот и обмолвившись о программе, которую он собирался написать, хакеры PDP-1, всегда страстно желавшие посмотреть на новый хак, который будет добавлен к куче лент лежащих в ящике стола, начали его подгонять. После бормотания под нос разных оправданий, он еще раз подтверждал, что он ее пишет, вот только он никак не может понять, как написать процедуры расчета синусовкосинусов, столь необходимых для отрисовки движения корабля. Коток знал, что это препятствие может быть легко преодолено. На этот момент, Коток был в весьма тесных отношениях с инженерами из DEC, офис которой был расположен в нескольких милях от Мэйнарда. DEC была фирмой внутри которой были весьма неформальные отношения. В отличие от большинства компьютерных фирм, в ней не считали хакеров из МТИ потрепанными и легкомысленными компьютерными рейдерами, за которых их, возможно, принимала IBM. Например, однажды, когда один из компонентов вышел из строя, Коток позвонил в Мэйнард, и сообщил об этом сотрудникам DEC. Они сказали: "Приезжайте и заберите замену". За то время, пока Коток до них добрался, уже было много позже пяти вечера, и офис был закрыт. Тем не менее, ночной сторож позволил ему войти внутрь, найти стол инженера с которым он разговаривал и позволил покопаться в его столе, до тех пока он не нашел нужную запчасть. Это было весьма неформально, что и привлекало хакеров. Поэтому для Котока не было большой проблемы в том, чтобы прийти в Мэйнард, где кто-нибудь наверняка имел готовую процедуру расчета синусов и косинусов, которая работала бы на PDP-1. Несомненно, она была обнаружена у одного из сотрудников DEC, а так как информация была свободной, Коток без всяких проблем принес ее в здание N 26. "Вот она, Рассел", - сказал Коток, держа в руке ленту с программой. "Ну что ты теперь скажешь?". Теперь у Рассела не было никаких отговорок. Так что он потратил все свободное время на написание этой фантастической игры для PDP-1, игры, которой никто никогда ранее не видел. Уже в скором времени он тратил на нее все свое время, в том числе и рабочее. Он начал ее в первых числах декабря. Приближалось Рождество, а он все еще занимался ее хакингом. Когда календарь на стене сменился на 1962 год, он все еще хачил программу. К этому моменту Рассел был в состоянии поставить точку на экране, которой можно было управлять, нажимая на крошечные переключатели контрольной панели. Точка могла ускоряться и менять свое направление. Затем он начал работать над формами двух ракетных крейсеров: оба были классическими космическими кораблями из мультфильмов. Для того чтобы отличать их друг от друга, он сделал один корабль в виде короткой сигары с утолщением по середине, а второй - в форме тонкой трубы. Процедуры синуса и косинуса Рассел использовал для того, чтобы управлять движением кораблей в разных направлениях. Затем он написал процедуру стрельбы торпедой (маленькой точкой). Она вылетала из носа космического корабля, после того как Рассел нажимал на специальный переключатель. Компьютер выполнял определение положения космического корабля и торпеды, если они оба находились в одной точке, программа вызывала процедуру, которая заменяла несчастный корабль случайным месивом из точек, которые представляли собой взрыв. (Этот процесс назывался "обнаружением столкновений"). Все это представляло собой существенный концептуальный шаг по направлению к программированию в "реальном времени": события, происходившие в компьютере, совпадали с временной шкалой, в которой обычно работали человеческие существа. Другими словами, Расселу удалось сэмулировать онлайновый, интерактивный стиль отладки, который почитали хакеры больше своей свободы, и который позволял видеть какая из инструкций вашей программы обработалась неправильно. После чего, использовав переключатели или Flexowriter можно было перескочить на другую инструкцию, причем все это время на машине работал отладчик DDT. Игра "Космические войны", которая была компьютерной программой, помогла понять, что все игры, а, может быть и что-нибудь еще, работают как компьютерные программы. Когда у вас что- то начинает не получаться, вы модифицируете параметры и, если повезет, это помогает. Затем вы добавляете новые команды в программу. Те же принципы были пригодны и для стрельбы по мишеням, выработке стратегии для игры в шахматы и написания курсовой работы в МТИ. Именно поэтому компьютерное программирование было не только технической гонкой, но и подходом к решению жизненных проблем. На последних стадиях программирования, Сандерс помог Расселу, и они предприняли несколько 6-8 часовых сеансов хакинга. Где-то к концу недели, в пятницу, Рассел продемонстрировал первую версию игры. В ней были два корабля, у каждого из которых было по тридцати одной торпеде. Также на экране присутствовало несколько случайных точек, которые изображали собой звезды на этом небесном поле битвы. Вы могли маневрировать кораблями, щелкая четырьмя переключателями на консоли PDP-1, которые представляли собой "поворот по часовой стрелке", "поворот против часовой стрелки", "ускорение" и "выстрел торпедой". Слаг посмотрел на первую, еще сырую версию игры, и положил ленту с программой в коробку, где лежали системные программы для PDP-1, и начал ожидать модернизаций со стороны своих товарищей. "Космические войны" не были простой компьютерной симуляцией, вы действительно могли быть пилотом ракетного крейсера - это был осуществившийся в реальности роман Дока Смита. Та же самая сила, что заставляла Рассела делать эту программу, которая позволила создать на PDP-1 свою собственную маленькую Вселенную, была доступна и для других хакеров, у которых были свободны руки для улучшения вселенной Слага Рассела. И они сделали это немедленно. О направлении улучшений можно было бы догадаться по общей реакции хакеров на оригинальный код, который использовал Рассел для своих торпед. Зная, что в реальной жизни, это оружие не всегда совершенно, Рассел решил сделать свои торпеды более реалистичными. Вместо того чтобы заставлять их летать по прямой, до тех пор, пока у них не заканчивалось топливо, после чего они взрывались, он добавлял в их движение некоторые случайные вариации по направлению и скорости. Но вместо того чтобы воздать должное правдоподобию, хакеры резко его осудили. Им нравились хорошо работающие системы и надежные инструменты, а столкновение с тем, что работало ненадлежащим образом их привело в бешенство. Рассел позднее понял, что "оружие и инструменты, которые не слишком надежны, не пользуются большим уважением у людей, которые обычно привыкли им доверять", и это было особенно характерно для данного случая. Но, конечно, это все можно было очень легко исправить. Преимущество, которое имел мир программ перед реальным миром, состояло в том, что вы могли решить серьезную проблему, такую, например, как плохо управлявшиеся торпеды при помощи всего лишь нескольких команд. Именно это привлекало в хакерстве больше всего. После того как торпеды были поправлены, народ начал тратить много часов на дуэли в открытом космосе, и еще больше времени на то, чтобы улучшить "Космические войны". Питеру Самсону также понравилась идея "Космических войн", но он не мог вынести вид случайно сгенерированных точек в качестве звездного неба. На настоящем небе звезды располагались в строго определенном порядке. "Мы сделаем то, что есть на самом деле", - дал себе обещание Самсон. Он взял толстый атлас звездного неба и начал вводить данные в написанную им процедуру, в результате работы которой генерировались настоящие созвездия, которые были видны в ясную ночь наблюдателю на экваторе. Присутствовали все звезды до пятой величины включительно. Самсон даже повторил их относительную яркость, управляя частотой зажигания на экране точки, представлявшей собой звезду. С помощью программного трюка он добился, чтобы по мере игры, после того как экран занимал 45 процентов неба, небо сдвигалось в нужную сторону. Помимо добавления правдоподобия, данная программа "Дорогостоящего Планетария", дала игрокам карту, по которой они могли производить стрельбу ракетами. Поэтому данную игру можно было также назвать "Стрельбы по Кассиопее". Еще один программист по имени Дэн Эдвардс, был неудовлетворен безостановочным движением двух сражающихся кораблей, что делало игру больше похожей на тест на быстроту пальцев. Он понимал, что добавление гравитации придаст игре стратегическую компоненту. Поэтому он создал в центре экрана звезду-солнце. В том случае если вы пролетали мимо, вы могли использовать притяжение солнечной гравитации для придания скорости, но если вы были не слишком осторожны и приближались к звезде слишком близко, то солнце вас притягивало, что было неминуемой гибелью. До того как были освоены все стратегические приемы данного усовершенствования, Шэг Гаретц, один из троицы Хайэмовского Института, разработал еще одно интересное новшество. В одном из романов Дока Смита он вычитал, что эти космические рейдеры могли исчезать в одной галактике и появляться в другой посредством "гиперпространственного тоннеля", который переводил вас в загадочное N-ное измерение. Он добавил в игру возможность перехода в "гиперпространство", позволяя игроку в отчаянный момент избежать неприятной ситуации, нажав на "паническую" кнопку, которая перебрасывала его корабль в гиперпространство. За всю игру гиперпространством было разрешено пользоваться трижды, причем, вы никогда не могли заранее знать, куда вы попадете. Иногда вас выбрасывало в непосредственной близости от солнца, и оставалось только наблюдать за тем, как ваш корабль безнадежно притягивается к звезде и находит свою безвременную кончину на ее поверхности. Отдавая должное оригинальному хаку Марвина Минского, Гаретц запрограммировал вхождение в гиперпространство так, что корабль оставлял после себя "фотонную ударную волну" - световое пятно в виде следа, часто остававшегося на дисплее в результате работы Минскитрона. Вариации были бесконечными. Изменив несколько параметров, вы могли играть в "поливаловку", в которой торпеды выбрасывались потоками, вместо того чтобы выстреливаться по одной. "Давайте включим звездный ветер!", - восклицал кто-нибудь, и тут же хачил игру. После чего появлялся искажающий фактор (warping factor), который заставлял игроков подстраивать свои положения каждый раз после выполнения перемещений. Хотя принимались все улучшения игры, сделанные хакерами, считалось крайне плохой формой поведения никому не сообщать о "странных модификациях" игры. Поэтому эффективное общественное давление, которое вдобавок было усилено Хакерской Этикой, стимулировало изготовление новшеств, а не разрушительных свойств и предотвращало появление подобного беспорядка. В любом случае, хакеры уже занимались этими невероятными изменениями в системе, и они использовали дорогостоящий компьютер для того, чтобы играть в самую великую игру в мире. В "Космические войны" играли до одури. Для некоторых она стала пристрастием. Хотя никто не мог официально записаться на сеанс времени, чтобы посвятить его игре, всю эту весну, каждый свободный момент на машине был занят какой-нибудь версией игры. С бутылками Коки в руке (а иногда и с деньгами на кону), хакеры пускались в марафонские турниры. Рассел написал процедуру, которая вела подсчет очков и количество общих выигранных игр, которые печатались на экране в восьмеричном виде. Машинная форма записи не представляла никакой проблемы, так как все легко читали восьмеричные числа. Через некоторое время стал очевиден главный недостаток игры: переключателями на консоли PDP-1 было крайне неудобно управлять, потому что приходилось болезненно выворачивать локти, чтобы держать руки под определенным углом. Именно по этой причине Коток и Сандерс однажды пришли в клубную комнату TMRC и начали подбирать запчасти, из которых впоследствии был собран один из первых компьютерных джойстиков. В течение, примерно, часа вдохновенной работы конструкторской мысли, они сумели собрать из частей лежавших, а то и просто валявшихся по клубной комнате, систему управления. Верхняя ее часть была из масонита, а сама корпусная коробка была изготовлена из дерева. На них были закреплены переключатели для поворота и ускорения, а также кнопка для перехода в гиперпростраство. Все кнопки управления работали бесшумно, так что вы могли тайком подобраться к вашему противнику или, в случае необходимости, скрытно нырнуть в N-е измерение. По мере того как фаза программирования постепенно сошла на нет, некоторые хакеры потеряли всякий интерес к "Космическим войнам". Другие, напротив, вырабатывали в себе инстинкты убийц, разрабатывая целые стратегии того, как можно было бы побыстрее укокошить своего противника. Большинство игр выигрывалось и проигрывалось в течение первых нескольких секунд. Вагнер стал приверженцем стратегии "лежать и ждать". При ее использовании, вам приходилось тихонько ждать, пока гравитация не начнет притягивать вас к солнцу, затем надо было резко броситься вперед, расстреливая торпедами своего оппонента. Был еще один вариант, который назывался "Заставка CBS". В этом сл

Страницы: 1  - 2  - 3  - 4  - 5  - 6  - 7  - 8  - 9  - 10  - 11  - 12  - 13  - 14  - 15  - 16  -
17  - 18  - 19  - 20  - 21  - 22  - 23  - 24  - 25  - 26  - 27  - 28  - 29  - 30  - 31  - 32  - 33  -
34  - 35  - 36  - 37  - 38  - 39  - 40  - 41  - 42  - 43  - 44  - 45  - 46  - 47  - 48  - 49  - 50  -
51  - 52  - 53  - 54  - 55  - 56  - 57  - 58  - 59  - 60  - 61  -


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