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