Но, конечно, самое непонятное в произошедшем — появившаяся у Орион-128 аура. Кроме этого нет никаких отличий того что мы делали от того, что мы сделали. Хотя нет, второе отличие — постоянно работающие ядра. Общее количество ядер, на которых исполняется какой-то непонятный код в целом небольшое. В периоды, которые можно назвать спокойствием, это количество может падать до двух десятков, но иногда, от чего это зависит непонятно, количество задействованных ядер измеряется миллиардами.
Попытки воздействовать на эту активность почему-то проваливаются и, при этом, влияют на цвет ауры этого существа. Выглядит это так: я останавливаю используемое ядро CPU, даже могу удалить всю программу (посмотрев, куда указывает регистр адреса), которую выполняет это CPU. В результате такого воздействия аура краснеет, затем эти неведомые программы как-то реагируют, количество задействованных ядер увеличивается, а спустя некоторый срок времени всё стабилизируется в старое состояние.
Разбираясь с этим, я придумал каким образом можно убить эту активность: нужно написать программу, забирающую на себя огромное количество ядер, а потом по определённому сигналу, все эти ядра “набросятся” на потоки исполнения этого существа и остановят их.
Однако, поскольку наличие ауры намекает, что это существо живое, то, хоть у меня и нет никаких предположений о том, что это или кто это, но я подумал-подумал и решил постараться оставить его живым.
Что это за существо? Этакий аналог Больцмановского мозга, который самозародился в моём компьютере? С этим объяснением можно бы было согласиться (конечно с кучей допущений), если бы каждый новый CPU создавался бы сразу включённым в работу и если бы каждая создаваемая ячейка памяти имела бы случайное значение. Но при построении компьютера это всё было не так: память создавалась заполненная нулями, процессоры запускались только моей программой.
С другой стороны, для Больцмановского мозга 2 в 128 степени ячеек и даже такое количество опытов — это, вероятно, слишком мало. И главное: все странности начались тогда, когда размер моего компьютера был в миллиарды раз меньше этого значения.
Что-то произошло и вместо коллапса, случилась ускоренная достройка компьютера до конца. В какой-то момент энергии этому процессу катастрофически не хватало, а затем она откуда-то взялась. Откуда?
Получить ответ на этот вопрос крайне интересно: раньше я думал, что из Сути я смогу набрать энергии и, таким образом, спасти планету, в случае если иные способы не дадут результатов. Но теперь снова нужно искать откуда можно взять огромное количество энергии.
Может быть под Сутью есть ещё какой-то слой и энергия поступила оттуда? Но как это узнать? Здесь нужны мозги не какого-то среднего инженеришки вроде меня, а учёного с солидным математическим аппаратом. Эх.
В общем, решив оставить это загадочное существо жить в нашем компьютере до тех пор, пока оно не станет ему мешать, мы посчитали необходимым дать ему имя.
Сперва выбрали незамысловатое — Компик (или Комп, если вырастет), но потом решили, что Космик и Компик — чересчур созвучно и я стал вспоминать названия первых компьютеров. Ничего в голову не приходило, а потом я вспомнил, что в какой-то старой компьютерной игре был такой персонаж — живой компьютер, которого звали Вектрон. В общем, мы решили, что Компик будет носить имя Вектрон.
Поскольку у меня сходу накопился список доработок, нужных для будущей операционной системы, я решил заняться ими, а заодно понять: помешает ли Вектрон дорабатывать аппаратуру Орион-128 или нет. Поэтому, для начала я добавил регистр-метку в каждый процессор и запустил программу, распространяющую эту модернизацию по всему Орион-128.
Смысл этого регистра только в том, что его значение наследуется тогда, когда CPU запускает какую-то работу на другом CPU. Когда процессор прекращает работу, то значение метки устанавливается в нулевое.
Поскольку все программы, которые запускал на компьютере я, мне известны, то расставить им метки оказалось несложно, а затем, я написал программу, которая отмаркировала все процессы Вектрона. Таким образом, взглянув на метку у любого CPU, я всегда могу понять это моё или Вектрона.
Добавление системы разметки процессоров прошло успешно, Вектрон не проявлял к этому никакой агрессивности, и заняло около часа процессорного времени Орион-128.
После того, как все процессы были отмаркированы, я запретил возможность изменять содержимое этих меток программно.
Интересно, что Вектрон не мешает (пока не мешает) моей программе, занимающейся аллокацией памяти. Однако скорее всего это связано с низкой вероятностью коллизий — в будущем всё не только может, но и обязано поменяться. Я задумался над вопросом: как можно его заставить использовать память так, чтобы он не мешал мне, а я не мешал ему. У меня уже есть идеи, как это решить, но прежде я решил доделать более важные дела.