Litvek - онлайн библиотека >> Грег Иган >> Научная Фантастика >> 3-адика >> страница 2
придется.

– Такое легко сказать, когда речь идет о метафоре, но большинство людей едва ли вкладывают в подобные слова буквальный смысл.

– Если говорить буквально, то я не думаю, что это потребует таких уж больших усилий, – возразила Сагреда. – Я понимаю, что меня ждет – насколько это вообще возможно для того, кто никогда не бывал в 3-адике.

– Это верно, – согласился Джингл. – Но вам следует также понять, что с комфортом можно устроиться и здесь. – Он указал на изящный наряд Сагреды. – Какая бы роль ни досталась вам по воле случая, при должной осторожности вы вряд ли нарветесь на нож в животе или какие-то серьезные неприятности. Здесь вы не более, чем второстепенный богатей, который, как и я, составляет часть игровой атмосферы.

– Я не хочу играть никаких ролей, – многозначительно заметила Сагреда. – Какими бы безопасными или второстепенными они ни были. – Она осеклась, подавив желание добавить: «и уж тем более с такой анатомией». По какой-то причине она даже не подумала о том, что ее новый поверенный, способный видеть изнанку этого выдуманного мира, вместе с тем не смог бы разглядеть ее истинного пола, скрытого за фасадом доставшегося по ошибке тела.

– Хорошо. Я не стану вас убеждать или отговаривать. – Лицо Джингла напоминало рисунок, взятый из брошюры девятнадцатого века, где перечислялись человеческие пороки и добродетели – карикатуру, созданную в качестве символа расчетливого и лукавого склада ума. Его манеры, однако же, сводили этот эффект к нулю. – Скажите, что именно вы хотите узнать.

Глава 2

Вернувшись на съемную квартиру капитана Блафф-Смоута, Сагреда расположилась за принадлежащим ее альтер-эго письменным столом и стала изучать записи, которые для нее подготовил Джингл. Хорошая новость состояла в том, что перебраться из «Полуночи» в «3-адику» она, скорее всего, сможет при помощи той же самой уязвимости графического процессора, которая помогла ей добраться сюда из мира «Востока», где она впервые обрела сознание. Опытный путешественник по имени Пейям, познакомивший «Восток» с этой уязвимостью, почти полгода обучал Сагреду и восьмерых ее друзей тонкостям своей методики. Заряженная оптимизмом, группа покинула свой мир, вообразив себя в роли этакой банды правдорубов-освободителей, хотя в итоге большая часть путешественников выбрала в неразберихе связных списков совсем не тот маршрут, по которому направились Сагреда и Матис. С того самого момента эта парочка путешествовала по игровым мирам отдельно от остальных.

Она подняла глаза и выжидающе напрягла слух, будто стук в дверь мог раздаться от одной лишь мысли о Матисе, но все, что ей удалось расслышать – это доносящееся из соседней комнаты тиканье часов. Учитывая потребность «Полуночи» в постоянном притоке свежих неигровых персонажей, которые уравновешивали внутриигровую смертность, к этому моменту он уже наверняка воплотился в одной из локаций. Она оставила свой адрес в полудюжине тайников, следуя заранее оговоренным критериям: любая общедоступная скамейка недалеко от рынка; любой насос; задняя правая скамья в любой церкви. Но время было позднее, и даже если Матису еще не довелось стать свидетелем одного-двух убийств, ему бы точно хватило ума не высовываться из дома, пока улицы были затянуты этим зловещим туманом.

Сагреда вернулась к своим выкладкам. Каждый прыжок требовал выполнения последовательности инструкций, которые отвязывали потенциальных путешественников от текущего окружения и помещали их в очередь, которая по задумке должна была содержать лишь свежескомпонованные композитные личности – лишенные каких-либо сюжетных воспоминаний и уже помеченные ярлыками новых обитателей целевого мира. Учитывая количество кода, участвующего в работе всей системы, любую машинную инструкцию можно было не только обнаружить где-нибудь в оперативной памяти, но и встретить в качестве последней команды той или иной подпрограммы. При нормальном обращении к подпрограмме вызывающий код помещал в стек соответствующий адрес возврата – гарантируя тем самым, что этот обходной путь в итоге приведет аккурат к следующей за вызовом инструкции. Но забив стек достаточным количеством поддельных адресов, можно было вынудить программу метаться по всей машине, выполняя нужные инструкции по одной за раз. Все равно что заставить пианиста, играющего сочинение Рахманинова, пробренчать “Где мой рассудок?”[1]без каких-либо изменений в партитуре – просто нацарапав последовательность стрелок, петляющих туда-сюда между нужными нотами.

Джингл уже проделал самую сложную часть работы, отыскав адреса, которые должны были предоставить доступ к каждой из инструкций – внутри кода, выполнявшегося в контексте страничных отображений, которые относились к обитателям «Полуночи на Бейкер-стрит». Вскоре Сагреде удалось добыть из этого списка всю необходимую информацию. Главная проблема заключалась в том, что ее навыки каллиграфии оставляли желать лучшего – какими бы экстравагантными хобби ни увлекались составляющие ее личности, c необходимостью окунать перо в чернильницу никто из них, очевидно, не сталкивался.

Промокнув чернила, она дважды проверила свои паучьи каракули. Хотя в тексте и не было фактических ошибок, сомнительная разборчивость почерка беспокоила не меньше, чем вид истершегося парашютного шнура. Она начала заново, проникшись симпатией к несуществующему капитану, который в детстве, надо полагать, получал хорошей порки всякий раз, как толстые, неуклюжие пальцы подводили его во время первых попыток переписать текст от руки.

К полуночи она, наконец-то, получила удовлетворительный результат. Теперь главной проблемой было забросить этот пласт чисел в стек. Графические процессоры, отвечавшие за рендеринг игрового мира как для компов, так и для клиентов, были идентичны друг другу и имели один и тот же недостаток: при определенных условиях их можно было сбить с толку, заставив перенести часть буфера изображения в стек центрального процессора. Другими словами, хитрость заключалась в том, чтобы закодировать адреса в цветах некоего предмета, а затем сделать так, чтобы этот предмет отрендерился в определенном масштабе. Пейям научил своих подопечных на глаз распознавать объекты, из оттенков которых можно было составить произвольный 24-битный RGB-вектор. В мире “Востока”, с его скудным, постапокалиптическим ландшафтом из обрывов и пещер не было ни масляных красок, ни цветовых каталогов, однако со временем они нашли способ собрать необходимую палитру из разрозненных кусочков. Скрипты СлизьНета, породившие мир «Полуночи», может быть, и придали