Апр 18

Утопия в ОС? Реальность или фантастика?

Довольно хорошо известно противостояние двух крупнейших на данный момент операционных систем – это Windows от компании Microsoft и Linux, создающийся сообществом разработчиков со всего мира. Конечно, и ту и другую систему проектируют и создают в основном профессионалы, но это – за гранью моих сегодняшних рамышлений, не говоря уже о том, что эта тема – скорее прерогатива сетевых «святых войн» («Holy Wars»).

Сегодняшняя же тема – операционная система будущего. На это громкое название уже не раз претендовали различнейшие ОС (вспомнить хотя бы слоган «UNIX – система будущего» вместе с логотипом Sun на футболках, который всего недавно можно было нередко видеть на улицах Москвы), однако пока до «систем будущего» не добралась ни одна.
Что же такое эта самая мифическая ОС будущего? Что в ней долно быть и что она должна предоставлять пользователю?

Слагаемые

Перед тем как приступать к вычислению некоего результата, давайте разберёмся, что у нас есть на данный момент.

Так исторически сложилось, что на просторах нашей Родины основными конкурентами стали «система для домохозяек» Windows и «система для маньяков» *nix (под этим сокращением обычно подразумеваются все unix- и linux-подобные системы, благо их существует великое множество). Довольно популярная на западе Mac OS, являющаяся эксклюзивной для недешёвых компьютеров Apple, у нас работает в основном в среде профессионалов в области графики – на настольных компьютерах вы вряд ли её увидите.

Итак, Windows – красивые менюшки и окошечки, панель задач, антивирусы и море программ домашнего и вообще пользовательского класса. Несомненным плюсом этой системы является её умеренная простота, исторически сложившееся многообразие игр и программ, установка в стиле «ткнул и забыл». Эти же черты являются её несомненным минусом. Простота в настройке обычно означает невозможность толком настроить систему «под себя». Многообразие игр и программ и правда неплохо, но каждая из них – потенциальная «дыра» в безопасности, не говоря уж об их взаимной совместимости (здесь нужно пояснить для непосвящённых – люди, работающие с Windows уже довольно долго, не раз сталкивались с ситуациями, когда свежепоставленная программа «обрушивала» две-три ранее работавших). То самое «а теперь откиньтесь на спинку кресла» из рассказов «Винды» о себе во время установки не даёт пользователю возможности выбрать, что же именно ему нужно от системы, не говоря уже о тех настройках, которые в *nix подразумеваются по умолчанию – к примеру, отделение пользовательских данных в несистемные разделы. Другой же минус Windows проистекает из её популярности – это, конечно же, вирусы. Как известно, в любой системе есть дыры и нахождение их – любимое занятие как отделов тестирования, отладки и контроля качества производителей, так и разнообразнейших хакеров и крэкеров – и часто не только из любознательности. Стоит сказать и об одной вещи, которая в России частенько забывается – Windows стоит денег. И вообще-то немалых. Примерно столько же стоит офисный пакет. Немалых рублей придётся отдать за пользование распространёнными бухгалтерскими пакетами. Антивирус – обязательная часть правильной системы Windows – тоже небесплатен, за исключением опять же немногих ограниченных версий коммерческих продуктов. Впрочем, сложившаяся у нас традиция пиратства пока ещё позволяет пользователю думать, что диски со всеми этими пакетами стоят сотню рублей на любой компьютерной барахолке. Если же борьба с контрафактной продукцией вдург выйдет с показательного уровня на реальный – нам всем придётся либо копить деньги на суд и на лицензии – либо переходить на беспланые альтернативы. О которых и поговорим.

Linux изначально создавался без особой цели. Только потом он стал не столько даже операционной системой, сколько идеологией. Сейчас Linux – это не столько продукт работы и творчества многих людей, сколько символ – символ свободы, бесплатности, открытости программного обеспечения вообще. Он создаётся не закрытыми командами профессионалов, работающих за свою зарплату – хотя и ими тоже, что греха таить – но и множеством энтузиастов по всему миру, делающих продукты им самим нужные и интересные. Не одна сотня программ под *nix начиналась как реализация недостающих идей или функций одним человеком – и развивалась в крупнейшие интернациональные проекты. Плюсы Linux – это великолепная документированность, великое множество программ – впрочем, больше специального толка, огромный потенциал к настройке – и конечно, нетребовательность к ресурсам, часто рекламируемая поклонниками ОС. Впрочем, как и в случае Windows, эти же плюсы частично являются и минусами. Linux сложна. Банально сложна для восприятия «с первого взгляда». Если в Windows методом научного тыка и многочасового брожения по менюшкам и окнам настройки можно добиться весьма солидных результатов – то здесь подобный фокус не пройдёт. Надо точно знать, что запускать и какие конфигурационные файлы редактировать – и как редактировать. Всё это конечно, превосходно документировано – что на практике означает попытки продраться сквозь океаны описаний больших и маленьких настроек в MAN’ах, DOC’ах и FAQ’ах. А настроек этих – не счесть. Довольно известный пример подобной идеологии – попытка тонких изменений в браузере FireFox: Здесь вам предложат отредактировать – впрочем, отдадим должное разработчикам – в относительно удобном интерфейсе – несколько сотен параметров. Если же вы думаете, что это всё, вы глубоко заблуждаетесь – множество других параметров – зачастую весьма значительных вроде перемещения кэша – здесь нет, и вам предлагается догадаться об их возможном наличии самим – и конечно, почитать документацию.

Кроме того, из-за относительно небольшой популярности Linux официальные драйверы многих устройств отсуствуют в природе и на вопросы вроде «а, собственно, где и когда?» ответ «вряд ли в скором времени» является наиболее популярным. Нельзя однако не заметить, что многие производители не забывают о линуксоидах – к примеру, NVIDIA выпускает новые версии драйвера видеокарт сразу для десятка систем.

К концу стоит упомянуть о так красиво выглядящей Mac OS. Она великолепна – пока стоит в магазине. Она замечательна – когда вы начинаете с ней работать. Она проста и дружелюбна к пользователю. Она не требует никаких знаний – в отличии от Windows, где надо хотя бы иметь некоторые представления о логике ОС. Она кошмарна – как только вам надо от неё что-то, что выходит за рамки стандартных приложений. Весьма скромная программная обеспеченность «яблочной» ОС не играет ей на руку. Впрочем, как уже говорилось, во всём мире она утвердилась как стандарт для графических приложений, и можно быть уверенным – заплатив 2000$ за компьютер, 1000$ за лицензионный Adobe Photoshop и ещё тысячу-другую за всякие мелочи вроде графического планшета и калибратора дисплея – вы получите великолепнейшую систему. Опять же, до тех пор, пока не захотите от неё чего-нибудь специфического.

Сумма

Рассмотрев то, что у нас есть на данный момент, давайте перейдём к пожеланиям и предложениям.

Подумаем – кто пользуется компьютером вообще? Сейчас им пользуются почти все – игроманам нужна высокая производительность, плавная и красивая графика, подавлюещему большинству хочется смотреть фильмы и слушать музыку, а музыкантам хочется её записывать и обрабатывать в студийном качестве. программистам нужны удобная среда разработки, а системным администраторам – надёжность и управляемость, а также полнейший контроль на системой как в целом, так и удалённо. Людям хочется перестать быть привязанными к одному месту – и появляются мобильные устройства и требования наличия сети в любом уголке планеты. Одним хочется предельной простоты, другим – предельного контроля.

Так получилось, что две основные идеологии современных ОС развивались в то время «когда компьютеры были большими». Windows-подобные системы разрабатывались для немногих счастливых обладателей персональных компьютеров, UNIX-подобные были уделом университетов, лабораторий и корпораций. Первая идеология изначально направлена на пользователя неподготовленного, вторая – на пользователя по умолчанию подготовленного или по крайней мере имеющего желание учиться и разбираться.
Мы же, думая о новой, приближенной к идеалу системе, не должны отдавать предпочтение любой группе, какой бы большой или малой, обеспеченной или необеспеченной она ни была.

Таким образом мы уже можем начать формулировать требования, техническое задание нашей утопии.

Первое место в нашем чарте занимает возможность выбора режимов использования операционной системы – либо это простой режим, максимально дружелюбный для пользователя, где в идеале он даже не должен догадываться, что существуют такие вещи как системные настройки, либо режим полного контроля, где пользователь сам настраивает всё что возможно, либо смесь этих режимов. Неплохим вариантом для режимов приближенных к «простому» концу шкалы был бы депозитарий или другой ресурс, в максимально понятном виде приводивший бы готовые наборы настроек с пояснениями, вроде того как Internet Explorer предлагает уровни безопасности. Неплохим примером подобной идеологии мне представляются три режима bitTorrent клиента Azureus, где с каждым уровнем возрастает количество и глубина настроек. Хотя, конечно, это далеко не идеал, ведь там нет «крайних» режимов по нашей шкале. Это, помимо прочего, позволяет структурировать познание ОС, поскольку мы можем плавно переходить с одного уровня сложности на другой, не забегая вперёд со всеми вытекающими. (Так бывает сейчас – чтобы понять данную в некоем руководстве глубокую настройку или технологию, приходится заодно пытаться понять дюжину соседствующих, без которых изучаемая просто не сможет эффективно работать)

Второе место мы нагло заимствуем у сообщества Open Source – это открытость программ, их совместная разработка и минимальная, вплоть до нулевой, стоимость при зачастую платной поддержке, и добавим – обучении. К примеру, вы пользовались нашей Утопией в некоем условном третьем простом режиме и решили изучить профессиональные области – добро пожаловать к инструкторам, которые поднимут ваш уровень понимания и глубину знаний на уровень вверх – небесплатно, конечно. Впрочем, об это дальше, а пока – небольшая модификация. Нам надо избежать того, что существует сейчас – великого многообразия. Оно неплохо на нынешнем этапе, но в условиях Утопии оно будет губительно. Многообразие реализаций одного и того же сейчас даёт возможность выбрать, что нам нужнее и удобнее – но всё это разные продукты со всеми вытекающими. Взять хотя бы ситуацию в мире медиа плееров. Всем известен Windows Media Player, но лично мне он категорически неудобен, зато простой и информативный интерфейс WinAmp мне гораздо понятнее и приятнее. Впрочем, тот же Winamp довольно убог, когда дело доходит до видео. На моей далеко не передовой системе некоторые кодеки и виды файлов лучше работают с одними плеерами, а некоторые – с другими. Чтобы совершенно без проблем смотреть любое видео под Windows, приходится иметь три-четыре видеоплеера и солидный набор кодеков. Офисные документы также часто становятся камнем преткновения. Широко известно, что файлы разных версий MS Office обладают практически нулевой совместимостью с младшими версиями программ. Менее известнен факт, что они занимают куда больше места на диске, чем должны бы. Как практикующий системный администратор, я не раз сталкивался с распространённейшей проблемой, когда документ, присланый из другой фирмы, требовалось запрашивать заново в более удобном формате – не говоря уже о файлах Adobe PDF, которые несмотря на всё своё удобство, создаются по умолчанию «только для чтения». Форматов же графики куда больше… Список можно продолжать до какого-нибудь нового Пришествия – суть не меняется. Идеал для нашей Утопии – одна программа, предельно насыщенная в «максимальном» режиме, на каждый вид деятельности. Такого чудовищно тяжело достичь при философии Open Source – совершенно логично, поэтому мы – пока в качестве идеи – решили, что наилучшим выходом будет некий всеземной комитет, который будет назначать стандарты индустрии и именно они будут развиваться по максимуму, другие же проекты должны развиваться энтузиастами до действительно серьёзной стадии, когда его при соответствующей доработке можно будет принять за стандарт. Таким образом мы получаем в каждый момент времени единый стандарт на формат данных, и единые программные средства, что даёт нам простое обучение, простой обмен данными, простое администрирование и поддержку. Замечу, что монополия и коммерция в нашей Утопии не упоминаются в принципе – они стоят за кадром и они также губительны для нашей «ОС мечты».

Третье место нашего чарта занимает категория скорее социологическая, чем техническая – это интегрированность системы со всем, что мы видим вокруг себя. Сейчас развитие систем идёт в этом направлении, но уж больно обходным путём. Вытекая из предыдушего пункта, мы можем объявить, что глобально интегрированную систему будет в итоге построить куда проще, чем сейчас – ведь именно обмен данными представялет наибольшую головную боль для интеграторов. Сейчас на моём персональном компьютере место делят WinXP и Linux, на наладоннике – Palm OS, на сотовом телефоне – Symbian. Забывая о зоопарке систем и компьютеров разнообразнейшего назначения, которые мне приходится администрировать, заставить все лично мои устройства работать вместе иногда бывает непросто. Не говоря уже о том, что простой пользователь во мне хотел бы забыть про полсотни паролей в голове и входить во все системы, включая домашний компьютер, несколько разных сетей, 1С, в двери зданий дома и на работе по какому-нибудь одному предмету, паролю или лучше всего индивидуальному признаку вроде отпечатка пальца или рисунка сетчатки. Я хотел бы читать свою почту там где мне удобно, будь это телевизор или наладонник, или терминал в библиотеке. Я уже молчу про желание платить за все, включая проезд в автобусе, не особенно задумываясь об этом и уж точно не покупая отдельный билет на каждый вид транспорта. Я много чего хочу, я знаю. Но ведь многие хотят ещё больше. Довольно быстрыми темпами к этому подбираются интеграторы аудио- видео- и прочих домашних систем, стремясь построить идеальный «умный дом» – уже сейчас с одного мультимедийного пульта можно управлять десятком систем в любой комнате. А когда компьютер ещё и голос начнёт прилично распознавать…

Немаловажный момент как для администраторов, так и для пользователей – надёжность – получает четвёртую строчку. Сейчас, чтобы получить надёжную системы, мы, простите, извращаемся. Журналирование в файловой системе ext3, нахваливаемое яростно и громко, на самом деле не является таким уж удачным решением — на практике после сбоя восстановление системы часто превращается в кошмар. Избыточность и надёжность, для которой сейчас чаще всего используются массивы дисков RAID 0, 10, 5, 50 и прочими – занимают куда больше ресурсов, чем хотелось бы, а их динамическое реконфигурирование зачастую просто невозможно. Если у нас в домашнем компьютере ломается жёсткий диск – физически ломается, без всякого участия с нашей стороны – кто может похвастаться, что данные у него остались? RAID дома – непозволительная роскошь для большинства из нас. К сожалению, ресурс механических накопителей ограничен, хотелось нам того или нет. Здесь с одной стороны может помочь развивающаяся сейчас технология SSD – дисков на основе флэш-памяти, делающая накопители практически вечными, с другой – нахождение новых способов резервации данных. Приведу возможный пример, из-за которого меня возможно будут пинать ногами все кому не лень – это регулярное резервное копирование в сетевые банки данных. Не секрет что скорости растут, стандартом для встроенных контроллеров на материснских платах уже давно стал гигабит скорости – и десять гигабит на подходе, пока же мы «обходимся» сдвоенными контроллерами, что даёт нам два гигабита. Так что вряд ли проблема этой идеи лежит в технической области. Вопрос скорее психологический – каждый ли готов к такому? Я, к примеру, готов резервировать таким образом хоть всю систему, за исключением продуктов творчества – рисунков и фотографий, которые у меня и так хранятся в зеркале на двух дисках. Так что проблемой – и весьма серьёзной проблемой – остаётся защищённость таких хранилищ. Мы не можем с уверенностью утверждать, что их не будут пытаться взломать – в конце концов наивно верить, что все крэкеры вдруг обретут совесть и превратятся в хакеров, движимых исключительно любознательностью и совершенно рыцарскими побуждениями. Существенным минусом безопасности таких хранилищ будет то, что их банально немного. Какой шанс, что сейчас крэкер нацелится именно на вашу систему? Близкий к нулю – подобных рабочих станций в Сети сотни миллионов. В случае огромных хранилищ дело меняется. Плюсом безопасности станоится квалифицированные администраторы таких хранилищ, надёжность корпоративного уровня и существенно меньшая, чем в домашних условиях, стоимость хранения данных. Так что если вдруг люди с мозгами и деньгами увидят эту статью, можно считать технологию с названием вроде NetRAID состоявшейся.

Железные метания

Пятым пунктом хотелось бы поставить все проблемы с «железом», которые мы имеем сейчас, а точнее – их разрешение. Но увы, надо быть безнадёжным оптимистом, чтобы считать, что можно, к примеру, создать стандарт на процессоры – по крайней мере, пока технология не достигла своего потолка. А пока ещё есть куда развиваться, производители будут делать всё новые и новые устройства и модели – а значит, и выпускать для них новое програмное обеспечение. В отличие от программ, которые довольно легко подвести под идеологию Open Source, для аппаратного обеспечения подобная процедура куда сложнее по множеству разных причин, среди которых черезвычайно дорогое оборудование и куда более сложные теории и технологии, чем при программировании. Однако и здесь теоретически возможен переход, который вполне вероятно, за счёт новых идей и множества новых умов сумеет породить немалый скачок в технологиях. Наше же требование к проекту утопии – открытые драйвера единого стандарта и с едиными интерфейсами.

Ростки идеала

Многое из названного существует в разрозненном виде, в зачатках и в совершенно разных продуктах. Пример – кросс-платформенная среда разработки Java – и соответственно кроссплатформенные приложения на Java. Вроде как это стандарт? Стандарт. Если бы не одна мелочь – как известно, Java – платформа закрытая, так что работающие над ней программисты существенно ограничены как интеллектуальным, так и рабочим ресурсами. Я думаю, переведи Sun её на открытую основу, можно было бы, к примеру, в короткие сроки избавиться от досадных минусов нынешней реализиции – например, чудовищного расхода памяти. Ещё один немаловажный момент этого стандарта – хотя это больше слухи для меня, поскольку сам я на Java не программирую – это неудобство и лёгкая нелогичность языка разработки, что весьма сильно отталкивает людей, предпочитающих сейчас Perl, Python и аналогичные более «лёгкие» и логичные языки. Впрочем, что их точно отталкивает, так это закрытость компиляторов.

PS. Я понимаю, что многие могут счесть меня крестоносцем открытого ПО, однако это не совсем так. Я свято уверен, что человек должен знать о системе, которую он использует, ровно столько, сколько он захочет знать – что вылилось в уже приводившуюся выше шкалу уровней «простота-контроль».

А ты уже вложился в своё будущее?

Popularity: 21% [?]

Комментариев нет

Похожие записи:

Как я бодался с контекстной рекламой.
Немного полезностей для любящих родной язык.

No Comments

Leave a comment