Книга Миллиардер из Кремниевой долины, страница 17. Автор книги Пол Аллен

Разделитель для чтения книг в онлайн библиотеке

Онлайн книга «Миллиардер из Кремниевой долины»

Cтраница 17

Бок о бок с чудными работниками, в лишенных солнечного света подвалах, я порою чувствовал, что попал в очень странное место.

Мы с Биллом были младшими в группе и, естественно, получали меньше всех, но Боб и остальные начальники не давали нам ни малейшей поблажки. Работая над RODS, мы убедились, что не уступаем лучшим местным программистам. Мне пришлось написать тысячу строк на Ассемблере – не слишком тяжелая работа, но достаточно хитрая. Два других программиста пытались меня обойти, однако их программа не справлялась с «критическими случаями» вроде одновременного отказа двух и более устройств. Я с самого начала писал структурированно и с полными комментариями, как привык в CCC. Я долгие часы проводил, проверяя написанное, – в программе не должно было быть ошибок. Впервые в жизни я писал прямо на работающей операционной системе. И мне очень понравилось.

Мы с Биллом, свободные от школы и от требований семьи, радостно ныряли в программирование и тестирование – циклы проверки занимали по 12 часов и больше. Мы оба от природы были «совами» – работоспособность достигала пика в десять-одиннадцать вечера и оставалась на уровне еще долго. Когда требовалось найти последнюю ошибку, мы не обращали внимания на время. Если Билл чувствовал, что слабеет, он хватал банку растворимого напитка «Танг», сыпал немного порошка на ладонь и слизывал, получая чистый сахарный кайф (в то лето его ладонь приобрела устойчивый оранжевый оттенок). Мы могли проработать двое суток кряду, а потом рухнуть часиков на восемнадцать – двадцать. Билл называл это «успаться».

Но сон был не главным. Необходимо было закончить работу для Лейксайда к началу семестра, и ночная смена в RODS казалась нам идеальным решением. Программа школьного расписания сильно нагружала центральный процессор, и порой Боб Барнетт, зайдя вечерком, обнаруживал, что PDP-10 ползает со скоростью улитки. Он топал ногами и кричал, изображая негодование:

– Гейтс и Аллен, вы где прячетесь? Немедленно выключите свое расписание!

Если я не писал программы, я играл на акустической гитаре дома или слушал последние новости по поводу Уотергейта. Вечерние и ночные развлечения в Ванкувере сводились в основном к «классическому завтраку» у Дэнни, нашей главной еде в три утра: яйца, бекон, блин, картофельные оладьи. Чтобы добавить острых ощущений, Билл ездил с Бобом на собачьи бега в Грешеме; они выбирали, на кого ставить, по номерам машин на стоянке. Я несколько раз съездил в Портланд Мидоуз – Боб от надежных людей слышал о жеребце Ред Робби, совершенно безнадежном на дистанции в четверть мили. Однажды его выставили на длинную дистанцию, и Боб уговорил нас рискнуть нашими кровными. Ред Робби, как всегда, неспешно трусил последним, затем, к середине дистанции, набрал ход и пришел первым. Мы сорвали солидный куш.

Мы с Биллом постоянно ходили в кинотеатр на северо-востоке Портленда на фильмы «про черных». Мы с восторгом смотрели «Суперфлай» и подобные, пока однажды кто-то не подкатил к нам во время заключительных титров:

– А чего тут делают белые парни?

Нас выкинули, но через неделю мы вернулись. Эти фильмы казались нам захватывающими.

Живя в одной квартире с Биллом, я открыл в нем нечто новое. Моя мама по-своему называла адреналиновых наркоманов, людей, любящих риск ради риска.

– Это человек, – говорила она, – ходящий по краю.

Билл Гейтс ходил по краю. Он гордился, что как-то ночью на своем «Мустанге» сделал сто шестьдесят миль от Сиэтла до Ванкувера меньше чем за два часа, вдавив педаль в пол. Я сторонился физической опасности, а Билл, казалось, наслаждался ею. Однажды он появился на пороге с загипсованной ногой. Я спросил, что случилось.

– Катались на водных лыжах с Барнеттом, – ответил Билл.

Они с обеда поехали на озеро Лакамас. По словам Барнетта, он сделал последний круг и собрался возвращаться в RODS, но Билл решил проехать еще раз – на одной лыже. Второпях он и не подумал подогнать оборудование – а это важно, если желаешь прыгать на волнах от катера. Билл упал и сломал ногу; врачи сказали, что ему придется на шесть недель отправиться в Сиэтл лечиться. Билл объявился в Ванкувере – с синей ногой, но без гипса, – через три.

– Я поеду кататься на водных лыжах с Бобом, – заявил он.

Отговорить его мне не удалось. Нога каким-то образом осталась цела.

В основном мы жили довольно дружно, но иногда Билл раздражался, особенно за шахматной доской. Я играл более системно и пользовался строгими дебютами; Билл агрессивно импровизировал. Как-то, проиграв, он от злости смахнул фигуры на пол и закричал:

– Это был самый идиотский ход в моей жизни!

После нескольких подобных случаев мы вовсе перестали играть.


Определившись с подходом, я мог настрочить код для системы управления достаточно быстро. Слабым звеном оказался глючный модуль связи, который не позволял протестировать мою программу в реальном времени, пока я не вернулся осенью в штат Вашингтон (RODS официально запустят лишь через год с лишним, в декабре 1974-го, после бесчисленных штрафов со стороны TRW). До моего отъезда я успел получить одобрительный отзыв от Джона Нортона, легендарного системного программиста, объявившегося однажды с инспекцией. Нортон мог взять пачку распечаток в дюйм толщиной, проглотить все за день и отложить в сторону. После этого, стоило обратиться к нему с вопросом, он прикрывал глаза и говорил:

– Посмотри 57-ю страницу, там нужная подпрограмма.

Когда моя работа выдержала его проверку, я был счастлив.

В свободное время я продолжал работать с симулятором Traf-O-Data. Центральный процессор PDP-10 весил почти тонну, но для моей программы он должен был действовать как чип размером с полпачки жвачки. Для начала мне нужно было определить набор примерно из трех десятков «макросов» – словесных команд, которые должны генерировать управляющие байты для процессора Intel 8008. За несколько дней я провел успешную «пересадку мозгов». Ассемблер PDP-10 не догадывался, что стал теперь Ассемблером для 8008-го.

Следующим шагом было создание собственно симулятора – программы, которая заставит работать «пересаженные мозги». Симулятор, написанный на Ассемблере для PDP-10, будет имитировать команды микрочипа. Программирование шло гладко; словно все, что я усвоил в CCC и Information Services Inc., вело меня к этой точке. К счастью, я мог завершить мое недельное задание от Боба Барнетта за двадцать часов и переключиться на Traf-O-Data. После недели упорных трудов все было готово.

Оставался третий, последний шаг – модифицировать отладчик PDP-10, чтобы Билл мог остановить программу на середине и проследить источник ошибки. Отладчик представлял собой неуклюжий участок кода, полный ловушек и тупиков, но через три недели у нас на руках было несравненное средство разработки для 8008-го чипа (мой метод оказался настолько эффективным, что Microsoft использовала его и в 1980-е годы – до тех пор, пока микропроцессоры не стали достаточно быстрыми и мощными, чтобы поддерживать собственные средства разработки). Незадолго до начала учебного года Билл завершил программу анализа дорожного движения. Мы тестировали ее на PDP-10 с выдуманными данными; симулятор распечатал впечатляющую диаграмму. Осталось только посмотреть, заработает ли программа Билла на железе Пола Гилберта Traf-O-Data.

Вход
Поиск по сайту
Ищем:
Календарь
Навигация