Category: it

Category was added automatically. Read all entries about "it".

Эх-хе-хее....

Уже не первый раз сталкиваюсь с тем, что знание заменяется некими символами (коммерческими названиями). Делается это такими корпорациями, как Microsoft, Sun Microsystems, Oracle, Cisco, Apple и другими монстрами и монстриками не просто так. Давайте рассмотрим на примере, скажем, информационных систем, к чему это приводит.

Есть такая штука ТМО. Теория Массового Обслуживания. Первые задачи ТМО были поставлены и рассмотрены Эрлангом еще в 20-х годах XX века для телефонии. Обычно задача проектирования системы массового обслуживания заключается в проектировании такой архитектуры системы, чтобы система могла обслужить максимальный поток заявок на обслуживание при заранее заданном ограничении на плотность различных заявок в потоке, на плотность заявок для каждой составной части системы и ограничений на число различных элементов системы. Действительно, мы не можем строить бесконечно большие телефонные станции. В этом нет смысла. Стоимость такой станции будет бесконечной и т.д. То же самое относится и к информационным системам.

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

Пусть заданы четыре операци над информацией в информационной системе R(ead), I(nsert), U(pdate) и D(elete). Операция R не приводит к изменению информации в информационной системе. Операцию U можно заменить на две операции D и I. Зададим времена обслуживания каждого вида заявок Tr, Ti, Tu, Td и плотности потоков заявок Nr, Ni, Nu, Nd в единицу времени T. Положим для простоты, что 2*Ti=2*Td=Tu. Тогда, плотность потока без последствий будет, если T >= Nr*Tr + Ni*Ti + Nu*Tu + Nd*Td

Или приведя времена к Ti и введя обозначения Nm и Tm для потока заявок на модификацию информации в информационной системе
T >= Nr*Tr + (Ni+2*Nu+Nd)*Ti = Ns*Ts + Nm*Tm

Несложно показать, что максимальный поток заявок будет обслужен без последствий тогда, когда значение Nr+Nm будет максимальным, что возможно тогда и только тогда, когда Nr*Tr=Nm*Tm при условии T=Nr*Tr+Nm*Tm. Это соотношение справедливо для информационных систем на основе одного узла. Для информационных систем на основе кластеров приходится добавлять еще время на синхронизацию двух составных частей системы Ns и Ts, причем, Ns=Nm. Таким образом, для кластерных систем из K элементов максимальный поток без последствий будет обслужен тогда и только тогда, когда Nr*Tr=Nm*(Tm+(K-1)*Ts) при условии T=Nr*Tr+Nm*(Tm+(K-1)*Ts) Поскольку мы рассматриваем схему гомогенного кластера, то общее число заявок на модификацию информации в информационной системе растет пропорционально числу элементов в кластере. И это так, поскольку запрос на данные может поступить на ЛЮБОЙ узел системы, а значит МОДИФИКАЦИЯ ДАННЫХ ДОЛЖНА БЫТЬ ПРОИЗВЕДЕНА ОДНОВРЕМЕННО НА ВСЕХ УЗЛАХ КЛАСТЕРА. Поэтому Ts=Tm. И общий рост числа заявок на модификацию данных будет расти пропорционально числу элементов в кластере. Учитывая, что заявки на модификацию объединяются в одну группу, а заявки на чтение данных в другую группу заявок, и что максимальное число заявок будет при равенстве затрат времени на обслуживание каждой группы, то получаем, что общее число запросов на обслуживание без последствий в кластерной гомогенной системе будет вычисляться как Nr=(T/2)/Tr для операций чтения данных, Nm=(T/2)/(K*Tm) для операций модификации.

Из этого следует, что гомогенная кластерная серверная система может обслужить без последствий число запросов меньше в sqrt(K) раз, чем система на основе одного сервера. Или производительность одного сервера достаточно повысить всего в sqrt(K) раз для того, чтобы повысить общее число запросов до потока, котрый может обслужить гомогенная кластерная система из K серверов.

Пусть кластер поисковой системы, например yandex.ru или google.com, состоит из 100 машин. Такой кластер можно заменить всего одной машиной, производительность которой всего в 10 раз больше, чем производительность одной машины из кластера без потреи производительности. Например, пусть в кластере используются машины 2*Xeon/3.0ГГц. Достаточно заменить эти машины одной машиной на процессоре Ultra SPARC RK с заменой дисковой подсистемы на RAM диски. Общая стоимость такой машины положим в $100.000,00. Стоимость кластера из 100 машин, каждая из которых стоит $5.000,00 будет порядка $500.000,00. Таким образом, даже если купить две машины (одна в горячий резерв), то общие затраты на кластер будут уменьшены в 2,5 раза. А если дисковую подсистему вынести за пределы 2-х машин в RAM-RAID массив, то стоимость вообще можно снизить до $100.000,00. Т.е., в 5 раз. Да и надежность системы из 3-х элементов существенно выше системы из 100 элементов.

Вот такие следствия из Теории Массового Обслуживания.

И, кстати, ТМО позволяет оценить интеллектуальный уровнеь таких команд, как Microsoft, Cisco, Oracle, Intel, Sun, Yandex, Google и т.д. В том числе и "мозговитость" Linux-сообщества и команды FreeBSD. И не зря коммерчески успешные монстры всячески стараются заменить знание ТМО на некие суррогаты-заменители. Так они пускают пыль в глаза своим потребителям. Что-то вроде "с точки зрения банальной эрудиции пространственно временной континнум в условиях нестационарно-дифференциальной абракадабры...". Или как Киса Воробьянинов, надувают щеки и говорят "Да уж". Им, коммерсантам, это выгодно. Ну кто будет проверять с точки зрения теории какую нибудь "сюпер новейшую" технологию, которая называется красивым словом, но про которую никому ничего не говорят? Для этого надо ведь пошевелить своими мозгами, вспомнить или посмотреть теорию, взять карандаш, бумагу... А это так лениво. И особенно, когда не знал теорию, да еще ее же и забыл. Вот и верит большинство этому обману.

И еще это оболванивание, эта деградация в невежество, очень ярко проявляется в программистах Haskel. Интересно, многие ли из тех, кто программирует на Haskel, знает теорему о детерминизации или об эквивалентности языка и автомата? Вряд ли. И вот почему. Из-за эквивалентности языка и автомата и в силу теоремы о детерминизации и учитывая заявляемый в Haskel детерминизм получающейся программы (автомата), результат должен быть частенько физически нереализуемым. Раз это так, то какой смысл заниматься тем, что может получиться физически нереализыемым? И кто занимается такиими делами? Но зато какие слова используются в Haskel! Тут сразу вспоминается Жванецкий: "И что такое секс? Это что-то новенькое или мы это уже давно знаем? Это когда голые-голые и еще голей? Или когда днем ночуют?"... ;-)))

И, кстати, молодежь уже не знает теории. Я не говрю об исследованиях Дейкстры, Фульца, Хопкрофта и других. Даже ТМО не знают. Но зато прекрасно оперирует суррогатными заменителями знания от Некрософт и других. Не раз мне приходилось общаться с молодежью. Вроде бы на первый взгляд нормальный человек. Но пообщаешься и понимаешь - он как то лох педальный развесил уши и доверяет всяким Некрософтам, которые кормят его всякой низкопробной жвачкой, вместо того, чтобы тренировать свои мозги знанием. Если одной фразой, то это уже не человек, а жвачное животное, поросенок на откорме. Жаль. И если такой молодой человек пытается вырваться их этого "свинарника" невежества, то его ждет ломка, сравнимая с ломкой наркомана. Я не раз наблюдал, как взрослые мужики, лет под 40, реально рыдали настоящими слезами. Жаль их, но это как болезнь - надо переболеть.

Правда есть и такие, кому не нужно Знание. Я в таких случаях говорю: "Еще в XVIII веке Французская академия наук прекратила принимать заявки на вечный двигатель". В ответ обычно слышу: "А при чем здесь это"? При том, что реклама - это разводка лохов со стороны коммерсантов и ни сделать вечный двигатель, ни электромагнитным волнам распространяться быстрее скорости света, ни сделать больше, чем это физически возможно, нельзя.

Дурак - явление социальное, а не биологическое...

Финансовый кризис
отнял столько клиентов,
больше не директор.


Collapse )Переход к разработке бесплатных open-source продуктов, по сути, и привел Sun к финансовому краху. Компанию купил конкурент - Oracle, а Шварцу в новой структуре не нашлось места.Collapse )

P.S. Скорее всего, связывание СПО (источника бесплатной капитализации в виде интеллектуальной собственности) с крахом компании Sun Microsystems было сделано телекомпанией "Вести" с подачи компании Microsoft и было полностью проплачено этой компанией. Очень жаль, что государственный телеканал дает заведомо ложную информацию, направленную на нанесение ущерба России, вывоза капитала из России, прекращение поддержки со стороны государства проектов СПО и направлено на дезинформирование люде о настоящей роли СПО в IT-бизнесе. Иначе как коррупцией я такую антироссийскую, русофобскую деятельность государственного телеканала не могу расценивать. Жаль, если государство своими институтами само себя разрушает. Вот и милиция себя полностью дискредитировала. Вот и образование сведено к заполнению анкеты. Обучение в верхней школе уже сведено к изучению инструмента, как в ПТУ, а не к изучению теории.

Кому-то это выгодно. Кому?...

Операционная система. Инструментарий.

В качестве внутреннего языка принято решение использовать модифицированную FORTH-машину. Есть три уровня абстракций этой машины, которые необходимы для создания ОС.

Первый уровень - это модифицированная FORTH-машина. Модификация машины необходима для того, чтобы не программировать семантически некорректные алгоритмы. Что именно я понимаю под семантической корректностью я умолчу. Могу только сказать, что для семантически корректных алгоритмов (языков, автоматов) алгоритм CYK имеет затраты, растущие как N*sqrt(N), а не N**3, как это имеет место в общем виде для ЛЮБЫХ алгоритмов. Кроме того, семантически корректные алгоритмы не подвержены действию теоремы о детерминизации любых автоматов, поскольку для этих алгоритмов теорема вырождается и автомат всегда получается семантически детерминированным, а значит физически реализуемыми. Модификации подверглись внутренние структуры машины для того, чтобы привести ее к виду пригодному для разработки исключительно семантически корректных алгоритмов. В модифицированной машине нельзя построить семантически некорректный алгоритм.

Второй уровень - это собственно сама FORTH-машина, интерпретатор языка FORTH. Естественно, что модификация FORTH-машины затронула модификацию некоторых словарных статей нижнего уровня. Однако, на этой FORTH-машине без всяких ограничений можно исполнять любую FORTH-программу, написанную для стандарта FIG-FORTH.

Третий уровень - собственно бинарный код.

Выбор в качестве основы языка FORTH обьясняется следующими соображениями:

1. В Unix в качестве языка системного программирования используется язык C. Не смотря на стандартизацию языка перенос UNIX с одной архитектуры на машины другой архитектуры довольно трудоемкий процесс. В отличии от языка C, язык FORTH является практически реализацией машины Тьюринга. А значит, изначально является платформонезависимой и позволяет создавать программы для любых платформ и сред.

2. Язык FORTH позволяет получать код, который сразу работает практически так же быстро, как и бинарный, но который можно легко модифицировать прямо в процессе работы/отладки. А можно поместить код системы в ПЗУ и тогда системе не страшны никакие вирусы. При этом нет необходимости в защите всего кода. Достаточно защитить ядро, которое отслеживает целостность и непротиворечивость даже не кода, а семантики этого кода. Вирус, который может менять семантику в нужном ему направлении, должен сам обладать довольно значительным интеллектом. Написание семантического вируса дело довольно нетривиальное. Кроме того, такое будет возможно только если вирус сможет полностью заместить собой ядро.

3. Модифицированная FORTH-машина гораздо лучше стандартной приспособлена для создания системы проектирования, в которой не нужны компиляторы, поскольку внешне программа отображается на том языке, на котором привык работать программист. В принципе, ядро ОС можно даже представить на языке PLSQL, LISP или JAVA, лишь бы конструкции языка были семантически корректны. :-)) Так достигается языковая независимость. Модифицированная FORTH-машина сохраняет корректность семантики, поэтому обратное отображение кода возможно практически на любой язык с минимальными затратами вычислителдьных ресурсов.

4. Модифицированная FORTH-машина не нарушает ни при каких условиях корректность семантики программы. Она специально для этого и разрабатывалась. Именно это, именно сохранение корректности семантики и была упущена в ходе развития современного программирования. Об этом как-то забыли, мимо этого прошли. Но именно требование сохранения корректности семантики в неизменном виде накладывает некоторые ограничения на преобразования программ (автоматов, языков), из-за чего вырождаются некоторые алгоритмы и перестают действовать некоторые теоремы. Ограничения на некоторые преобразования семантики по своей сути аналогичны запрету деления на ноль.

5. Перевод бинарного кода в FORTH является задачей достаточно тривиальной, поэтому не возникнет особых проблем с драйверами устройств. Код (семантика) уже написан производителем "железа", нужно только сохранить (не потерять) семантику. Это модифицированная FORTH-машина умеет делать прекрасно. Проблема заключается в том, чтобы привести полученную из бинарного кода FORTH-программу к виду корректного алгоритма. Т.е., сначала программа из бинарного кода переводится в собственно FORTH-программу, а уже потом, с небольшим участием человека, переводится в форму модифицированной FORTH-машины. В ходе обучения системы участие человека бцдет уменьшаться. Однако, выбрана именно такая структура, которая не позволит машине полностью исключить участие человека в процессе обучения. Таким образом, закрытость проприетарного кода уже не является помехой для использования новейшего оборудования в любых операционных системах, что сводит на нет все попытки монопольного сговора между производителям железа и софта.

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

7. Модифицированная FORTH-машина позволяет производить тотальную оптимизацию кода на управляемой ею установке. Этого пока не позволяет делать ни одна ОС, ни один язык, ни одна существующая железка. Откровенно говоря это решение появилось в результате попытки разрешить проблему монстрообразности систем из-за разнообразия разделяемых библиотек, 90% и более процентов семантики кода в которых повторяется. Ненужные повторы семантики могут быть без всяких потерь удалены. Таким образом, ОС может не просто исполнять код из проприетарных продуктов, но и выделять из них семантику и включать её в свой состав. Внешне это будет выглядеть так, словно ОС прошла курс обучения во время исполнения программы. По прошествии некоторого времени получится некая единая ОС, которая будет наделена полной функциональностью других ОС, но не содержащей в себе повторов и других неэффективных мест. Это не будет одна и та же ОС, это будет многообразие ОС, поскольку ОС - это лишь главная управляющая программа, а ОС надо строить (обучать) под каждый конкретный случай.

8. Данная архитектура исполняемой машины указывает путь создания изменяемых "железок", которые могут меняя свою внутреннюю архитектуру, адаптироваться в ходе работы в нужном для наилучшего решения задачи направлении. Это уже путь к реализации систем ИИ в "железе". Т.е., путь создания настоящих интеллектуальных роботов. Адаптируемое "железо" может быть легко реализовано, если его архитектура будет построена строго в соответствии с правилами сохранения корректности семантики.

9. При тотальной оптимизации происходит унификация семантики. Поэтому, при работе данной ОС уже нельзя применять ставшие притчей во языцех "копирайты для копирастов". Современное авторское право (CopyRight) защищает носители с информацией, но не защищает само произведение, его семантику. Поэтому, использование в чистом виде семантики (смысла) программ других производителей не является с точки зрения современной концепции авторских прав нарушением, поскольку идея (семантика) не является объектом защиты. Код получается совершенно иной, нежели у автора. Кроме того, код сгенерирован железкой. Поэтому доказать нарушение авторских прав (в соответствие с нынешней концепцией авторских прав) будет невозможно.

Таким образом на копирайтах и на современной концепции защиты авторских прав ставится большой жирный крест. В свое время Коперник поставил такой же крест не только на геоцентрической модели Вселенной, но и на Земле, лежащей на спинах трех слонов, стоящих на спинах трех китов, плавающих в безбрежном Океане.

Отсюда, поскольку в ОС производится работа с семантикой, а не с синтаксисом, то и создание задач скорее похоже не на программирование, а на обучение. Курс семантики офисной работы, курс семантики проектирования, курс семантики моделирования, курс семантики оборудования, курс семантики мобильной связи, и т.д. Если же, не дай Бог, копирасты попробуют наложить запрет на обучение, то тем самым они проявят свою античеловечную сущность.

Можно еще много чего добавить. Но не всем будет понятно. Пишу в основном для себя и своих друзей, для тех кто в курсе, а не для всех.

P.S. Сейчас идет отладка этой машины. И, поскольку я никогда не писал на FORTH, а язык был выбран исключительно исходя из требований, то этот процесс идет пока медленно. Можно было бы использовать lua, но он имеет одн нехорошее ораничение для построения корректных алгоритмов, которое нельзя будет преодолеть в принципе.

Пена GPL

Пена GPL

О преступном характере так называемого свободного сообщества GPL написано здесь. Цитирую: Theo de Raadt replied pointing out that there are two parts to the driver, one part written by Reyk Floeter, and another part written by Sam Leffler, "Reyk's code is *NOT* dual-licensed under the GPL. He has explicitly stated that his code is not dual-licenced. The file have no GPL on them. He's the author, he said so. None else can add a GPL to it."

Collapse )

Алкснис и Президент

Прочитал обращение. Есть принципиальные ошибки, которые позволяют повернуть это обращение в какую угодно сторону. Первый закон Мерфи гласит - если неприятность может случиться, она произойдет обязательно. Поэтому, обращение не должно содержать ошибок и быть предельно четким и лаконичным. Сами ошибки следующие:

1. В сегоднящней России фактически не существует ни индустрии программного обеспечения, ни электронной промышленности, ни промышленности средств связи. Все завозится из-за рубежа в обмен на наши ресурсы. Мозги - это тоже ресурсы. А заводы, НИИ и КБ прекратили свое существование. Заводы "Хроматрон" и "Рубин" превращены в рынки "Щелчок" и "Горбушка". НИИ и КБ, за исключением единиц, превращены в офисные помещения.

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

3. Никакая отрасль промышленности не может существовать без денег. А деньги вместо вливания их в собственную индустрию программного обеспечения вывозятся за рубеж. Чего-нибудь стоящие программисты стараются выехать за рубеж, поскольку в России их труд нечем оплачивать.

4. MS Windows - это коммерческий продукт, направленные на то, чтобы его продавать. Если при этом еще удается как-то работать - совсем здорово. Linux - это промежуточная версия для тех, кто насмотрелся в Окна и побежал к Пингвинам. Но Linux - это не Unix, это Unix-подобная операционная система. Поэтому наевшиеся пингвинятины люди идут уже в настоящий Unix. Предлагать переводить страну на промежуточную по идеологии ОС - это еще большая диверсия, чем сажать страну на иглу от M$. Если уж переходить, то на настоящий Unix.

5. Unix - это станок для программистов, т.е. людей квалифицированных. Нужны затраты ресурсов для "причесывания" системы к виду, удобному для массового пользователя. А для этого нужны деньги и государственная протекция. Лучше всего взять за основу FreeBSD университета в Беркли, одного из создателей системы Unix, с гораздо более лояльной лицензией, чем GPL. Само собой ничто не "причешется" - увалифицированным программистам это лишняя работа не нужна, они и так свободно себя чувствуют в этой среде. А заинтересованности в "рихтовке" нет, своя текучка заедает.

6. На начальном этапе категорически нельзя заниматься разработками нового софта. Нужна качественная адаптация в короткие сроки для массовости. Начинать внедрение надо со школ, как это проделал в Штатах Стив Джобс, поставляя в школы свои Маки по демпинговым ценам. Выпускники школ, приходя на работу, требовали себе Макинтоши. Это очень дальновидная политика. Никакие госорганы не смогут переломить потребности подрастающей смены, если ее воспитать на настоящем Unix.

7. Сейчас у Китая эйфория от успеха использования своего "Красного Флага", но пройдет несколько лет и начнется "отрыжка" промежуточности идеологии построения системы. Кстати, звоночки уже начинают звенеть - M$ собирается по демпинговым ценам продавать свои Окна в Поднебесной. Это означает, что "Красный Флаг" дает слабину, иначе M$ там нечего было делать.

В общем, мне кажется, что обращение в том виде, в котором оно сейчас существует, позволяет использовать его не только во благо, но и во вред стране. Как бы не получилось по Черномырдину - "хотели как лучше, а получилось как всегда".

RUSSIAN FIREWALL

RUSSIAN FIREWALL

                 УКАЗ ПРЕЗИДЕНТА РОССИЙСКОЙ ФЕДЕРАЦИИ

           О МЕРАХ ПО ОБЕСПЕЧЕНИЮ ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ
                     РОССИЙСКОЙ ФЕДЕРАЦИИ В СФЕРЕ
                 МЕЖДУНАРОДНОГО ИНФОРМАЦИОННОГО ОБМЕНА

   В целях обеспечения информационной безопасности Российской Федерации
при  осуществлении  международного  информационного  обмена посредством
информационных  систем,  сетей  и  сетей  связи, включая  международную
ассоциацию сетей "Интернет", постановляю:
   Субъектам   международного   информационного  обмена   в  Российской
Федерации  не осуществлять включение информационных систем, сетей связи
и  автономных   персональных  компьютеров,   в  которых  обрабатывается
информация, содержащая  сведения,  составляющие государственную  тайну,
и  служебная  информация  ограниченного распространения,  а  также  для
которых установлены  особые правила  доступа к информационным ресурсам,
в состав  средств международного информационного обмена, в том числе в
международную ассоциацию сетей "Интернет" (далее - сеть "Интернет").
            
Москва. Кремль. 12 мая 2004 года.
Collapse )