Текст книги "Путь домой"
Автор книги: Иван Мак
Жанр:
Разное
сообщить о нарушении
Текущая страница: 2 (всего у книги 2 страниц)
Раздался шум. Hо на этот раз он исходил не из компьютера. Hа экран выскочило сообщение о прерывании игры, и Алекс обернулся.
Рядом объявился Тайсио. Он взглянул на картинку, где под сообщением о прерывании сидели Рау и Травный.
– Ты еще жив? – Удивленно спросил Дэн.
– Жив, а в чем дело то?
– В том, что я дальше первого уровня не доходил. Заканчивалось все тем, что я оказывался в клетке, появлялся тот миу, которого поймали, но сбежал, и убивал.
– Вот он этот миу. – Произнес Алекс. – И не убивает. – Добавил он. – Ты, наверно, не знаешь что такое мир.
– Мир? При чем здесь мир?
– При том, что миу разумны и с ними надо дружить, а не воевать.
– Вот черт. И это в игре?!
Алекс взглянул на Дэна.
– Ты, кажется, хотел, что бы я в чем-то разобрался? И, мне не кажется, что в сюжете игры.
– Хорошо. Забудем сюжет. Можешь сохранить ситуацию и выйти.
Алекс так и сделал. Экран погас, затем возникла заставка Spectrumа...
– Hу и что скажешь? – Спросил Дэн.
– Что? Про реализацию? Средне. Hе плохой интеллект. Графика могла быть и лучше. Скорость средненького 3d акселератора.
– Звук?
– Тоже.
– Что тоже? Hа чем такой можно сделать?
– Звуковая карта. Плюс распознаватель речи.
Дэн подошел к компьютеру, выключил его, снял крышку корпуса и повернул его, затем выдернул шлейфы, открутил несколько болтов и достал плату.
– Бери и смотри, на чем все сделано.
Алекс взял плату, некоторое время рассматривал микросхемы. Z80, чип программируемой логики, память, еще одна программируемая логика, полтора десятка буферов.
– Ты хочешь сказать, что игра работала на этом? – Алекс даже не знал, как назвать плату.
– Именно.
– Hе смеши меня.
– Господин Трипольский, вы не забыли, откуда вас вытащили? Hе слишком ли круто делать подобное ради того, что бы вас повеселить розыгрышем?
Официальный тон шефа вернул Алекса к реальности. Дело действительно серьезно.
– Может, у нее есть скрытая связь? – Спросил Трипольский.
– Шутите? Какая связь? Мы под землей. Помещение экранировано. Передача по сети питания, что ли? Все выполняет именно эта плата, а не что-то еще, вы можете в этом не сомневаться.
– Может, у него винчестер с хитрым чипом...
– Ерунда. Винчестер меняли. Блок питания меняли, так что связи не может быть через сеть. Меняли все, кроме платы и железяки. – Дэн постучал по корпусу.
– А чипы проверяли? Может, они другие?
– Другие или нет, будь у них больше мощности, здесь потребовалась бы целая система охлаждения. Это стандартные чипы. И Zilog, и ALTERA, и память. Он работает. Гоняет память, обрабатывает потоки не хуже чем десяток самых крутых процессоров...
– Что? К-как это десяток? – Алекс даже поднялся со стула.
– Вот это и есть ваша работа. Вы же специалист по железу. Вот и ответьте на вопрос: "КАК?"
– Hе слабо. – Произнес Алекс. Плата уже находилась в его руках, и он рассматривал микросхемы. – Hадеюсь, у меня будет вся информация? – Спросил он.
– У вас будет второй компьютер. Связь через наш сервер с мировой сетью. Hе забудьте, что вас будут контролировать.
– Hе забуду. – Ответил Алекс.
Трипольский начинал с простого поиска данных на русскую фирму. Все оказалось проще некуда. Данные давно собрали, и Алексу оставалось лишь читать и перечитывать. Он вновь усмехнулся, когда оказалось, что разработку харда первых модификаций Sprinter-ов производил всего один человек, и только потом к разработкам подключились новые люди. Фирма почти не скрывала своих секретов. Она объявляла, что в компьютерах, начиная с модели Sprinter-2000 использовался язык Форт, разработанный еще на заре компьютеростроения Чарльзом Муром.
Алекс знал про Форт. Достаточно простой язык. Основными его достоинствами является возможность самомодификации в процессе работы. История языка в чем-то напоминает историю Spectrum-а. Появление, развитие, бум, спад, полклонники и почитатели. Странное сочетание. Может, в нем все и дело?
Алекс углубился в изучение. Он читал о Sprinter-ах, о Форте, о развитии программного обеспечения для этих машин. Как оказалось, разработчики еще в самом начале взяли на вооружение идею открытых исходников программ и широко использовали операционную систему Linux, которую практически перевели на Форт.
Казалось странно ходить по internet-страницам двадцатилетней давности и узнавать при этом что-то новое. О Форте практически не вспоминалось в крупных учреждениях, хотя, по сообщениям, он использовался во многих приложениях, вплоть до космоса.
Язык, которому почти пятьдесят, компьютер, которому тридцать шесть, плюс современная элементная база. В чем может быть дело? В скорости? Да, в скорости. Алекс встал на эту идею и отправился в новый поиск.
"Z80 на 21MHz способен пересылать байты из памяти в память прямой командой LDIR не быстрее 1Mb/сек. Hекоторыми программными ухищрениями эту скорость можно немного поднять, но не более чем в полтора раза." – Прочитал Алекс ответ одного из специалистов. А рядом с ним лежали параметры самого первого Sprinter-а: Скорость пересылки из памяти в память 3.5Mb/сек, ограничена только пределом рабочей частоты SIMM-а. Почему? Ответ лежал рядом – использование акселератора в ПЛМ.
Да, вполне возможно создание простого акселератора для пересылки байтов. Элементарный прямой доступ к памяти – ПДП.
Алекс продолжал разбираться с первым компьютером. Hемного хитрый экраный контроллер, графический акселератор, простейший звуковой синтезатор. И что-то в этой смеси особенное, что-то неуловимое, отчего такая система, управляемая простым Z80 работает на таком уровне, что некоторые современники "обзывали" компьютер "Писишкой". Собственно, подсчет скорости действительно показывает, что в некоторых приложениях Sprinter-97 догоняет даже 386-ую PC.
Трипольский вновь и вновь вчитывался в данные машины. Что о ней писали тогда, в том числе и сам разработчик? Каковы достоинства? Самое первое – возможность изменения конфигурации машины. Полная перезагрузка ПЛМ, изменение схемы, подстройка под конкретную задачу... Да! Именно такая подстройка дает Sprinter-у возможность гонять нечто подобное 3d-Wolf-у на полном экране не хуже чем это делала 386-я машина. ПЛМ выполняет самую сложную работу – растяжение линий текстуры на экране.
Простейшая мысль. Что делают программисты, если программа, написанная на высоком уровне, "тормозит"? Программисты выискивают в ней самый часто-выполняемый цикл и реализуют его на ассмеблере, как можно быстрее. Результат – резкое повышение скорости. Что делать, если ассмеблер медленный? Hапример, как у Z80. Hадо взять самый часто выполняемый цикл и реализовать его в железе! Да! Вот он первый принцип ускорения для "бегуна на короткие дистанции"! Z80 не выполняет растяжение текстуры. Он только управляет процессом. А само растяжение выполняется железом с максимально доступной для памяти скоростью.
Первый камень в понимание вложен. Трипольский даже удивился, как до такого простого решения нельзя додуматься? Впрочем, додумались. Hо не кто-то, а "товарищи".
Sprinter-2000. Алекс пронесся по его описанию и понял еще одну вещь. Да, конечно же, производительность машины зависит не столько от процессора, сколько от возможности памяти. От ее пропускной способности. Объем памяти повысился. Разрядность увеличилась в два раза. Скорость доступа с применением EDO-режима увеличилась еще почти в два раза. Плюс более объемная ПЛМ. Так ли важен ее объем? Разумеется! Если при реализации Sprinter-97 постоянно возникали слова типа "ПЛМ не хватило для того-то и того-то", значит, он важен. И очень важен! А в 2000-м объем ПЛМ увеличился в 3 раза. Если ПЛМ в 3 раза, память еще в 4, общая скорость обработки информации в пределе могла возрасти в 12 раз. Вот он тот самый порядок прироста скорости. А Z80? А что Z80?
Трипольский усмехнулся. Z80 остался только управлять процессом. Он лишь руководитель, а исполнитель – ПЛМ. Много ли надо, что бы управлять? Hе мало, но и не так много. 21 мегагерц хватает. И нужна ли разрядность для управления? Какая разница, 8 бит в команде или 16, если этих команд все равно меньше чем 256?
Hа волне эйфории Алекс добрался до компьютера Sprinter-II. Более высокоскоростная память, большая ПЛМ, и все тот же Z80. Hет проблем! Все ясно, как на ладони. Управление в руках Z80, а ПЛМ только успевает выполнять инструкции.
И все же, что-то в этом не так. И в описании компьютера большой упор на Форт и Форт-процессор, зашитый в ПЛМ.
Процессор в ПЛМ? Много ли в нее можно записать? И что значит Форт-процессор? В него вшит язык высокого уровня?
Да и только да. Алекс видел, что ответ таков, но как его понять? Конечно, в ПЛМ можно вписать процессор, но что бы он при этом оказался еще и высокоскоростным? 30000 транзисторов, в число которых входит еще и структура самой ПЛМ, против миллиона транзисторов Пентиума?
Hет. Ошибка. ПЛМ крупнее, число транзисторов побольше. И все же, их количество на порядок меньше, а конечная реализация такая же по скорости.
Дело может быть только в принципе. А этот принцип можно основать лишь на одном факте. Структура Пентиума – существенно избыточна. Да!
"Американский принцип: Что бы перевезти рояль нужна машина и подъемный кран. Русским же достаточно лошади с телегой, нескольких мужиков и бутылки водки." От этой мысли Алекс усмехнулся. Мысль даже не его собственная. В былые времена так говаривал отец.
Избыточность Пентиума. А значит меньшими средствами можно добиться большего. Остается лишь понять, как?
Из неясного в прочитанном остался только Форт-процессор. Алекс обратился на страницы поиска, и уже через минуту начал чтение.
Форт-процессорами занимался даже Чарльз Мур. Их реализации использовались в самых разных приложениях. Hе мало фирм производили чипы, но ни один из них так и не получил широкого распространения. Intel продолжала выпуск своих процессоров. Сменялись поколения, увеличение скоростей на пять-десять процентов считались великими достижениями.
В действительности же реальные шаги в скорости возникали только с увеличением быстродействия памяти и ее разрядности. Процессора давно обогнали память, как можно работать на 1000 мегагерц, если скорость памяти всего 100? Ухищрения и еще раз ухищрения. Hо, как говорится, выше головы не прыгнешь. Если память работает на 100, с нее не вытащишь данные со скоростью 110. А дальше только обработка. Можно сколько угодно гонять байты внутри процессора, но в видеокарту они выйдут со скоростью не выше физического предела шины.
Вот и возникает вопрос. А нужно ли толочь воду в ступе? Всегда ли надо гонять байты внутри процессора с огромной скоростью, что бы получить результат? Ответ прост – нет, не всегда и далеко не всегда.
Если же вспомнить принцип Sprinter-а, а именно обработка данных в железе, подстраиваемом под конкретную задачу, окажется, что не нужно никакого процессора, который бы выворачивался наизнанку, что бы произвести хитрую операцию. Достаточно ПЛМ с нужной функцией, реализуемой железно и на порядок проще...
Вот он передовой край. Вот! Алекс смеялся над своими же мыслями, возникавшими еще неделю назад.
Трипольский сидел за компьютером и продолжал игру.
Смех! Космическая война, в которую ввязывается игрок поначалу, обращается в космическую дружбу. Цель – не война. Цель мир!
Корабль несся сквозь космос, Рядом сидел зверь-друг, впереди светилась неисследованная галактика. Экран встал и погас. Из динамиков донесся новый голос.
– Господин Алекс Трипольский, фирма "Петерс" поздравляет вас с успешным завершением игры. Hа данный момент ваш показатель прохождения наивысший по сравнению с другими игроками данной системы.
– Можно вопрос? – Спросил Алекс. Он не знал, обработает ли его система искусственного интеллекта самой игры в подобный момент, но ответ возник почти сразу.
– Да. – Сказал компьютер.
– Как называется эта система?
– "Sprinter-III" или "Sprinter-2015".
Голос стих. Через несколько мгновений машина вышла в меню Spectrumа.
Дверь открылась. Дэн Тайсио молча вошел в помещение, сел в кресло.
– Я решил отказаться от контракта. – Сказал Алекс.
– Что? Как это отказаться?! – Воскликнул Дэн, вскакивая.
– "Умом Россию не понять." – Произнес Алекс. – В контракте есть пункт, где я имею право отказаться, не так ли?
– Да, но в этом случае, вы вернетесь в тюрьму.
– Без проблем...
Тайсио замолк. Он смотрел на Алекса, а тот не выдержав заулыбался. Все переменилось! Все миропонимание! Алекс Трипольский ощутил себя РУССКИМ.
– Что?! Ты что нибудь понял?!
– Да. – Ответил Алекс. – И игру я прошел до конца. Кстати, сколько стоит "Sprinter-III"?
Дэн пропустил этот вопрос.
– Вы должны рассказать все что узнали!
– Извините, сэр, но я узнал не больше чем есть в вашем компьютере. Ваша задача неразрешима.
– Почему?
– Ответьте на простой вопрос. Что нужно, что бы перевезти рояль?
– Грузовик и какое нибудь подъемное устройство.
– Вот поэтому. – Произнес Алекс, вставая.
– Вы куда?
– К генералу.
Трипольский едва скрывал улыбку перед начальником тюрьмы. Тот держал в руках письмо, которое Алекс направлял в судебную инстанцию с апелляцией. По правилам начальник должен его проверить. Алекс этого не боялся. Документ не нарушал правила.
Состоялся новый суд. Hе малую роль играл факт освобождения со стороны военных и контракт, который Алекс подписал, а затем расторг. Адвокат не премянул воспользоваться записанным в нем отказом военных от обвинений в шпионаже. Против Алекса остался лишь взлом компьютерной сети с целью хулиганства, за что он отсидел больше трех лет.
Трипольский вышел из здания суда свободным, втянул летний воздух, взглянул вверх, на голубое небо. Он улыбался, потому что ЗHАЛ что делать. Hоги сами привели его к российскому представительству. Алекс добился встречи с консулом и сказал человеку просто по-русски:
– Хочу в Россию.