Выбрать главу

С...Д...Ж...Р...Н...Р...Н...Е...В...Д...П...В...Д...А

Дідько. Якісь ще ідеї? Потрібно швидше спілкуватись.

П...Р...А...Ц...Ю...Є...М...О...Н...А...Д...Ц...И...М

Земля вже заходить. Продовжимо о 08:00 за моїм часом завтра вранці. Скажіть родині, що у мене все гаразд. Команді мої найкращі побажання. Скажіть капітанові Ллюїс, що диско - лайно.

Венкат кілька разів кліпнув очима, які сльозилися, розкладаючи папері на службовому столі. Його тимчасовий службовий стіл у ЛРР був складним столиком у віддаленому куточку кімнати для відпочинку. Упродовж усього дня навколо товклися люди, які зайшли поїсти, та з іншого боку. не треба було далеко ходити за кавою.

- Даруйте, - сказав чоловік, підходячи до стола.

- Так, у них скінчилась дієтична кола, - відгукнувся Венкат, не зводячи очей. - Я не знаю, коли персонал для обслуговування заповнить холодильник.

- Насправді я прийшов поговорити з вами, докторе Капур.

- Що? - Венкат нарешті звів погляд. Похитав головою. - Даруйте, я не спав усю ніч. Вибачте, якщо я надто різкий. Ще раз: хто ви?

- Джек Тревор, - сказав тонкий блідий чоловік. - Я працюю у програмному забезпеченні.

- Чи я можу тобі допомогти?

- У нас є ідея для зв’язку.

- Уважно слухаю.

- Ми переглядали старий софт Патфандера. Ми зібрали копію комп’ютерів і проганяємо тести. Ті ж комп’ютери, які вони використали для пошуку проблеми і майже вбили оригінальну місію. Дуже цікава історія. Виявляється, у потоці Соджорнера є інверсія пріоритетів і …

- Ближче до суті, Джеку, - перервав Венкат.

- Так. Отже, річ у тім, що у Патфайндера є процес оновлення ОС. Тому ми можемо змінити програму на будь-що, що нам заманеться.

- Добре, і що з того?

- У Патфайндера є дві комунікаційні системи. Одна для зв’язку з нами, інша для зв’язку з Соджорнером. Можемо змінити другу систему для трансляції на частоті ровера Аресу 3. І можна змусити його вдавати, що це сигнал маяка Габу.

- Ви можете змусити Патфайндер спілкуватись з Марковим ровером?

- Це єдиний варіант. Радіо Габу мертве. Річ у тім, що єдине що робить ровер, це тріангуляція сигналу для визначення свого розташування. Він не відсилає дані назад до Габу. У нього є лише голосовий канал для астронавтів побалакати.

- То ж, - сказав Венкат, - ви можете змусити Патфайндер говорити з ровером, але не можете змусити ровера відповідати.

- Так. Та ми хочемо, щоб наш текст показувався на екрані ровера, і все що пише Уотні, щоб відсилалось назад до нас. Це потребує зміни програми ровера.

- А ми не можемо цього зробити, - підсумував Венкат. - Бо ми не можемо зв’язатись із ровером.

- Не прямо. - сказав Джек, - Але ми можемо передати Уотні дані, щоб він ввів їх у ровер.

- Про який об’єм даних ми говоримо?

- Люди зараз працюють з програмою для ровера. Патч файл буде на 20 Мег, щонайменше. Ми можемо слати до Уотні байт щочотири секунди чи коло того через наш “Кажи-і-Пиши”. На це знадобиться три роки безперервного транслювання. Тому це не вихід.

- Але ж ти заговорив зі мною, бо у вас є рішення, так? - висловив надію Венкат.

- Звісно! - запроменів Джек. - Програмні інженери виявляються хитрими байстрюками, коли справа стосується передачі даних.

- Просвіти мене, - сказав, стримуючись, Венкат.

- Ось найцікавіша частина. - сказав по-змовницьки Джек. - Нині ровер розділяє сигнал на байти, а потім виокремлює певну послідовність, яку надсилає Габ. Таким робом природні радіо хвилі не збивають налаштування. Якщо байти неправильні, ровер ігнорує їх.

- Гаразд, і що?

- Це означає, що у кодобазі є місце, де отримуються розділені байти. Ми можемо вставити маленький шматочок коду, лише 20 інструкцій, щоб записати розділені байти у файл журналу, перш ніж буде перевірена їх правильність.

- Звучить обнадійливо… - сказав Венкат.

- Так і є! - сказав збуджено Джек. - Спочатку ми оновлюємо Патфайндер нашою ОС для заміни. Потім ми кажемо Уотні як саме хакнути програму ровера, щоб додати ті 20 інструкцій. Потім ми транслюємо Патфайндеру патч ровера, а він ретранслює його роверу. Ровер пише байти у файл. Нарешті Уотні завантажує файл як файл для виконання, і той патчить програму ровера!

Венкат зсунув брови, перетравлюючи інформацію, об’єм якої був завеликим для його втомленого безсонням мозку.

- Гм, - сказав Джек. - Ви не радієте і не танцюєте.

- Отже нам лише треба переслати до Уотні ті 20 інструкцій? - спитав Венкат.

- Їх і як відредагувати файли. І куди вставити ті інструкції у файли.