Кейд сосредоточился на своей работе. Черт! Новая ОС Нексус в режиме стресс-симулятора рухнула через семь минут. Проклятье, проклятье, проклятье! Взгляни на трассировку стека. Что вызвало сбой? Он всего лишь реактивировал стандартный код МодОС. О, черт! Он закодировал прекращение сбора данных. Это как-то связано с файлами регистрации.
Ну конечно! Это был сбой при попытке доступа к файлу регистрации. Отлично. Но что же делать? Он вручную создал пустые файлы регистрации и снова запустил симулятор. Опять сбой.
Ладно. Пусть будут не пустые файлы регистрации, а файлы с поддельной записью.
Он выглянул в окно и понял, что зря это сделал. Они Двигались по Приморской сквозной дороге, непосредственно вдоль берега, направляясь на север в Южный Сан-Франциско. Возможно, полпути уже пройдено. Сосредоточься, сосредоточься, сосредоточься.
Он скопировал случайную строку из каждого параллельного файла регистрации своего собственного Нексуса, скопировал их в нужные места и снова запустил симулятор. Черт, он все еще находился за той точкой, где рухнул. Кейд перемотал его, снова добавил файлы регистрации, ввел поддельные записи, запустил стресс-симулятор… Прошла секунда. Две. Три секунды. Десять секунд. Он не рухнул. Кейд понял, что все это время он сидел затаив дыхание. И сделал выдох.
Ранган и Илья говорили все громче и громче. Он что, шумел? Кейд снова выглянул в окно. Залив уже проехали. Это что, Потреро-хилл?[23] Черт, мы уже подъезжаем.
Стресс-симулятор продолжал работать. Нужно скопировать новый код в скрытый инъектор компайлера. Так, сделано. Чтобы его проверить, запустим компайлер с помощью инъектора. И посмотрим, остались ли прежними размеры файлов. Компилируй, компилируй. Черт, как же неприятно вот так ждать. Шоссе сделало поворот. Это СоМа — район к югу от главной улицы, Маркет-стрит. Черт, уже практически приехали.
Компилирование завершилось. Все идентично. Спасибо всевышнему за маленькое чудо. Кейд перебросил код Рангану, чтобы тот вставил его на один уровень выше в компайлер компайлера. Ранган занялся этим. Они выскочили на Дьюбос-авеню, затем свернули на Маркет-стрит. Они уже были в центре города, наверное, километрах в трех от лаборатории.
Чем теперь нужно заняться Кейду? Да, конечно, управлением исходником. Нужно его подделать. Он принялся за работу, убеждая систему управления исходным кодом, что эти изменения были здесь всегда.
Водитель свернул на 17-ю улицу, чтобы с запада подъехать к университету.
Отлично. Поддельные журналы изменений. Поддельные записи действий. Поддельные даты изменения файлов. Машина сделала поворот, затем еще один.
Ранган закончил работу, Кейд ее интегрировал. Теперь они находились на Парнассус-авеню, в нескольких кварталах от лаборатории. Впереди замигали огни.
Внедорожник сделал непонятный поворот и подъехал к заднему входу в лабораторию.
[ранган] Я загружу машину и задержу его, пока ты будешь копировать новые файлы. Годится?
Кейд кивнул. Черт!
— Мы на месте, — сказал Майерс. — В здании объявлена пожарная тревога. У нас двадцать минут. — Он выскочил из машины и открыл перед ними дверь. Они находились возле служебного входа.
[кейд] Мне нужно еще раз все проверить. Продолжайте прикрывать.
Илья принялась болтать о лабораторном оборудовании, пожарной безопасности и времени реагирования пожарных. Ранган взял Кейда за руку и повел к двери. Он что-то упустил. Что?
Вот оно! Отдельное дерево исходного кода для МодОС. Изменения в компайлере МодОС должны находиться здесь. Нужно исправить имена файлов, записи действий, даты…
Освещение изменилось. Они находились в лифте. Ранган его направлял. Кажется, на лбу проступил пот? Кажется, Майерс на него смотрит? И другой опер, Льюис, — он тоже смотрит на Кейда?
Он сделал простейшее изменение из возможных. Он ввел в дерево исходного кода новый двоичный код МодОС как новейшую архивную версию трехмесячной давности.
Дверь лифта открылась. Теперь Кейд действительно вспотел.
Нужно скопировать новые файлы на сервер, как только Ранган его запустит, и достаточно быстро, чтобы обмануть опера. Затем он должен датировать задним числом изменения файлов на сервере.
Чтобы копирование шло как можно быстрее, нужно максимально увеличить пропускную способность. Он просмотрел приложения, работавшие у него в голове, и отключил все, которые были ему доступны. Кейд отключил средства разработки, отключил симулятор и стресс-тест, свои собственные регистрационные записи, отключил телесный интерфейс, который использовали «Дон Жуан» и «Питер Норт». Хватит ли этого?
Услышав звуковой сигнал, он переключил внимание на внешний мир. Майерс провел ключом доступа по двери их лаборатории, и она открылась. Гребаные федералы!
— Где находится машина?
— Там, в углу, — сказал Ранган. — Я только ее запущу, и мы сможем скопировать все данные.