Показать сообщение отдельно
Старый 15.08.2011, 14:23   #122
Пугатель
 
Аватар для [CCCP] Monster

 
Регистрация: 26.06.2005
Адрес: Москва, СССР
Сообщений: 6,111
Репутация: 1096 [+/-]
emptily, Это он про пайпы чтоли? На самом деле хорошо, когда интерфейсом удобно и быстро пользоваться. Как правило подход универсальных строительных блоков (ну вообще это на самом деле RISC-аналог в программной инженерии) просто перекладывает написание абстрактных оберток, которые нужны для выполнения действий, на прикладного программиста, и этим эти подходы различаются, больше ничем.

http://blogs.msdn.com/b/oldnewthing/.../23/45481.aspx

http://blogs.msdn.com/b/oldnewthing/.../15/55296.aspx

http://russian.joelonsoftware.com/Ar...theWaronA.html

Цитата:
Я впервые услышал об этом от одного из разработчиков популярной игры SimCity, который поведал мне о критической ошибке в их программе: она использовала память сразу после ее освобождения. Главное табу, нарушение которого прощалось в DOS, но карается в Windows, где освобожденную память тут же стащит другое работающее приложение. Тестеры в команде разработки Windows протестировали множество популярных приложений, чтобы убедиться, что все работает без сбоев, но SymCity зависала. Они сообщили это разработчикам Windows, которые дизассемблировали SymCity, шаг за шагом в дебаггере найдя ошибку, и добавили специальный код, проверяющий наличие SymCity в памяти и запускающий распределитель памяти в специальном режиме, в котором SymCity разрешается использовать память после ее освобождения.



И это было в порядке вещей. Команда тестировщиков Windows огромна, и она должна гарантировать – это и является ее главной задачей и ответственностью, – что каждый сможет безопасно обновить свою операционную системую. Не имеет значения, какое приложение инсталлированно, оно обязано работать, даже если ведет себя плохо, или использует недокументированные функции, или полагается на ошибочное поведение функции, которое было ошибочным в Windows n, но уже исправлено в Windows n+1. На самом деле, если вы загляните в секцию AppCompatibility вашего реестра, вы увидите целый список приложений, для которых Windows эмулирует старые ошибки и необычное поведение, поэтому они могут работать. Реймонд Чен пишет «Меня черезвычайно бесит, когда люди обвиняют Microsoft в преднамеренной невозможности запуска приложений после обновления ОС. Если приложение не запускается под Windows 95, я воспринимаю это за персональный провал. Я трачу много бессонных ночей, фиксируя ошибки программ сторонних производителей, чтобы они продолжали работать под Windows 95.»
Вот поэтому Microsoft божественны. Они заставляют чужие программы работать, не имея возможности ни исходные коды получить, ни разработчиков заставить. Они просто делают так, что все работает, причем в режиме бинарной совместимости, а не совместимости исходных кодов, как это происходит в Linux в 90% случаев. Совместимость на уровне исходных кодов - это самая неудобная совместимость для обычного пользователя.
__________________
Служу Советскому Союзу!

Хорошо смеется тот, кто стреляет первым! (танкистская мудрость)

Последний раз редактировалось [CCCP] Monster; 15.08.2011 в 15:13.
[CCCP] Monster вне форума  
Отправить сообщение для [CCCP] Monster с помощью Skype™ Ответить с цитированием