Андрей Имранов - Восход над Шалмари
Заложил для начала глубину, равную трём. Запустил. Весь материал распался на хрен-его-знает-что и пшик вышел. Ну я так и ожидал. Закладываю сто – не запускается моя структурка, всю энергию из аккумулятора вычерпывает и дохнет. Закладываю десять – то же самое. Стал разбираться – понял. Параметр-то мой, тоже чуть-чуть, да энергии на себя забирает. А сколько этих параметров хранить надо? Столько же, сколько атомов в моём материале в степени глубины рекурсии. Да тут и чуть-чуть в охренительную прорву превратится. Нельзя, стало быть, параметр передавать.
Решил по времени процесс ограничить. Есть, знаешь ли, в магии возможность эдакий аналог таймера к заклинанию присобачить и обращаться к нему по мере надобности. Вот только раньше я над быстродействием заклинаний не задумывался, а тут пришлось. За сколько времени необходимое количество энергии наберётся? Прикинул в уме, решил, что микросекунда – безопаснее некуда, со скважинами всякими загоняться и не стоит. Подвесил материал над столиком, прикрутил заклинание. Только вот одного не продумал – я ж по аналогии с земным компьютером прикидывал, он рекурсивные алгоритмы всё равно последовательно выполняет – процессор-то один. А заклинание вполне может реальную параллельность процессов обеспечить. В неограниченном количестве этих самых процессов. Ну и опять я чуть не попал. Ладно, хоть не слишком близко стоял. Запустил свою машинку – хлоп! – и нету столика. Хороший был столик, каменный такой, основательный. А в полу – яма сантиметров тридцать глубиной, круглая такая. И видно, что яма эта – часть шара. Прикинул я пропавшую массу, смотрю на свой перстень, к которому аккумулятор прилепил, и чую, что опять Азраил меня по головке потрепал и мимо пролетел.
Ладно, батарейка заряжена, а что с ней делать? Это можно с паровым котлом сравнить. Есть в нём, скажем, сотня атмосфер, делаешь дырку, приделываешь к ней турбину и радуешься. А если в котле этих атмосфер пара миллиардов; а то и больше? В общем, взял я аккуратно тот перстенёк и отправил заклинанием в космос со скоростью где-то километров двадцать в секунду. Есть у меня теория насчёт того, что никаких параллельных миров не существует, а все эти порталы – нуль-Т кабины в одной нашей Вселенной; так что, если там, на Земле, астрономы как-нибудь увидят летящий мимо перстень, намекни им, чтоб не трогали, пусть себе дальше летит, лады?
Семён усмехнулся – замётано – и подмигнул.
– Тогда я спокоен, – улыбнулся Вадим. – Ну вот я выяснил, что микросекунда – это много. Казалось бы, чего проще, ну сделай там наносекунду или пикосекунду, а вот фигу там. И вам и нам. Не настолько этот таймер точный. У него один цикл как раз около наносекунды и длится. Плюс-минус трамвайная остановка. Поэтому меньше сотни мегаджоулей за раз у меня получить никак не выходит. Да что там сотни, обычно выходит пять-десять гигаджоулей, и ладно. Ну с этим хоть работать можно, так что особо не жалуюсь. Вот только подумаю иногда, что в котелке, в котором я себе чай кипячу, тонна тротилового эквивалента, и фигею помаленьку. А потом – ничего, опять нормально. Так и живу.
ВАДИК
Вадик вздохнул и раздражённо отодвинул клавиатуру. Зашумели, падая со стола, пустые пивные банки. Вадик задумчиво на них поглядел и принялся философствовать. Несомненно, существует некая сила, целью которой является достижение максимального уровня энтропии, возможного в системе. И не только для термодинамики. Причём в случае приложения некоей противоположной, упорядочивающей силы, первая сила возрастает экспоненциально… Иначе почему так легко написать кривую, но работающую программу и так сложно – работающую, но с красивой внутренней структурой? По логике – должно быть наоборот, а хрен там. Значит, это кому-то выгодно. Значит, здесь проявляет себя некая сила, которая противится упорядоченному. Да мы, программисты, стало быть, просто какие-то солдаты армии Порядка, бойцы первой линии в бою с силами Хаоса.
Вадик развеселился. Ткнул, не глядя, в клавиатуру и попал, конечно: «Not againnn! ARRRGhh», – прорычали динамики голосом умирающего зомби, и экран потух. Вадик потянулся, с наслаждением хрустнув позвонками, и двинулся в поход на кухню. Поле боя осталось за силами Хаоса.
– Сложность всякой программы растёт до тех пор, пока не превысит способностей программиста, – пробормотал он, вытягивая из глубин холодильника запотевшую бутылку «Золотого фазана». – Я т-те покажу, превысит! – крикнул он, погрозив кулаком в сторону оставленного компьютера. – Ещё посмотрим, кто кого, мазеборд твой за ногу.
Вадик с размаху уселся в низкое кресло, одним духом выпил половину содержимого бутылки и уставился в потолок. Мысли приняли благодушную окраску. Ну, Дванго сейчас наверняка бездельничает. Если, скажем, ему позвонить? И ещё Нике. Или лучше Нике позвонить, а Дванго на фиг не надо? Не, лучше позвонить им обоим и ещё Meгe. Мега один не придёт, Мега придёт с бабами. И с двумя, как минимум. Вот и консенсус. Сейшн устроим, ммм… Вадик мечтательно зажмурился и отхлебнул ещё. М-да, неплохо. Но не сегодня. Да, завтра. А ещё лучше – послезавтра. Потому что завтра надо сдать уже эту четырежды гребаную глюкалу, потому что иначе хрен мне, а не триста баксов. И плакали пятьсот двенадцать метров мозгов, да и холодильник пустоват чего-то. Вадик допил пиво, достал из холодильника две банки «Туборга» и решительно пошагал обратно в комнату.
– Какого, спрашивается, я тебя выключал? – спросил он у безмолвного компьютера и с отвращением ткнул в кнопку «Power».
– «I'm alive!» – торжествующе проревели колонки.
Проблема, если вдуматься, двух байт не стоила. Всего-то нужно – получить данные с пяти устройств. Вот интерфейс, вот его описание. Запустить цикл типа «пока не надоест» и в цикле же опрашивать эти пять устройств – чего уж проще. Но – некрасиво. Поскольку теоретически может возникнуть ситуация пропадания данных, особенно если устройств будет не пять, а хотя бы десять. Поэтому Вадик замутил хитрейшую систему на прерываниях, кладущую данные в общий буфер, использующую отдельные потоки для каждого устройства, семафоры, критические участки… в общем, всё, как у людей. Зато устройств эта система могла поддерживать очень много. Почти неограниченно. Заказчик, правда, утверждал, что их и пять-то бывает не всегда, но этот факт Вадика не волновал. Заказчик, как известно, никогда сам не знает, чего хочет. Программисту виднее. Сегодня заказчик говорит – пять, а завтра у него их пятьдесят пять. Так что на фиг. Ибо не фиг.
Задумчиво поводив мышкой, Вадик вздохнул и решительно ткнул курсором в пиктограмму MSDEV. Зловредная система немедленно отреагировала сообщением, что «на диске С заканчивается свободное место». Вадик поморщился и привычно потянулся закрыть раздражающее окошко, но вдруг вспомнил: «Блин, я ж у них винт под это дело выбил! Чё ж я торможу-то?» Все дела были немедленно забыты, Вадик бросился в прихожую.
(adsbygoogle = window.adsbygoogle || []).push({});