LXF99:ISO

Материал из Linuxformat.

Перейти к: навигация, поиск

Мнение: Джереми Эллисон. Безумие по Эйнштейну…

Джереми Эллисон

Джереми – ведущий разработчик команды Samba, сейчас работает в Google, в Сан-Хосе, Калифорния.

В компьютерном мире стандартам ISO жилось по-всякому. Году в 1977 ISO разработала стандарт семиуровневого сетевого протокола, а он выпал в осадок, столкнувшись со стандартным протоколом TCP/IP, который стал Интернетом. Однако ISO все же стандартизировала команды UNIX и программный интерфейс POSIX, внеся элемент здравого смысла в раздробленный мир проприетарных реализаций UNIX. Похоже, компьютерные стандарты ISO работают лучше, если они берутся за нечто уже существующее.


Однако стандарты не правят компьютерным миром. На сегодняшний день 92 % настольных компьютеров и 70 % серверов работают на проприетарной и нестандартизированной ОС Microsoft Windows. Хотя POSIX является стандартом ISO, рынок склоняется в сторону Windows, являющейся стандартом де-факто. Играет роль эффект сети. Определение Microsoft Windows полностью подконтрольно его создателю, и «Windows» – это то, что решит Microsoft, ни больше, ни меньше. Исторически, отношение Microsoft к стандартам было двойственным. Приведу пример из близкой мне области протоколов обслуживания файлов: когда в этой области доминировала Novell Netware, Microsoft горой стояла за стандарты, публикуя спецификации собственных протоколов (именовавшихся тогда Server Message Block, или SMB), и поддерживала реализации на других платформах, не только на Windows. Они даже предложили протокол SMB (ныне переименованный в Common Internet File System, CIFS) в качестве стандарта Интернет (IETF).


Но как только Netware уступила позиции Windows NT, отношение изменилось: поток информации иссяк. Последовали проприетарные модификации основных протоколов, подобные аутентификации Kerberos, и все эти изменения рассматривались как коммерческие секреты, по возможности защищаемые патентами, и выходили в свет – если вообще выходили – под лицензионными соглашениями, обязывавшими пользователей к неразглашению. И именно этот зафиксированный в анналах истории факт делает недавнюю глобальную деятельность по поводу формата документов «Office Open XML» (OOXML) столь интересной. В этом случае конкуренту удалось застолбить участок первым. Открытый проект под названием OpenOffice.org (за которым пристально наблюдает Sun, ярый конкурент Microsoft) создал стандарт ISO для хранения офисных документов под названием «Open Document Format» (ODF) [открытый формат документа, – прим. пер.] , который был принят еще несколькими офисными программами, хотя, конечно, занимаемая ими доля рынка и рядом не стоит с таковой Microsoft Office. Эта ситуация опасна для Microsoft тем, что, коль скоро возник официальный стандарт ISO для офисных документов, потенциально возможно лоббирование правительств ради принятия его в качестве официального стандарта делопроизводства. А ODF – формат, в настоящее время не поддерживаемый Microsoft Office и не контролируемый компанией Microsoft.


В ответ Microsoft создал формат офисных документов OOXML, ставший стандартом в пакете Office 2007 и «подарили» Европейской ассоциации производителей компьютеров [European Computer Manufacturers Association, ECMA], чтобы последняя провела его через процесс стандартизации ISO. ECMA была настолько уверена в принятии OOXML, что заявила его на ускоренное прохождение данной процедуры [«fast-track»], позволяющее стать стандартом без каких-либо изменений.


По долгу службы мне пришлось читать документацию на стандарт OOXML. При объеме в 6 000 страниц (сравните с 867 страницами стандарта ODF) это было отнюдь не тривиальной задачей. Мне нет нужды приводить здесь технические недостатки OOXML: хватает и сайтов, и блогов, детально их описывающих (например, http://www.noooxml.org). Достаточно сказать, что при таком количестве проблем, если следовать букве процедуры ISO, пригодилась бы не ускоренная процедура стандартизации, а процесс, специально разработанный для исправления технических проблем.

Думая об ISO

До недавнего времени я не особо вникал в стандарты Международной Организации по Стандартизации [International Standards Organization] (ISO); они касаются самых разных вещей, от, например, труб (стандарт ISO номер 7) до размеров обуви (стандарт ISO 407) и скорости кинопленки (ISO 5800). И хотя они незримы для простого человека, современная жизнь намного упрощается благодаря их международному принятию; только представьте себе сложности при покупке китайских туфель, если бы изготовители не придерживались стандарта размеров.

Чем дальше, тем любопытнее…

Однако политический охват стандартов ISO куда обширнее, чем у стандартов интернет (IETF) или Консорциума Всемирной Паутины [World Wide Web Consortium, W3C]. Голосовать может каждая страна, хотя не все они решили принять участие. Зато выявилась масса странностей и даже иррационализма в позициях некоторых стран. Лично я в восторге от проголосовавших «за» стандартизацию OOXML Кубы – хотя американское правительство запретило Microsoft продавать Острову Свободы какое бы то ни было ПО, способное работать с этим форматом – и Азербайджана: OOXML в его нынешнем виде не может писать Web-адреса на азербайджанском, их государственном языке.


Как вы знаете, «быстрое» голосование провалилось, хотя разница составила всего 1 % (это очень мало). Так что следующим шагом, согласно сложным правилам ISO, станет заседание, на котором все комиссии, участвующие в процессе, соберутся и рассмотрят технические замечания, чтобы дать дальнейший ход процессу.


На этом заседании ECMA (и, очевидно, Microsoft, в качестве члена ECMA) придется пообещать внести изменения в формат, реализованный в Microsoft Office 2007 и уже распространяемый в таких объемах, поставка которых по зубам только лидеру рынка. Это напоминает мне обмен email-сообщениями в тот период, когда Microsoft предпринимала попытки стандартизировать протокол совместного доступа к файлам, реализованный в Samba (CIFS). Тогда после публикации заявления, демонстрирующего атаку посредника на текущий протокол, Microsoft опубликовала спецификации для криптографической защиты обмена сообщениями, что позволило залатать дыру в системе безопасности и стало неплохой первой реакцией на атаку. Увы, после экспертного анализа обнаружилось, что новый протокол подписи имеет теоретически слабые места, и для их ликвидации и улучшения системы безопасности требуется несколько тривиальных поправок. Microsoft же ответила, что, хотя поправки и справедливы, код, к сожалению, уже написан и будет поставляться со следующим сервисным пакетом. Конец обсуждения. Код даже не был еще включен в распространяемый продукт, однако спецификацию изначально определили как нечто неизменяемое, поскольку не желали править готовую программу.


Надеюсь, что заседание по техническим замечаниям к OOXML пройдет лучше, чем оно прошло для CIFS. И еще я надеюсь, что на сей раз все может измениться. В конце концов, я не занимался бы разработкой свободно распространяемых программ/программ с открытым исходным кодом, если бы не считал, что все может измениться, как, например, 92 процента рынка настольных систем или 70 процентов рынка серверов. Или, может быть, это просто делает разработчиков свободного ПО настолько невменяемыми, насколько их пытаются выставить таковыми поставщики проприетарных решений?


В конце концов, как утверждают, Эйнштейн однажды сказал: «Безумие – это когда постоянно совершаешь одно и то же действие и каждый раз ожидаешь разных результатов». LXF

Личные инструменты
  • Купить электронную версию
  • Подписаться на бумажную версию