Чем объяснить тормоза и ненадёжность платформы Windows CE?

Культурный флейм, слухи, невероятные новинки
ВадимП
Нобелевский лауреат (7 lvl)
Сообщения: 6385
Зарегистрирован: Ср июн 04, 2003 15:03

Сообщение ВадимП » Вт май 22, 2007 20:41

Если в двух словах, то причина в том, что до сих пор не удалось достаточно надежно изолировать одно приложение от возможного влияния другого.
Теоретические подобные ситуации возможны и без графической оболочки (одно приложение захватило в монопольный доступ ресурс, необходимый другому приложению) но там эти проблемы упрощаются намного мЕньшей степенью взаимодейтсвия между процессами и отсутствием критически важных ресурсов, которые можно было бы захватить, заблокировав тем самым всю систему (все блокировки устанавливаемые процедурами ядра ими же и снимаются до выхода из режима супервизора).
Изза чего одна программа может заблокировать всю систему? Вариантов сотни и по мере совершенствования графических оболочек потенциальные "узкие места" последовательно убирались. Но поскольку, как уже было сказано, все графические программы разделяют доступ к ресурсам одной и той же оконной системы (и активно взаимодействуют между собой - чтобы одно приложение было вынуждено предпринимать какие-то действия изза операций с другим приложением, может оказать достаточным одного того, что окно первого окажется частично закрыто окном второго).
Давайте посмотрим на эволюцию оконных систем MS:
Возьмем самую первую реализацию графической оболочки управляемой событиями - ту windows, которая запускалась поверх MS-DOS (независимо от версии).
У неё была единственная очередь событий (в 16-разрядной подсистеме windows 9х сохранилась та же ситуация). Безотносительно к тому, как была бы реализована многозадачность в оболочке (кооперативная или истинная) одно повисшее приложение могло заблокировать все остальные, потому что блокировалась выборка событий из очереди.
В win95 сделали очереди приложений, куда можно было запихнуть событие из системной очереди, чтобы остальные приложения могли продолжать выборку. Но это проблему тоже не решило и плюс возникла еще проблема с глобальными блокировками - многие модули содержали нереентерабельный код (скажем, GDI или user), т.е. их могло одновременно использовать только одно приложение, поэтому повисшее 16-разрядное приложение вешало не тольку всю подсистему win16, но могло завесить и всю win32, которая не могла получить доступ....
Ну и т.д.

Продолжение:
Как можно понять, количество проблем было огромно, поэтому проще было написать новое ядро, чем латать дыры в старом.
Поэтому в Win NT указанные выше проблемы (за исключением проблем с очередями сообщений) были устранены: весь код стал реентерабельным, исполнение "унаследованных" 16-разрядных приложений производилось в обособленном адресном пространстве, ограничен доступ к разделяемой памяти процессов, полностью закрыт доступ к памяти системы со стороны процессов пользователя.
Тем не менее, множество проблем со стабильностью так и не было решено и причиной опять-таки стали очереди сообщений.... (потом допишу, если не лень будет)

const_mech
Академик (6 lvl)
Сообщения: 1297
Зарегистрирован: Пт сен 23, 2005 18:17

Сообщение const_mech » Чт май 24, 2007 10:35

ВадимП, очень познавательно. Если будете дописывать, X-Window помяните.

А касательно топика, значит WinCE оттого особенно глючная, что работает НЕ на новом движке WinXP, а на НЕдолатанном движке Win95.

Вопрос: А тот факт, что в WinMob окна частично НЕ перекрываются, но всегда полностью. Это, потенциально, серьёзное упрощение? В плане влияния на стабильность.

sshd
Нобелевский лауреат (7 lvl)
Сообщения: 2159
Зарегистрирован: Вс мар 19, 2006 15:55

Сообщение sshd » Чт май 24, 2007 10:56

const_mech писал(а):А касательно топика, значит WinCE оттого особенно глючная, что работает НЕ на новом движке WinXP, а на НЕдолатанном движке Win95
WinCE работает на "движке" WinCE, и не имеет никакого отношения к Win95
const_mech писал(а):Вопрос: А тот факт, что в WinMob окна частично НЕ перекрываются, но всегда полностью
не всегда.
никто не запрещает создать неполноэкранное окно.
Samsung GT-S8500 + MicroSD 8Gb

ВадимП
Нобелевский лауреат (7 lvl)
Сообщения: 6385
Зарегистрирован: Ср июн 04, 2003 15:03

Сообщение ВадимП » Чт май 24, 2007 11:39

Да ничего познавательного нет, а X-window ничуть не лучше (а в определенных отношениях даже хуже, чем оболочка windows).
Просто проблема в том, что как тут было справедливо замечено, более сложные системы менее надежны. Никакого закона природы запрещающего создавать стабильные графические оболочки мне неизвестно.
Поэтому как-то проиллюстрировать свои слова я могу единственным образом: взять эволюцию любой оболочки и начать приводить примеры, что как только затыкали одну дырку, тут же обнаружмвалась следующая....
И что эти дырки появлялись не вследствие случайных ошибок в программировании, а были изначально присущи данной архитектуре.
И опять получится, что для того чтобы проиллюстрировать нехитрую в общем-то мысль у меня уйдет две страницы печатного текста (как это было в "оффтопиках", где я спорил с уважаемым Дартом по вопросу о том, насколько быстро может развиться лекарственная зависимость - я даже не уверен, что хоть кто-то нашел в себе силы прочитать там мою аргументацию до конца). ;)

const_mech
Академик (6 lvl)
Сообщения: 1297
Зарегистрирован: Пт сен 23, 2005 18:17

Сообщение const_mech » Чт май 24, 2007 16:04

sshd писал(а):WinCE работает на "движке" WinCE, и не имеет никакого отношения к Win95
Да, точно, это они "внешне похожи", но НЕ совместимы.

::::::::::::::::::::::::::::

ВадимП, тогда без доказательств и пояснений, только ваше мнение:
В этом отношении гораздо надежнее вообще ее не иметь, а писать игру на манер игр под ms-dos при помощи, скажем, SDL (simple direct media layer). У этой библиотеки нет необходимости в графической среде - она может работать напрямую с кадровым буфером или вообще с ascii графикой. Но много ли Вы найдете готовых отказаться от графического интерфейса пользователя?
Возможно ли, используя подобные БЕЗоконные технологии, создать НЕ просто отдельную игру, а полнофункциональный пользовательский интерфейс к Системе и обычные пользовательские приложения? Веб-браузер с картинками, WYSIWYG редактор печатных документов, редактор таблиц, фото-вьювер, графический редактор, видео-плеер...

Трудозатраты на создание приложений при этом сильно увеличатся?

sshd
Нобелевский лауреат (7 lvl)
Сообщения: 2159
Зарегистрирован: Вс мар 19, 2006 15:55

Сообщение sshd » Чт май 24, 2007 16:09

const_mech писал(а):Да, точно, это они "внешне похожи"
хм....... а внешне чем похожи?
контролы вроде немного по-другому выглядят (даже в чистой CE, не говоря уже о WM).
Samsung GT-S8500 + MicroSD 8Gb

const_mech
Академик (6 lvl)
Сообщения: 1297
Зарегистрирован: Пт сен 23, 2005 18:17

Сообщение const_mech » Чт май 24, 2007 16:17

sshd писал(а):хм....... а внешне чем похожи?
контролы вроде немного по-другому выглядят (даже в чистой CE, не говоря уже о WM).
http://offline.computerra.ru/1998/231/1028/
Microsoft продвигает Windows CE под флагом установления единого стандарта для НРС, где до ее появления практически все производители использовали разные операционные системы (однако такие разработки, например, как GEOS компании Geoworks, повсеместного распространения не получили). Windows CE - это операционная система не только для карманных компьютеров: Microsoft хочет засунуть ее еще и в автомобили, и в smart phone, и в DVD-проигрыватели и т. д. и т. п. Правда, говоря о стандарте, Microsoft не упоминает о том, что Windows CE и любые другие Windows - "две большие разницы". Под Windows CE работают только приложения, написанные специально для нее. Windows CE, конечно, очень похожа на Windows 95 (представьте себе рабочий стол Windows 95, только меньшего размера и черно-белый), и поэтому пользователю, привыкшему к Windows 95, не нужно прикладывать добавочных усилий, чтобы научиться работать с Windows CE. Соответствующие карманные приложения Microsoft - Pocket Word, Pocket Excel, Pocket Internet Explorer - также внешне очень схожи со своими настольными собратьями. Для продвижения платформы, как, надо заметить, справедливо полагает Microsoft, такого сходства вполне достаточно, и несовместимость 3 с Windows 95 - помеха незначительная.

Завоевав рынок персональных компьютеров, Microsoft ожидает, что покупатели карманных компьютеров, в большинстве своем знакомые с Windows 95, "клюнут" на привычные им образы. Несомненно, в этих ожиданиях есть резон

sshd
Нобелевский лауреат (7 lvl)
Сообщения: 2159
Зарегистрирован: Вс мар 19, 2006 15:55

Сообщение sshd » Чт май 24, 2007 16:41

const_mech
ну и зачем цитировать статью 98-го года?
особенно порадовало это: "представьте себе рабочий стол Windows 95, только меньшего размера и черно-белый" :)
зачем же обязательно меньшего размера? и зачем чёрно-белый?
в общем статья устаревшая.

но по крайней мере я понял, почему ты ссылаешься именно на Win95, а не скажем WinXP, которая выглядит точно так же, но более актуальна.
Samsung GT-S8500 + MicroSD 8Gb

const_mech
Академик (6 lvl)
Сообщения: 1297
Зарегистрирован: Пт сен 23, 2005 18:17

Сообщение const_mech » Чт май 24, 2007 17:35

sshd писал(а):но по крайней мере я понял, почему ты ссылаешься именно на Win95, а не скажем WinXP, которая выглядит точно так же, но более актуальна.
А почему WinXP тогда, а НЕ Vista? ;)

Если мобильная и настольная Системы разошлись во времена Win95, то НЕ факт, что дальше они развивались паралельно. Могли развиваться и "перпендикулярно". И в современной WinCE может быть меньше сходства с настольными в новом (с WinXP), чем старом (с Win95).

sshd
Нобелевский лауреат (7 lvl)
Сообщения: 2159
Зарегистрирован: Вс мар 19, 2006 15:55

Сообщение sshd » Чт май 24, 2007 17:44

const_mech писал(а):А почему WinXP тогда, а НЕ Vista?
я пока с ней не работал.
const_mech писал(а):Если мобильная и настольная Системы разошлись во времена Win95, то НЕ факт, что дальше они развивались паралельно. Могли развиваться и "перпендикулярно". И в современной WinCE может быть меньше сходства с настольными в новом (с WinXP), чем старом (с Win95).
WinXP и Win95 выглядят одинаково.
так что если сравнивать, то с тем что актуально, а не с тем, что было 12 лет назад.
концепция интерфейса с тех пор не изменилась. те же окошки, так же выглядят.
Samsung GT-S8500 + MicroSD 8Gb

sshd
Нобелевский лауреат (7 lvl)
Сообщения: 2159
Зарегистрирован: Вс мар 19, 2006 15:55

Сообщение sshd » Чт май 24, 2007 23:03

Data_Link писал(а):скажете иксы не так выглядят? идея ксероса оказалась жутко живучей...
так я про то и говорю.
мне было непонятно, почему сравнивают именно с Win95.
а после ссылки на ту статью, я понял, что это просто информация оттуда.
Samsung GT-S8500 + MicroSD 8Gb

Аватара пользователя
kosolapiy
Нобелевский лауреат (7 lvl)
Сообщения: 9154
Зарегистрирован: Сб янв 20, 2007 14:03

Сообщение kosolapiy » Пт май 25, 2007 01:17

помоему сравнение с десктопом- неккоректно. Как можно брать за основу ядро операционки, у которой совершенно другое назнпчение, совершенно другие условия работы, и расчитана на совершенно другое железо? вы себе представьте ноутбук, который постоянно работает, он разряжается- его опять заряжают, опять разряжается, и постоянно включен! Да он просто износится за полгода! и операционка тут будет совершенно непричём! А покеты используют именно так, всё время проц уходит в спящий режим, и ведь мы не ждём минуты для того чтобы он загрузился, выдернули из слипа и сразу юзать! я чтото не припомню такой фичи ни в 95, ни в Висте!
Идите в жопу. Вот вам трость и компас.

Аватара пользователя
alien8
Нобелевский лауреат (7 lvl)
Сообщения: 15032
Зарегистрирован: Пт июн 11, 2004 23:40

Сообщение alien8 » Пт май 25, 2007 01:23

>>вы себе представьте ноутбук, который постоянно работает, он разряжается- его опять заряжают, опять разряжается, и постоянно включен! Да он просто износится за полгода! и операционка тут будет совершенно непричём!

Смотря какой ноут. Что в нем износится? HDD и кулер. Безвентиляторные ноуты есть, ноуты с SSD-дисками есть. Возможно есть и то и то "в одном флаконе", не интересовался.
Пятый укрепленный каземат для самых буйных. Не расковывать, с рук не кормить.

Аватара пользователя
Ar-Gen-Tum
Академик (6 lvl)
Сообщения: 1278
Зарегистрирован: Чт ноя 30, 2006 00:48

Сообщение Ar-Gen-Tum » Пт май 25, 2007 02:05

kosolapiy писал(а):помоему сравнение с десктопом- неккоректно. Как можно брать за основу ядро операционки, у которой совершенно другое назнпчение, совершенно другие условия работы, и расчитана на совершенно другое железо?
Вообще-то между настольной Windows и мобильной сходства
больше чем различий.
И сходство заключается в практически одинаковом Win API, за небольшими
исключениями.
Я где-то видел, что API взято от Windows 2000(где-то так).
Простая программа, рисующая окно и использующая Win API,
выглядит почти одинаково, что для ББ, что для КПК на WM.
Acer n311 + Transcend SD 4GB(x150) + BT-359 + Nokia 6021
+ Pentax K110D + Eee PC 701( 4G-X) + Eee PC 904HD

ВадимП
Нобелевский лауреат (7 lvl)
Сообщения: 6385
Зарегистрирован: Ср июн 04, 2003 15:03

Сообщение ВадимП » Пт май 25, 2007 04:16

const_mech писал(а):Возможно ли, используя подобные БЕЗоконные технологии, создать НЕ просто отдельную игру, а полнофункциональный пользовательский интерфейс
Безусловно. И куча примеров у Вас перед глазами - это многие из обычных телефонов.

Закрыто

Вернуться в «Культурный флейм, слухи»