Надежда гардемарина - Файнток Дэвид. Страница 50
– Черт возьми, что это значит? – испуганно воскликнул я.
Пилот закусил губу:
– Господи Боже мой, понятия не имею. Он нажал на клавишу. На экране появилось: «Неплохо для землянки, а?»
– Давайте назад.
Пилот послушно вернулся назад.
«Диаметр шахты 4, 836 метра. Смотри, какие си».
Главный инженер выругался. Я внимательно выслушал его, стараясь запомнить новые комбинации слов, которые в будущем могли оказаться полезными. Потом сказал:
– Выведите все три вместе.
Пилот Хейнц вывел на экран все три записи. «Диаметр шахты 4,836 метра. Смотри, какие сиконец фаськи, Джори! Неплохо для землянки, а?»
– О Христос, – пробормотал пилот. – Вы только посмотрите! Они написали поверх метки конца файла!
– Объясните, – резко произнес я. – И хватит возмущаться!
Пилот Хейнц покраснел:
– Простите, сэр. В навигационной операционной системе «Навдос» данные хранятся в файлах, обычно в буквенном представлении, прямо как их записали. Компьютеры работают так быстро, а языковые интерпретаторы настолько совершенны, что в компрессии нет никакой нужды. Программистам намного легче проводить проверки, если им остается только выводить данные на экран и читать их.
– Ну и?..
– Все файлы кончаются меткой «конец файла». Кто-то сделал эти надписи поверх метки конца файла. Фиксированные параметры Дарлы хранятся как раз перед переменными. Из-за отсутствия метки она не могла отличить одни от других. И чокнулась! Ничего удивительного!
– Но кто это сделал? – спросил я. – И зачем?
Главный инженер сердито сказал:
– В перерывах между путешествиями автоматический журнал Дарлы пересылается системным программистам в Луна-Централь. Если возникают какие-то модификации, постоянные параметры могут измениться. Программисты заносят новые данные в журнал, а потом ретранслируют его назад. В тот день они, должно быть, повеселились. – Лицо главного инженера, пока он говорил, заливалось краской.
– Программисты Военно-Космического Флота? – не поверил я своим ушам.
– Да, они, – выплюнул он. – Проклятые хакеры!
– Шеф! – возмутился я. С тех пор как Лига молодых хакеров проникла в банки данных Главной штаб-квартиры Объединенных Наций и стерла половину мировых налогов, слово «хакер» стало чуть ли не ругательным.
– Хакеры они и есть хакеры! – в сердцах ответил он. – Пусть Господь Бог проклянет их!
Это было богохульством, если, конечно, не понимать сказанное буквально. Что я и сделал, и произнес «аминь», дав понять, что воспринял его слова как молитву. Потом приказал:
– Проверьте соседние секторы. Скопируйте испорченные записи в корабельный журнал.
– Есть, сэр, – Главный инженер с мрачным видом застучал по клавишам пульта. – Чертовы программеры веселились, как малолетние кадеты. В банках данных хватает пустого места, но они записали свою чепуху в рабочие файлы.
И теперь мой корабль в опасности.
– Когда вернемся домой, я подам на них в суд, – заявил я жестко. – Или вызову их на дуэль, если они будут оправданы. Клянусь Господом Богом. – Идиотское заявление, но я был слишком зол, чтобы думать.
Дуэли вновь узаконили в 2024 году, чтобы взять под контроль растушую эпидемию убийств. Я поступил опрометчиво, потому что не имел представления о боевом мастерстве программистов и мог отдать Богу душу. Выбор оружия принадлежал бы им.
Главный инженер одобрительно посмотрел на меня:
– Я присоединяюсь к вам, сэр, и клянусь здесь…
– Замолчите! – взревел я. – Не смейте произносить клятвы.
– Есть, сэр, – только и мог он сказать.
– Простите, шеф. Но ответственность лежит на мне. И как бы то ни было, реакция у меня быстрая.
– Да, сэр. – Он сверкнул на меня глазами, но я не увидел в них злости – только досаду. Он был уже далеко не молод, стал полнеть и прекрасно понимал, что может погибнуть на дуэли. В общем, вряд ли стоило рассчитывать на дуэль. Тем более что программиста по имени Джори немедленно потащат на детектор лжи для допроса под наркотиками, как только мы представим журнал в Адмиралтейство.
Тут в голову мне пришла мысль, от которой я невольно нахмурился.
– Выходит, жизнь людей на корабле зависит от простого маркера конца файла? Но разве в Дарле нет резервирования? Мер защиты?
– Разумеется, есть, – ответил пилот. – Дарла постоянно ведет проверку на внутреннее соответствие.
Я оставил его замечание без ответа, а главный инженер сказал;
– Видимо, в какой-то момент она прекратила проверку. Но почему?
Пилот огрызнулся:
– Откуда мне знать? Я что, системный программист?
– Хватит! – Под моим свирепым взглядом они притихли. – Пилот, можем мы устранить «клопа»?
– Пожалуй, да, если перепишем метку конца файла.
– Не уверен, – сказал главный инженер.
– Почему? – спросили мы в один голос с пилотом.
– Потому что Дарла не среагировала на проблему. – Макэндрюс вздохнул и прикусил губу. – Компьютер использует математические процедуры к численно поставленным задачам и привлекает сложные логические программы, чтобы расшифровать то, что мы ему говорим. Именно так Дарла переводит произнесенные вами вопросы в названия параметров, чтобы вытащить их из файла.
– И?..
– Ее мудрая логика могла бы подсказать ей, что базовая масса и масса с поправкой должны отличаться и надо учесть разницу. А она не учла. Как бы то ни было, параметры запоминаются по крайней мере дважды – в резервных копиях. Как сказал мистер Хейнц, встроенные системы безопасности должны были обнаружить несоответствия.
– А они не обнаружили.
– Да. Она не читает резервные копии, и девять параметров почему-то искажены. И только системный программист может в этом разобраться. Но я подозреваю, что эти чертовы… эти проклятые шуты испортили логические программы Дарлы и она не знала, когда применять логику в связи с возникшими проблемами и когда звать на помощь.
Я стал шагать по мостику, чувствуя слабость в коленях.
– Мы сможем помочь ей?
Главный инженер мрачно ответил:
– Если Дарла не смогла распознать испорченный маркер и предупредить об имеющихся внутренних несоответствиях, перепрограммировать ее не удастся.
Наступила тишина.
– Думаю, он прав, сэр, – сказал пилот. Я сел, обхватив себя руками:
– А что, если выключить питание и полностью перегрузить ее?
Главный инженер покачал головой:
– Это может сбросить информацию в сегментах, отвечающих за ее персональность, и она восстановится как совершенно другая личность. Но если ее программы испорчены, перегрузка никак не повлияет на них. «Клопы» в них все равно останутся.
Можно приказать ей перегрузиться с резервных копий.
– Они являются копиями оригинальных программ, которые мы получили на Луне. В них будут те же дефекты.
Я выругался. Потом сказал:
– Нельзя ли переконфигурировать ее в компьютер с ограниченными функциями? Переписать маркер конца файла, заблокировать логические программы, использовать ее только для вывода на экран, а общаться с ней через клавиатуру? Тогда люди смогут хотя бы выспаться.
Они переглянулись.
– Это возможно, – ответил пилот. – Все равно теперь от нее мало толку.
– Начинайте. – Я встал и потянулся. – Блокируйте все, в чем не уверены. Я вернусь к ночной вахте, и тогда мы включим ее «в линию».
Заперев за собой люк мостика, я пошел прямо в каюту смыть запах охватившего меня страха. Надевая свежую рубашку, я в изумлении покачал головой: спасибо фортуне, что сохранила нас, позволив вовремя обнаружить сбой. Я достал из кармана распечатку и, развалившись в кресле, стал ее изучать. Как много «клопов»!
Плохо обстояло дело с параметром базовой массы, а со скоростями рециркуляции – и того хуже. Одна из наших резервных астронавигационных систем находилась в аварийном состоянии. В нашем путешествии это роли не играло, но упаси нас Бог выйти из синтеза рядом с Вегой и попытаться вычислить свое местонахождение. Эти разделы звездных карт вообще никуда не годились.