[room] Давайте покурим на тему DE vs WM

Денис Черносов denis0.ru на gmail.com
Пн Янв 25 08:02:37 UTC 2010


2010/1/24 Денис Смирнов <mithraen на altlinux.ru>:
> On Fri, Jan 22, 2010 at 11:01:13AM +0400, Денис Черносов wrote:
> ДЧ> И спектр оборудования, на котором _должно_
> ДЧ> работать тоже существенно побольше.
>
> Это не проблема DE, уж извини, а проблема ядра и драйверов. Кстати, в
> конце 90-х IBM купила skytech (та самая, что делала либы, которые еще
> первые игрушки под DOS с крутой графикой использовали для работы с
> видюхой). И поэтому были чудесные драйвера -- которые просто молча при
> старте системе детектили видюху, и все работало.

Общий тормоз складывается из тормозов всех компонентов. Если у вас
проблемы с видео, может быть это тормоза видеодрайвера, а не самой DE.
Кстати, может я чего-то неправильно делаю, но у меня KDE4 "на глазок"
работает быстрее, чем XFCE. Потому что, будучи запущенным один раз,
большую часть софта из родного набора ускоряет очень даже существенно.
Исключения из правил: OpenOffice и Firefox - ибо сами по себе монстры.
Однако, OpenOffice 3.2 работает ощутимо быстрее, чем 3.1 (есть
подозрение, что они просто оптимально настройки по умолчанию
выставили, но результат есть).

> А по поводу дисковой подсистемы -- Daniela Engert (если не ошибся с
> написанием имени) написала также чудесный драйвер danis506.sys. Который
> точно также детектил IDE-контроллер, и поэтому bus master DMA mode на тех
> связках контроллер/HDD где он должен был работать -- просто работал. Из
> коробки. Без гемора с настройкой (в винде тех времен нужно было ставить
> отдельные драйвера, да еще и вручную включать bus mastering галочкой --
> ибо не было гарантии что заведется).

И сколько этих контроллеров сейчас? Больше на порядки. И насколько
многие железяки стали умнее, по сравнению с их предками? И сколько
производителей пошли по пути зашивания львиной доли функциональности в
драйверы?

> ДЧ> И очень много обвязок, связанных с
> ДЧ> безопасность (проверка всяческих буферов на переполнение и т.п.), что
> ДЧ> не может не добавлять тормозов.
>
> Опять же, с точки зрения security -- еще _до_ изобретения NX-bit в
> процессоре, в OS/2 аналогичная функция была и работала. Напомиаю, речь
> идет о системе 15-и летней давности. И, кстати, в ней объем виртуальной
> памяти у 32-х битного приложения не ограничивался ни 2Gb, ни 4Gb :)

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


> ДЧ> Печаль в том, что жизненный цикл и железок и ПО страшно мал. А потому
> ДЧ> ваш знакомый во многом прав, сермяжной жизненной правдой. Что толку
> ДЧ> делать автомобиль, который прокатается 50 лет, если через три года он
> ДЧ> морально устареет?
>
> При написании коммерческого ПО это вполне разумно. Я заказчику часто
> объясняю, что вон ту хрень я могу написать за несколько дней (и она
> потребует сервер за 5k$) или за полгода (и она запуститься даже на
> микроконтроллере). Но моя работа за эти полгода будет стоить куда больше
> сервера. Очевидно, что именно выбирает заказчик :)
>
> В случае с open source ситуация принципиально отличается тем, что время
> жизни приложения гораздо больше.

Не могу согласиться в полной мере с этим утверждением. В жизни каждой
программы возникает смена первого номера версии. А это означает
нарушение обратной совместимости, связанной с тотальным переписыванием
кода. Т.е., по сути, пишется новый продукт по мотивам старого
(например, KDE4 vs KDE3). Отчасти это делается для ускорения работы,
отчасти - для облегчения труда разработчиков, отчасти - для внедрения
новых фич. И если железяка может стерпеть многое, то люди гораздо
более капризны и своенравны. А СПО без людей, добровольно жертвующих
своё время на работу с ним - невозможно.


> Ты это... не путай DE и тулкиты. Я ничего не имею против, например, Qt.
> Или каких-либо других библиотек.

Еще раз уточните, что вы имеете ввиду под словом DE? Desktop
Environment - среда окружения (кнопочки, полосочки, цвета оформления,
системные переменные, общая шина сообщений). Как реализовать эту среду
без единого тулкита и сквозных настроек всего и вся?

Преимущество DE встает в полный рост, если вы в KDE используете
активно Konuqeror, Kmail, Akregator, KOffice, всякие виджеты и т.п...

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

Ведь, как ни крути, а самое медленное и ненадежное звено - всегда человек.


> А вот против DE в их нынешнем виде -- имею. И своими глазами вижу, как эти
> DE становятся монструознее, без существенных изменений в функциональности.
> А количество глюков растет. Разве что compiz появился -- и то хорошо.

Вы очень подробно расписываете тонкости того, что было. И очень
расплывчато - то, что есть. Вы уж пожалуйста не обижайтесь, но сильно
похоже на стариковское брюзжание: "когда-то компьютеры были большими,
а программы маленькими". Не потому что тогда было всё просто и
радужно, а потому что вы сами были моложе и задорнее... ;)


> Только вот незадача -- на мобилках нет ни KDE, ни Gnome. Поэтому такие DE
> так и останутся тормозами глючными.

Это только пока нет. Когда QT4 на мобилках станет более-менее
распространенным, будет и KDE там же. А уж про Гном и гадать не нужно
- точно будет.

>
> ДЧ> З.Ы. А вот еще подумалось, что корректнее сравнивать тот древний 386-й
> ДЧ> с современным айфоном и андроидом. По параметрам. И там всё не так уж
> ДЧ> мрачно, как вы описываете...
...
> Мне только кажется, или речь идет практически уже не о мобилке, а о том
> что 15 лет назад назвали высокопроизводительной рабочей станцией для
> научных рассчетов и для военных, с ценой в несколько десятков тысяч
> долларов (и размерами как минимум с хорошую тумбочку)?

Ну это в любом случае более корректно, чем сравнивать нынешние
десктопы с тогдашними. Иначе получается еще смешнее.

> А стараниями шибко умных программистов получилась звонилка с mp3-плеером.

Получилось то, что _покупают_. Клиент всегда прав. Да и это еще не
последняя итерация эволюции - поживем увидим.


В авиации тоже был период гигантизма: быстрее, выше, сильнее. Любой
ценой. А сейчас борятся за энергоэффективность, отказоустойчивость,
комфорт... Гонки за быстрее-выше-сильнее так и остались, но ушли в
очень узкую нишу. Массовый продукт ставит рекорды в других измерения.
Акценты сместились - и слава Богу.

Я убежден, что период гигантизма в компьютерной технике тоже
заканчивается. Рекордные частоты и объемы памяти уйдут в отдельные
узкие ниши. А нам останутся коробочки, в которой будет идти борьба за
каждый см^3 объема, каждый ватт, каждый грамм. И софт будут точить под
такие железяки гораздо тщательнее. Собственно это уже есть в различных
роутерах, модемах, NAT-ах, PSP и т.п.

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


-- 
С уважением,
Черносов Денис


Подробная информация о списке рассылки smoke-room