The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Проблемы X11 и их решения в Wayland "
Отправлено Аноним, 11-Июн-13 11:14 
> полностью убить работу на одноядерной системе:

Вообще-то она жрет 1 ядро, НО заметьте, даже на 1-ядерной системе система при запуске этой программы останется полностью юзабельной. При условии что это нормальная многозадачка. Ха-ха, you FAIL. Почитайте на досуге что такое планировщик времени процессора.

> из этого можно сделать вывод, что любая ОС, ээ.. очень кривая по дизайну,

Э нет, чувак. В нормальной ОС данная программа не вешашет систему. Для того чтобы она ее повесила - надо ее переделать в как минимум золнамеренную форкбомбу. А 1 или даже несколько копий программы нормальную многозадачку не завалят до состояния неюзабельности.

Хотя, конечно, если у вас win 3.1 - там да, при запуске подобной программы вся система встанет р#ком из-за кооперативной многозадачности. Но времена таких уродцев в роли ОС давно закончились. Современные многозадачки обладают преэмптивным шедулингом процессов и ... вы только подумайте, планировщик ОС может запросто прервать выполнение такой проги, забыв спросить их мнение на этот счет, прикинуть что пора дать поработать другим и пустить других. Поэтому система нифига не виснет. Проц нагружается, но ОС продолжает оставаться полностью работоспособной.

> дело вовсе даже и не в X-ах, а в Вашей программе,

Понимаете ли, упомянутая вами программа не ведет к отказу ОС. Система может быть станет работать немного медленнее, но останется вполне управляемой. Если это не так - да, плохо работать в однозадачном DOS, никто не спорит :)

> которая оригинальным образом скролит графику..

Опять же - поскольку упомянутая вами программа положит только DOS, а в нормальных системах планировщик времени CPU вполне себе поделит время согласно приоритетам - никаких особых проблем как раз не будет. Так что все это - левый булшит не по делу.

А иксы мало того что уперлись в 1 ядро (когда их 8!). Мало того что они жрут невменяемое количество ресурсов на операции рендеринга, которые запросила программа. Так там еще и никакой планировки нет, так что "хорошее" поведение - добрая воля программ. Добро пожаловать в винду 3.1 с кооперативной планировкой задач: покуда программы "хорошо" себя ведут - система работает. А как попалась программа типа вашей, винда 3.1 заглыхает. По поводу чего все современные многозадачки и применяют вытесняющую многозадачность, где шедулер времени проца делит его между задачами не спрашивая у задач их мнение на этот счет, так что оным становится намного сложнее монопольно узурпировать CPU.

Более того - в совсем современных системах встроены (вы только подумайте!) продвинутые механизмы дележа и лимитирования ресурсов, типа cgroups в лине. Так что даже откровенно вредительское поведение может лимитироваться в плане его влияния на остальные части системы и других пользователей. Прикиньте какие навороты? А в графической системе - до сих пор а-ля винда 3.1, что как-то не комильфо.

> Далее, Вы наверное не поверите, но 2D частный случай 3D, с координатой
> Z=0, соответственно оно ни капли не более ресурсоёмкое.

Логика подсказывает мне что работать с 3-я координатами сложнее чем с 2-я.

> сокеты, а то и вовсе разделяемая память),

При том, чтобы скорость работы всего этого барахла была бы сколь-нибудь вменяемой, нужна именно shared память. А это...
1) Не является прозрачным в плане сети.
2) Это ОПЦИОНАЛЬНОЕ расширение, програмер должен явно изогнуться буквой зю, задетектировать что это есть и заюзать его. Предусмотрев fallback на случай если этого нет.

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

> соответственно, лично в Вашем случае никак Вам не мешает.

Я и вижу - клин меню ВСЕХ программ, перерисовка экрана раз в секунду, прыжки мыши и прочая мне "совсем не мешают" пользоваться системой. Правда, мне приходится курить бамбук пока софтина не проерендерит карту и не отпустит иксы. Многозадачность, итить. Как в вин 3.1 :). Интересно, кстати, положит ли оно такое хорошее многоюзеровский терминальый сервер на основе иксов до такого же терминального состояния у вообще всех кто там висит графика будет раз в секунду рефрещиться? :)

> Ну и последнее, есть подозрение, что для упрощения своей работы Qt и
> GTK просто не пользуются теми возможностями, которые предоставляют X-ы,

Вы знаете, обычно если некто не пользуется иксовыми возможностями и рендерит сам - при этом тормозит как раз его собственный процесс. И вот это еще куда ни шло бы. Но в данном случае похоже что таки какая-то возможность иксов поюзалась и иксы сделали при этом то что обычно - облажались. Так что в это дело все и уперлось в результате. В иксы. А вот это уже довольно фатально, поскольку графика встает колом по всей системе. И становится проблемно пользоваться "системой вообще", навевая воспоминания о чудных виндах 3.1 :)

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру