drlinux ([info]drlinux) wrote,
@ 2007-01-29 16:25:00
Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Почему мне не нравится MS Windows Vista.
Причины будут изложены не по порядку. Во-первых мне не нравятся конструктивные особенности этой ОС:
1. Windows выросла путем приращений (изобретались заново функции, приблизительно эквивалентные Unix, по частям), поэтому испытывает недостаток унифицирующей идеи, например, подобной идее Unix, где каждый объект является файлом. То есть в ней нет унифицирующей идеи вообще. Поскольку основные технологии не связаны в небольшом наборе устойчивых основополагающих идей (или метафор), они устаревают каждые несколько лет. Каждое из поколений технологии требует, чтобы разработчики и пользователи по-новому изучали фундаментальные принципы, при этом прежний путь объявляется устаревшим и не поддерживается более.
2. Создание дочерних процессов дорогостоящее, а управление процессами сложное и негибкое (RPC). Более естественным способом программирования становятся монолитные гигантские конструкции.
3. Тесная связь с GUI приводит к большим блокам кода, который не безопасен, поэтому ошибка или успешная атака на данный код становится угрозой для всей системы.
4. В Windows не имеется аналогов системам межпроцессного взаимодействия Unix, таких как, например, каналы. Важным свойством каналов является то, что они требуют такой уровень простоты обмена данными между различными программами, который побуждает разделение функций (между программами). Отсутствие эквивалента каналов проявляется в том, что взаимодействие программ может быть реализовано только путем внедрения в них полного объема сведений о внутреннем устройстве друг друга.
5. «Word, Excel, Power Point и другие программы Microsoft обладают детальными, можно сказать безграничными знаниями о внутреннем устройстве друг друга. В Unix программист пытается разрабатывать программы не только для взаимодействия друг с другом, но и с еще не созданными программами» Дуг Макилрой.
6. В Windows используются слабые группы привилегий, да и те часто игнорируются ради обратной совместимости с ПО для более ранних версий ОС, что частично приводит к тому, что приходится бороться с вредоносным ПО (вирусами, червями и пр.), которому по сути ничто не мешает выполнять свои действия и нанести сколь угодно серьезный урон ОС, а также это не способствует защищенности ОС, так как внутренние границы ОС являются чрезвычайно проницаемыми. Отсутствуют средства управления безопасностью сообщений между GUI-клиентами, а их добавление также нарушило бы обратную совместимость. Подобные бреши во внутренних границах системы производят синергетический эффект, делая действительную безопасность Windows-систем практически невозможной. Любое переполнение буфера или взлом GUI-интерфейсе может быть использовано для захвата контроля над всей системой.
7. «Поскольку Windows должным образом не управляет контролем версий программных библиотек, данная система страдает от хронической конфигурационной проблемы, которая называется «DLL hell». Данная проблема связана с тем, что при установке новых программ возможно случайное обновление (или запись более старых версий поверх новых)библиотек, от которых зависят существующие программы. Это относится как к системным библиотекам, так и к библиотекам приложений: нередко приложения поставляются с определенными версиями системных библиотек, и в случае их отсутствия аварийно завершают работу».
8. Повсеместно используются двоичные форматы файлов, доступ к данным которых можно получить только с использованием специальных средств.
9. В Windows слабые средства CLI интерфейса неудобно соседствуют с GUI интерфейсом. Поэтому даже простые не интерактивные программы несут на себе издержки графического интерфейса или замысловатого интерфейса сценариев. Проблемы, связанные со слабым CLI интерфейсом, скорее усугубляются нежели решаются. Мало того, GUI интерфейс присутствует и в серверной редакции ОС Windows, т. к. он встроен в ядро и отключить его нет никакой возможности (лично мне GUI на сервере совершенно не требуется).
10. Вывод одной программы не возможно использовать в качестве ввода другой, т. к. отсутствует система каналов (pipes).
11. Системные и конфигурационные данные пользователей централизованы в главном системном реестре, который делает систему полностью неортогональной. Одиночные сбои в приложениях могут повредить данные реестра, часто делая невозможным использования всей системы. Также по мере роста объема и накопления данных реестра увеличивающиеся затраты на доступ замедляют работу всех программ. (Взято из книги Эрик С. Реймонд «Искусство программирования для UNIX»)
Список последствий можно продолжать и далее.
Использование DRM и слежка за пользователем в Windows Vista.
(Очень подробно написано здесь: http://www.cs.auckland.ac.nz/~pgut001/pubs/vista_cost.txt Перевод здесь: http://emdrone.livejournal.com/176676.html#cutid1)
Лицензия от MS в стиле: если у Вас что-то не работает, то мы за это не отвечаем., если наш продукт Вам не подошел, то мы за это не отвечаем и т.д. (Перевод избранных мест EULA с комментариями здесь: http://trueash.livejournal.com/17585.html#cutid1)
Исходные коды этой ОС закрыты, поэтому я не смогу просмотреть их и устранить какой-нибудь баг или изменить функциональность. Мало того, это даже запрещено лицензией.
В разработке этой закрытой ОС участвовали спецслужбы чужого государства.
(Читать здесь: http://emdrone.livejournal.com/178530.html)
Монопольное положение MS на рынке, которое мешает развиваться новым разработкам других фирм.


(Post a new comment)


[info]zhnick
2007-01-29 05:33 pm UTC (link)
Эм. Пожалуйста, не нужно с умным видом говорить про то, что не знаете. Не знаю как там у вас с Unix, но с Windows очень тяжело.

1. В Windows есть "все это файл". Просто, от пользователя оно немного скрыто. Например, если вы внимательно посмотрите на процесс загрузки в safe mode, то убедитесь в этом.
Ну... И уж раз речь пошла о том "все есть файл", то эта идея стала устаревшей где-то в районе появления сети, когда придумали "socket". Он, конечно, очень похож на файл, но все же не файл. Хотя бы потому что создают его с помозью socket(...), а не fopen(...). Вообще, некоторое развитие "все это файл" есть в т.н. post-unix системах. Например, очень рекомендую посмотреть Plan9 от Bell Labs.
2. Ну да. Порой fork(); очень сильно не хватает в windows. Хотя, дешевой заменой (ну, не полной, конечно) является threads.
3. Эм. А в Vista не вынесли gui в userspace ?
4. Если вы про pipe, то оно там есть.
5. Да ничерта они друг про друга не знают. Выучите слово COM.
6. Совершенно не понятно о чем вы говорите. В Windows есть разграничение прав.
7. Это да. Термин "DLL Hell" использует сам Microsoft.
8. Повсеместно ? ... Ммм... приведете пример ?
9. Да, командная строка там на самом деле не очень удобна. Да, GUI есть всегда, это действительно не очень гибко.
10. Да есть там пайпы!

Вроде все остальное верно. Ничего идеального в мире нет, но это не оправдывает полевание помоями просто потому что Вася напел...

http://msdn.microsoft.com/

Кстати, в топике написано про Vista, а ничего Vista-only в ваших 11 пунктах нет :(

(Reply to this)(Thread)


[info]gridycat
2007-01-29 05:42 pm UTC (link)
Черт, ты успел на 12 минут раньше.. хахаха ^_^

(Reply to this)(Parent)


[info]gridycat
2007-01-29 05:41 pm UTC (link)
1 - идея "все - это файл" устарела лет 30 назад.

2 - чушь

3 - чушь

4 - Дальше этого можно не читать, тут уже начинается хардкорный бред. Про Dynamic Data Exchange, Object Linking and Embedding слыхали? COM, наконец?

5 - чушь, просто они собраны из одних и тех же базовых компонетов.

7 - DLL hell - так в unix есть dependency hell. Но ничего лучше shared libraries еще не придумали, а реализация что в unix, что в win32 практически идентична.

9 - CLI не нужен, если есть COM и каналы.

10 - сказано же вам, есть каналы!

В общем, знания предмета не видно. Почитайте Joel on Software, там неплохо про Microsoft написано.

(Reply to this)(Thread)


[info]strannick_ru
2007-01-30 09:02 am UTC (link)
Про Joel'а присоединяюсь.
Хорошо мужик пишет. Без фанатизма.

(Reply to this)(Parent)


[info]strannick_ru
2007-01-30 09:01 am UTC (link)
Для начала. Читать слепой текст не разделённый на абзацы ДИКО тяжело

Поехали.

1. Linux тоже изобретала заново функции, которые есть в windows. И что? Опять же "всё есть файл" - это утопия. Живой пример - как только уходим из консоли в GUI эта метафора дохнет.

2-3. Голословно. Поэтому может быть правдой, а может и нет. Лень разбираться.

4. См. п.1 В GUI каналы не работают. Отсюда и растут ноги D-BUS'а и прочего.

5. Какое дело коммерческой компании до чужих программ? Они не улучшают мир, они просто продают код.

6. Фиг его знает. Ни вирусов, ни взломов лет 5. Никаких особых усилий для этого не предпринималось. И что? Если руки кривые - Linux не панацея.

7. В последний раз сталкивался году эдак в 96-97-м. В Linux'е, кстати, тоже несовместимость библиотек встречается. И что?

8. open source - не единственный способ разработки софта. К тому же - кому, кроме программистов, нужны исходники? И каков процент программистов среди пользователей? Зато FF для win занимает 6 Mb, а для компиляции его же в Linux требуется скачать 30-40 Mb... Это так - как иллюстрация "когда бинарники лучше".

9. Лично тебе не требуется - не используй windows. Да, windows построена вокруг GUI. И что? GUI на сервере - страшный грех? Какие конкретно претензии? Религиозного характера?

10. Если разработчик об этом позаботился - есть. Если нет - нет. Как и в Linux. Покажите мне - как направить вывод Gajim'а в OpenOffice?

11. Documents and Settings - как раз там и хранятся пользовательские данные. Либо в пользовательском разделе реестра. Текстовые файлы, как средства хранения конфигурации исчерпывают себя. В крупных DE (что в Gnome, что в KDE) аналоги реестра УЖЕ есть. Их занесли зловредные засланцы MS?

Про DRM и лицензии - пофиг. Не нравится - не ешь (не пользуй). Про монополию - на то есть антимонопольный комитет. Опять же - великое множество разработчиков кормятся, разрабатывая всякую мелочь для windows. И их НА ПОРЯДКИ больше, чем для Linux. Так что не надо о "печальной судьбе".

Вывод? Я понятия не имею, нравится мне Vista или нет. Я пользуюсь Ubuntu и мне её хватает за глаза. Я, так сказать, in love с Linux и совершенно не вижу смысла тратить время на охаивание конкурентов. Оставлю это пустое заняте горе-маркетологам и красноглазым. :)

Такие дела.

(Reply to this)(Thread)


[info]maddog_ru
2007-01-30 11:07 am UTC (link)
Пожалуй соглашусь со StraNNick'ом.

О уважаемый автор (да-да, это к вам drlinux) сего опуса, чем вам так не угодил Виндоуз? Ну есть такая ОСь и что с того? Или вы настолько затрахались в Линуксе, что вам становится обидно, потому что не можете асилить :) установку и настройку венды? И поэтому начинаете гнать пургу наподобие этой (ещё читал ваши опусы в паре разных мест)?

Лично я давно забил на пиратскую венду и варезный софт. У меня давно уже стоит Линукс и он меня всем устраивает.

ЗЫ. И действительно, почему заголовок про Висту? Тема не раскрыта! :)

(Reply to this)(Parent)


[info]polachok
2007-01-30 03:20 pm UTC (link)
в общем бред полный, предыдущие комментаторы все уже расписали.

(Reply to this)


Create an Account
Forgot your login?
Login w/ OpenID
English • Español • Deutsch • Русский…