"Магия ПК" №9(75)/2004
Андрей Никитин (г.
Волгодонск)
Не нравится мне
современный компьютер…
Не нравится
и все. Начнем с того, как он задуман: красивый, мощный,…
открытый всем напастям и невероятно тупой...
Эти
грустные мысли посетили меня
после очередной переустановки системы,
изрядно поломанной зловредным вирусом залетевшим с почтой. Почему
маленькая и простенькая
программка может так все
покорежить и столько всего уничтожить?
И никакая защита не помогла. В
вирусной базе сколько уже вирусов прописано? Правильно, более 100 тысяч. А толку?
Сказочка про зловредного вируса.
Сегодняшний
компьютер — что-то среднее между большим складом вокзалом и
городской свалкой. В нем есть вроде
все, как в Греции. И вот зловредный вирус-диверсант пробирается в компьютер
с заданием попортить чужое имущество. У одного из входов он видит
целую роту охранничков — они проверяют, просвечивают и
пронюхивают все и вся. Муха с бомбой не проскочит.
Но диверсанту бомба и не нужна. Он знает, где и что взять. И из оружия у него только идея. Хотя и идея часто бывает поводом для ареста.
На контроле просто так никого
не пропускают. Все под подозрением. Но если
все — значит никто. Тревога звучит
постоянно, и к ней уже все привыкли. Проверяют по большей части на основе
накопленного опыта. И диверсанта
пропустили — у него же нет ничего
подозрительного. Заподозрили было,
в черных мыслях, но это у нас кругом.
И не только пропустили, но еще и
дали ключи от складских дверей, да
попросили закрыть дверь на ключ с той стороны. Это он с
удовольствием, зашел, закрыл и, наконец, огляделся. В центре огромного помещения стоит конура, видно
бронированная. Вокруг конуры большой
круглый стол за ним несколько
начальников. За каждым начальником
все его работники разместились
со столами, шкафами и бесконечными папками для документов. Работают— только
бумажки во все стороны по столам
мелькают. За круглым столом и
главный распорядитель есть. Куда
он обратится там и работать начинают, а остальные наоборот работу бросают — перекур. Если какой-то начальник или все уже сделал, или просто
больше не нужен сегодня — встает
и уходит вместе со всеми своими работниками, со столами стульями, шкафами и папками. Только горы мусора после них остаются. А этом
месте новый начальник появляется,
с работниками, столами,
стульями.
А вокруг
— чего только нет! Оружие, сокровища, библиотеки, антиквариат и все открыто. Кучами на полу
рассыпано с мусором пополам. Бери — не
хочу. Все выходы открыты и никакой охраны.
Она же вся на входе. Только камеры
слежения под потолком.
Диверсант
быстренько подобрал себе оружие и пошел наводить свой порядок. Потолкался
во всех группах работников, перепутал все бумажки, а кое-кого — по башке и в угол…
Сначала
это было незаметно, но вскоре наступил полный хаос. Бумажки на
круглый стол ворохом посыпались, и в каждой вирус-диверсант в подарок
свою копию посылал. На память. Кончилась нормальная работа. Все и
всем «за так» раздавать начали.
Тревога.
Кругом завыли сирены, замигали огни. Ну и бог с ними — охрана-то за
запертыми дверями входа осталась и сюда когда еще доберется.
А вирус
сил поднабрался — ему уже и охрана не страшна. Он ее попросту
разогнал. Еще немного повеселился — и рухнула вся система как карточный домик.
Только конура и осталась. А вирус на обломках пляшет. Теперь он — самый
сильный.
Тут и
сказочке конец пора выводы делать.
Что же
привело к такому плачевному результату?
Полная
«демократия» и открытость структуры внутри и излишняя подозрительность
на входе. Тот, кто в конуре, —
это система машинных команд. Ее ни один
вирус не возьмет, потому что входа
туда нет. Выход есть, а входа нет. Это
нам первый узелок на память. А вот
все остальное программное обеспечение
компьютера работает в одном пространстве и расположено в одной памяти. А между тем еще в самом начале 20-го века адмирал Макаров всему
миру указал: корпус корабля надо переборками на отсеки делить, тогда ему
никакая пробоина не страшна.
Раньше
развитие компьютера ограничивала память, оперативная и внешняя. Их малый
объем диктовал экономное использование. Потому и свалили все в одну кучу. Теперь
проблемы с памятью отступили на второй план, а архитектура осталась той же: все вместе, без разбору. Когда эта архаика разрабатывалась, Интернета и в проекте не было. И вирусов тоже. Да и сам компьютер еще сильно на своего предка смахивал — «железного Феликса». Двигаем рычажки — набираем число. Крутим ручку — получаем результат. В смысле философии компьютер от этого арифмометра недалеко ушел — вот данные, вот программа действий, вот результат. Нет, конечно, современные технологии свое дело сделали — быстродействие возросло многократно. Но в душе он все тот же — быстрый, но арифмометр. И логика у него «от Феликса», и архитектура, и философия.
Специфика
задач сделала его таким. За клавиатурой поначалу сидел программист,
он всегда знал, что и как делать. И все у него должно быть под рукой — и программы, и
данные. Потом на смену программисту
пришел оператор, потом —
пользователь. Каждый все меньше
знал и все больше хотел. И то
пусть делает, и это...
Вот и
повесили на компьютер разного рода прибамбасы.
Куда денешься — народ требует! А компьютер, каким был,
таким и остался, Вычислитель приспособили для нужд народного хозяйства...
Вот ведь
незадача, делали изначально дружественный к человеку агрегат, а получили... «как
всегда». Он каждый наш чих сохраняет,
все копии в памяти держит, даже
самые временные, чтобы «все под
рукой», а результат — мусорная свалка, которую надо постоянно чистить. Он
с человеком — рука об руку,
открыт и приветлив. Зря, оказывается.
А вот получи вирус в систему! Нельзя быть таким открытым!
Он
всегда готов помочь. Даже подскажет,
как лучше себя взломать, как принять
вирус и угробить систему вместе с данными. Поможет дураку
залезть туда, куда ему лучше не
соваться по причине полной
неграмотности. У него из защиты —
только таблички предостерегающие.
Только кого ими остановишь? Никто
из вредителей, дураков и вирусов их даже и
не читает. Если у банкиров в их сети
стоят такие же аппараты, как у
меня дома, я бы в хакеры пошел,
пусть меня научат…
Никакие
охранные программы не могут изменить сам компьютер. Да они уже и сами себя боятся.
Транспарант «Осторожно, вирус» висит
постоянно, а что толку? Пароль — это как замок на двери. Он, только для честных.
А для вора это сигнал к началу
активных действий по изъятию
ценностей. Ведь все же открыто!
Ох, и
надоела сказка про многозадачность. Мол, компьютер может одновременно
делать много разных дел — и вычислять, и рисовать, и кино показывать.
Тому, кто во все это верит, предлагаю получить почту в момент записи нового
диска на пишущем дисководе. Да, в момент прожига. Нет
желающих? Лучше и не пробовать.
Многозадачность
— хитрая штука. В
принципе, это возможность полнее использовать
скоростные возможности
процессора. Если в один момент времени
процессор может выполнять только
одну задачу, то уж за два любых момента,
наверное, две? Так, да не так.
Процессор готов прерваться везде
и всегда, в любой момент. Если задача
имеет высокий приоритет, то только
она и будет выполняться. До прерывания
работы по причине, от процессора
не зависящей. Допустим, не успевают
подносить ему работу. Он берется
за следующую, низшего приоритета, если там все подготовлено. А если вновь на горизонте замаячила задача с высоким приоритетом, он тут же все бросит и кинется выполнять эту задачу. И не дай бог, появятся две задачи с одинаковым приоритетом — он будет выполнять обе... или обе загубит. Это
же психология шабашника!
То, что
мы имеем, это виртуальная многозадачность.
Реальная многозадачность возможна
только в многопроцессорном компьютере. Процессоры работают в независимых режимах, на каждом
— своя задача.
Да, не
так. Сказки не надо рассказывать. Хотим обеспечить все пожелания трудящихся
при отсутствии реальных возможностей.
Можно
ли сделать компьютер, устойчивый
к вирусам и взлому, ввести реальную
многозадачность, а не виртуальную,
как сейчас? Наверное, можно. Но
не при такой архитектуре. Для этого
надо разделить программное пространство
и развести решаемые задачи.
Программно этого не сделать. Только
конструктивно, в железе.
Если
каждая задача решается в своем пространстве, и только у главного
процессора функции «распределителя» очереди на отдельные куски вычислений,
то можно говорить о реальной многозадачности. А не как сейчас, только
об ожиданиях и прерываниях. Почти каждый даже не шаг, а только желание
шагнуть, тащим на процессор...
При разделении
пространства скоростной процессор остается использовать
только по назначению. Не для работы программ, а для вычислений, обработки
видео- и аудиоинформации. Это вычислительный канал. Все остальное — в другом месте и
в другое время. Конечно, лучше бы
сделать системный блок с прошитой или другой, но такой же надежной памятью, с которого можно только получать информацию.
Получить можно, а изменить в процессе
работы — нет. Во время установки
— любые изменения и адаптация под
конкретный компьютер, а потом —
ни-ни. Тот же подход и для программ
— воткнул блок, прописал его и
забыл, где стоит. Он всегда будет работать.
Также
надо разделить и информационное пространство. Сейчас нас только
предупреждают - вот здесь — жизненно важная информация, не надо ее
трогать. Если нельзя трогать — уберите подальше! Не только от дураков, но и
от «диверсантов».
Программы
— это же в первую очередь информация, и только потом — приказ
к действию. Их и приравняли к информации, кинули в общую кучу В
результате только ошибки набираем при перетряхивании бесчисленных сундуков
с барахлом. Мы все перебираем, перебираем, а ошибки все копятся , копятся... В очередной раз достали,
пыль потрясли, развернули, а читать уже нечего. Все, доигрались, менять
надо.
Если
программное пространство жестко разделено, то каждая программа —
миникомпьютер. А самое главное, в нем ничего не может изменяться. Функции
такой нет. Изменения возможны только со стороны пользователя, с отдельного
входа. Для вируса такой компьютер — как коридор с запертыми дверями.
И только в конце коридора маленькое окошко. Что надо? Или получи
справку, или иди ты…
Теперь
и почту можно принимать в отдельной камере, открывать без опаски. Зловредный вирус здесь бессилен, а
вот себя проявит. И — под белы ручки в кутузку.
Выход в
Интернет станет безопасным. Если что, локальность пространства выручит. Все
не спалите — только то, что вовремя не убрали под замок в
надежное место, а не под табличку... Но тут уж сами виноваты — обижаться не на кого.
Неужели
никто не знает про эти проблемы? Знают. Нет тут никаких секретов. Примерно то же самое вам скажет
любой конструктор электроники и даже просто грамотный человек.
Почему
же делают все наоборот? Потому что современный компьютер — хорошая
система отъема денег у населения. Программист, может быть, и разберется,
как, что и где можно поправить, а пользователь только платить будет.
За все. И за вирусы, и за систему, и за открытость этой системы… Одни системы делают, другие
— программы и защиты, а третьи все это курочат и
взламывают. Все при деле и при деньгах.
Зачем нужна непотопляемая система, по адмиралу Макарову? Не нужна. Наоборот, мы каждый год по новой системе выдавать будем. Пусть ломают. Зачем закрытая система и разделение пространств? Это что же, расстаться с потенциальной угрозой взлома и вирусной экспансии? Нет уж, пусть
все остается, как было.
Почем
опиум для народа? Правильно — по деньгам. Кто тут крайний? А
крайний всегда — пользователь. Ему за всех платить.
Недавно
у фирмы Microsoft какие-то хакеры
дистрибутив системы Windows увели.
Если уж и у них защита не сработала, значит, время требует
перемен. Покатались — пора и саночки возить.
Камо грядеши?
Компьютер вроде бы умный, а копнуть поглубже — даун сверхскоростной.
Говорят, что еж — птица гордая, пока не пнешь — не полетит.
Вот и этот — только с пинка, ... но
быстро и точно. Строго по программе. Как написано, так и
исполнено. И ни шагу в сторону. Работа на результат. Отсутствие результата
— работа впустую. В нем же логика — математическая. Электронные схемы с функциями Булевой
логики «И», «ИЛИ», «НЕ». Кончилась таблица,
и логика кончилась.
Алгебра
логики к логике уже имеет очень малое отношение. Одна математика. Логика
куда-то растворилась
1
—правда, а 0 —ложь. Почему же 0 — ложь? Это же — нет ничего, а не ложь. А потому, что
в двоичной системе других цифр нет. Только 0 и 1. Бинарная
запись. Мы к этому так привыкли, что у нас уже и сознание такое же стало —
бинарное. Если вопрос, то только с возможными вариантами ответа. С
попытками, со звонком другу или с помощью зала. Сами уже никак...
Вот и
электронная логика такая же. У нее одна только извилина (математическая
функция) и осталась. Из всех логических схем только «И» — немного логическая. Есть совпадение сигналов на входах — получи
результат. А остальные, даже и не знаю. «НЕ» — просто один каскад усиления с поворотом фазы сигнала на 180 градусов, например, схема с общим эмиттером. Какая
тут логика? «ИЛИ» — развязка входов,
чтобы сигналы разных входов не
мешали друг другу. Никаких условий. Есть сигнал на входе, сразу появляется и на выходе. Вот и вся логика
А та
логика, что из греческой софистики вышла, как вода в песок ушла. Только лужицы кое-где
остались. Теперь о логике и
говорить-то вроде неприлично.
Кстати, как и о кибернетике. Справедливости ради замечу, закапывать кибернетику, сам того не желая, начал ее собственный папа — Норберт Винер. Я тебя породил... Расширил рамки своей науки до самого горизонта, а там — откуда ни возьмись компьютер.
И ушла потихоньку кибернетика
в информатику. Слопал
ее компьютер. Жалко. Она без
компьютера кое-чего стоила. И
могла.
Теперь
техника электронная стала цифровой.
А логической техники что-то и не
осталось. А была же и техника, и
машины. И философия, и теории. Логические
задачи стали задачами программирования.
Маленькие подмастерья у
Компьютера. Великие задачи машинного
разума, искусственного интеллекта
так и остались указателями в придорожной
пыли…
Камо грядеши,
человече?
Компьютер решает логические задачи по
программе. Лихо решает. Но по программе. Любой коммутатор — это жесткая логика. И чем больше
коммутатор, чем он сложнее, тем больше в нем
логики. Логики выбора. Мы условия
задаем, а он ответ ищет. И не просто
ищет ответ, а путь к нему прокладывает.
Мы с другом разговариваем по телефону по проводам, через коммутатор. Есть только один путь в этом жутком переплетении городской связи. И
коммутатор его находит. Ну, не сам
пока, с нашей помощью, но все же, это
логика.
Когда-то
давно, читая статью об истории вычислительной техники, я увидел
рисунок интересной логической машины. Стеклянная емкость с раствором
соли, а в боковую стенку емкости впаяны гвозди. Эдакая
банка с гвоздиками. Если на какие-либо гвозди
подключают электрическую батарею, то на одном из них начинается рост
кристаллов соли. Комбинируя и переключая подачу напряжения, можно добиться роста
кристалла от одного гвоздя к другому по заданному маршруту.
Можно создать необходимую комбинацию
напряжений на электродах и проверить,
будет ли расти кристалл в нужном
направлении. Напряжения создают
логические условия, а кристалл
дает выполнение этих условий.
Растет куда надо — «истина», нет - «ложь».
Результат решения задачи - это
разветвленный кристалл. Его рост
идет сразу в нескольких направлениях. Одно из направлений роста и приводит к нужному ответу. Красиво и наглядно. Вот теперь смотри, анализируй, вычисляй, ищи наиболее верный путь. Решение перед глазами, только
многовариантное.
Уже в
середине прошлого века эта банка с гвоздиками стала музейным экспонатом,
курьезом технической мысли
на пути прогресса.
Чем же
отличаются способы решений компьютера и коммутатора? И при
чем здесь
банка с гвоздиками?
Компьютер, коммутатор и банка
с гвоздиками — это три решения одной логической задачи. Различие решений определяется различными целями.
Компьютер
ищет ответ, определяемый математической логикой. Коммутатор
ищет ответ (абонента) и прокладывает к нему путь. А банка с гвоздиками
показывает пути к возможным ответам. Единственный ответ ей неведом. Какие получатся. У нее нет ни программы,
ни номера абонента, только цели, зовущие к движению. Путь к ответу —
не через программный тест, а через выбор на каждом повороте запутанного
лабиринта, где нет указателей для возможных вариантов. Цель — вон она видна, только путь к ней неведом.
Говорят,
что это задача логики. Наука-то такая есть, а вот аппарата, чтобы путь
к ответу прокладывал, нет. Хотя был, и не один. Но, видно, за ненадобностью
разобрали. Теперь — нейрокомпьютеры. Решают проблемы. Искусственного
Интеллекта. Но что-то пока никак. Математика не дает и... логика. Она же
бинарная, только «да» и «нет». И сразу. Думать не надо. Все заранее расписано
и запрограммировано.
Еще и нейросети появились. Профанация одна с названием.
Сетевая программа распределенных вычислений.
Загрузка чужих мощностей, если своих не хватает. «Нейро»
только в названии и есть. Все остальное — бинарное.
Может,
вернуться к лабиринту? Есть лабиринт, запускаем туда мышь, и пусть
выход ищет. Найдет же когда-нибудь. Не выход, мы эти выходы и так видим, а
путь к выходу! Мы даже сыр к нужному выходу подсунем, для приманки.
Дальше думать будет мышь, а мы — только наблюдатели. Кстати, ей абсолютно
все равно, каким будет ответ, правдивым или ложным, и сколько путей
ведет к этому выходу. Она выберет любой. И любой — правильный, пусть и не
самый короткий.
Это
основная модель лабиринта. Теперь мы ее — в электронное исполнение.
Лабиринтом будет, естественно, электронная схема, а мышью — та самая
единичка, из 0 и 1. Возможные условия — «ДА», «НЕТ» и «НЕ ЗНАЮ». НЕ ЗНАЮ
- это «ПОКА НЕ ЗНАЮ», так понятнее. Это ожидание следующих условий.
Тогда и можно будет сделать выбор, между ДА и НЕТ. Или
дальше ждать и выбирать.
ДА и
НЕТ — равноценные решения выбора. Не правда и ложь, а равновеликие величины.
Но в разных направлениях: 1 и —1, правая и левая единицы.
Сколько путей от входа до выходов, столько и единиц. Какая
вперед придет к нужному выходу, тот путь — правильный.
Вот и вся логика. И тут, конечно, без математики пока никуда: эти
единицы посчитать и сложить надо. Но это далеко не высшая математика. Мощный процессор не нужен.
Вот и получилась счетная
логика, в которой пока всего одно
математическое действие —
сложение. Но не сложнее, чем 1 +
1=10.
Логика
выбора между «ДА» и «Нет», но с возможным вариантом «НЕ ЗНАЮ».
Тоже — ответ. Ждем-с.
Единицы
бредут к выходам. Шаг, остановка, шаг и снова остановка: надо же
подумать, куда идти дальше. Так, короткими перебежками, и дойдут до выхода,
путь укажут. Потом по найденному пути мы скоростную трассу проложим. Вот тогда
сразу — как на нее вышел, так по прямой и
без остановок к ответу. Маршрут известен. Тут мы уже
умные стали. Единой, большой системы счетной логики, правда, еще нет, но сделано
уже много.
Про
счетную логику я могу и дальше объяснять, но мне главный редактор сказал:
«Занятно, похоже на кубик Рубика. И так
же бесполезно». Но, между прочим, в кубик этот даже ученые уже
лет тридцать играют, такой он бесполезный...
Программа — это не логика, это логическая
модель решения. С известными ответами. В ней думать уже не надо. Все
уже продумано и решено. Какой набор условий, такое и решение. Программа
годится только на конкретный и проверенный многократно вариант.
Раз — и готово. А где поиск? Нет его. Перебор вариантов есть, а поиска решения
нет. С чего же компьютер умным будет? Только с
перепугу.
Не
хватает современному компьютеру логического блока. В пару к процессору. Не
программу, а логику подхода
к решению. В железе. Пусть думает, что
делает. А мы ему программы, базы... самому думать пора.
Может
быть, с такой логикой и компьютер сам что-то делать начнет. Сначала как попало, потом
научится. Мы ему задачку каверзную, а
он нам: «Такого я еще не решал, но путь решения есть. Надо добавить такие-то и такие-то условия. Иначе слишком много неопределенностей. Но, если хотите, я могу и так попробовать...».
Что-то
я размечтался. Есть же, наверное, и компьютеры с раздельными пространствами,
и защищенные системы, которые всем вирусам фигу
показывают. Ну, а если нет, то
пора бы и сделать нормальный компьютер для работы, а не только
для выкачивания денег. Чтоб и в Интернет, и на почту — без боязни подхватить что-нибудь
заразное. И логический блок ввести.
Может, тогда этот даун скоростной думать начнет. Хоть немного. Пора бы уже. Памяти уже хватает. Теперь бы немного ума...
***
|