Но у него всего лишь счетверенный "пентюх", объектный процессор темного южноазиатского происхождения и средней руки спутниковый канал. Хорошо хоть не подгрызанная крысами телефонная пара, как у всех в этом доме...
Однако, что-то уже склеивается, что-то уже забрезжило, и через двадцать минут он схватит какую-то правду-истину за хвост...
Зажужжал диск, пошла подкачка из оперативной памяти. Это было малоприятной неожиданностью – параметры программы стали явно шалить.
На экране построчно проявилась несколько пятнистая виртуальная девушка (всего 256 цветов, 72 пиксела на дюйм для экономии памяти) и сказала не совсем мелодичным (8-битным, на 22,05 килогерц ) голоском:
– Здравствуй, милый. Я должна тебя огорчить, синхронизация дала серьезный сбой, потоки из главной группы перешли в фазу истощения. Как следствие – нехватка ресурсов памяти, динамическая оптимизация кода остановлена, сборка мусора тоже, загрузчик классов висит.
В руках у нее появилось окошко, в котором плясали параметры системы.
Программные потоки дружно входили в дедлок, в мертвую точку, как лучи света в черную дыру.
Сонливость сразу сбросило словно шляпу порывом ветра и неудача схватила его за горло крепкими пальцами, так что он не сразу смог продавить:
– Ну, как тебе не стыдно приносить такие новости? Я ведь барабанил по клавишам три часа, отлаживая все эти сраные замки на потоках. Я поставил классный диспетчер разделения времени, за который я отвалил кучу денег в Крупе. Синхронизация должна была быть надежной как рубанок, как молоток, мать твою за ногу.
Экранная девица была, так сказать, легкого поведения и происхождения: всего лишь графической оболочкой системного хранителя, дочерним модулем безликого и безногого генератора, поэтому все упреки возвращались обратно...
Напрягая как тетиву тугого лука правый воспаленный глаз, левый то уже совсем ничего не различал, мозг программиста всасывал протоколы потоков. Левая рука судорожно сжимала стакан с водой, сквозь туман проглядывалась татуировка: вертолетный винт и две буквы "С" и "Ш". Сейчас она уж не взбадривала его...
Вот здесь, похоже, сбойнул диспетчер времени фирмы "Кришна Аватар Системс". Соревновательный, быстрый и надежный доступ к ресурсам – именно так в рекламе напачкано. Как будто нет оснований не доверять, ведь "Кришна" – это марка в отличие от ширпотребовского "Микрософта".
Но все равно, почему, почему, его жизнь должна зависеть от какого-то диспетчера времени, пусть даже и марочного.
Или диспетчер ни в чем не виноват, и "Кришна" веников не вяжет? Из ряби цифр выплывало другое мнение, более весомое.
Что-то подрезало ему оперативную память, какая-то дрянь гостит у него на машине без спросу. Программа стала глючить, потому что ей примитивно не хватило места, на которое она рассчитывала.
Неужели вирус подсиропил? Да это тогда не вирус, а скотина настоящая! А Жора-Киберман из Крупы, который ему антивирусник загнал, скотина в квадрате, хотя и считается авторитетным в определенном смысле человеком. Еще намекал: мейд ин Лубянка, хуже Цербера.
А какой-то паскудник съел поллитра портвяшка и смастачил на ворованном китайском прототипе программный вирус, который тут поставил крест на его жизни.
Экранной девушке стало нехорошо из-за смертельной болезни по имени "out of memory". Она побледнела и рассыпалась на быстро тающие снежинки, только клякса и осталась. Попутно заглох системный хранитель.
Это неожиданно вызвало приступ тоски и жалости. Тоска и жалость портят человека, по-крайней мере, работе мешают, однако обитатель светового пятна ощутил ясность, которая способна вместить многое. Потоки из оперативной памяти машины словно прошли психоинтерфейс и опустились в логическую глубину его мозга.
Программный код, порожденные им объекты, ресурсы системы отразились друг в друге и в общей симметрии. Троянец в нее не входил, поэтому стала виден и он, и та порча, которую он учинил.
Остановить один поток, закончить другой, попробовать добраться до гада. Вспотевшими пальцами программист забил в щель дисковода матово-черный дискетный квадратик с "нуль-прилипалой". Лишь бы втиснулась в память... Все, она приклеилась к троянцу, не поможет ему теперь хваленый динамизм, значит пора спускать с цепи лубянского Цербера.
Программист сам почувствовал себя этим Цербером. Погнался за вихляющим мерзавцем-троянцем, и не заносит на крутых поворотах, словно нет инерции, догнал, ухватил зубами за хилый загривок. Как будто хрустнули шейные позвонки, даже вкус крови ощутился, вкус победы ...
Троянец пискнул и исчез. Потоки миновали мертвую точку и снова захороводили в наилучшем виде.
Экранная девушка восстала из кляксы, вернула себе прежнюю графическую красоту. Нет, круче прежнего сделалась, по крайней мере на десять мегабайт больше. И словарный запас изменился. Правда, не в лучшую сторону.
– Привет, красавчик, твоя взяла, ресурсная схема восстановлена и задачка вертится во всю прыть. Я тебе зуб даю, через полчаса все закончится путево.
Она подмигнула с максимально возможным лукавством. Он ее этому не учил...
– Кстати, зови-ка ты меня лучше Виртуэллой, а не просто "эй, ты". Конкретно, котик, этот идентификатор родной как для данного графического интерфейса, так и для всего системного хранителя. Эмоционально-мимический файл и база лингвистических данных лежат в корневом каталоге, но ты их типа не редактируй, а жди пока сами под тебя подстроятся. Это я серьезно, усек?
Программист глянул на яркую обложку компьютерной игры, где фигуряла решительная красотка с бластером, и к которой, надо признаться, он был неравнодушен. Красотку из игры звали Виртуэлла, так что виртуальная девушка не долго думала насчет имечка. Похоже, она переняла и внешние данные игровой красавицы: те же хлопающие стрелы-ресницы, осиная талия, разные интересные выпуклости, плюс мелодичный голосок на тридцать два бита. Ладно, это все развлекаловка, которую могла подстроить фирма-производитель. Потом уберем. Что с троянцем?
Троянец не мог попасть к нему снаружи, через сеть. Цербер – он же двухголовый, возле каждого порта зубами щелкает, да еще каждый входящий пакет треплет. На Лубянке за несоответствие спецификации начальство не только погоны, головы поотрывает, и не Церберу, а разработчикам . Но... допустим, кто-то побывал у него дома и подсадил троянца ...
Усталость вернулась обратно в десятикратном размере.
– Слышь, сегодня в натуре уже ничо не случится,– проворковала виртуальная девушка и соблазнительно предложила, протянув губки.– Эй, Онегин, как насчет покемарить? И не дрефь, если что, я тебе мигом побудку устрою.