Здравствуйте, mihailik, Вы писали:
V>>А вот так.. Ты видел Win на которой от оригинального MS-продукта стоит только то, что ты называешь "ядром"?
V>>Я вот нет.. поэтому и называю "ядром" всё API..
M>Это совершенно твоё особое понимание. Мало общего с реальной действительностью.
V>>Соотв. если в проекте Linux команда отвечающая за ядро, тестирует только функции ядра (~200 шт),
V>>а за всё остальное отвечают множество других команд (и соотв выбор вариантов гораздо больший),
V>>То в MS команда отвечает сразу за всё.. и тестить и переносить это "чудо" приходится соответственно.. разом все ~2000 функций..
M>Серьёзно? Ты был в этой команде, или может знаком с кем-то из этой команды? Сомневаюсь.
M>Ты слишком увлёкся обобщениями. Микрософт — реальная контора, делющая реальную работу. И, будь уверен, они там деньги считать умеют, и технологический процесс поставить не дураки.
V>>У меня вот вообще вопрос, GDI в Win работает через функции ядра? или у него "прямой хак"?
M>GDI в Windows работает через функции ядра. Обращается к драйверам через функции ядра. Драйверы работают некоторой частью в режиме ядра, некоторой — в пользовательском режиме.
Мужик ты гонишь, драйвера ВСЕГДА И ТОЛЬКО работают в ядре.
M>То есть, в режиме ядра отрабатывается минимум, чтобы уменьшить время отклика. Через специальный механизм отложенных вызовов дополнительные более длительные функции отрабатываются в пользовательском режиме.
Из ядра вызываются функции пользовательского режима Я правильно понял

мужик ты просто гонишь.
M>Кроме того, есть много специальных ухищрений именно в GDI и оконной подсистеме, связанных с дублированием данных, чтобы уменьшить необходимое число "переходов" между режимом ядра и пользовательским режимом. Для каждого окна хранится кроме действительно необходимой ещё некоторое количество "окружающей" информации.
Ага конечно, они просто копируются приложение->ядро->подсистема->ядро->приложение
M>Механизм DLL как раз помогает абстрагироваться от подробностей ядро/драйвер/подсистема. Программы используют просто функции и не берут в голову, на каком уровне они выполняются. Например, в Windows 9x все эти механизмы совершенно другие, там куча "прямых хаков". Но практически все программы работают что там что там — и не жужжат. Это большой плюс.
M>Естественно, у механизма DLL есть и неудобства. Но просто так поливать их грязью, как тут кто-то высказывался — неверно. Очень полезный механизм.
M>Естественно, приходится поддерживать множество устаревшего кода, устаревших моделей взаимодействия. И это говорит в плюс Микрософту — совместимость действительно важна, и сделана она очень качественно.