MinWin

Поделись знанием:
Перейти к: навигация, поиск

MinWin — это понятие, используемое Microsoft для описания ядра и операционной системы, основные компоненты которых начали разрабатываться одновременно с Windows Vista. Данное понятие впервые использовалось в 2003 для описания примерно 95 % компонентов операционной системы (правда, со временем этот процент снизился). Это самый популярный вариант минималистичной модульной сборки компонентов Windows, который изначально планировалось сделать ядром Windows 7.

4 ноября 2008 года Марк Руссинович, член технического совета корпорации Microsoft, в своей веб-трансляции на MSDN Channel 9 сообщил, что в Windows 7 всё же внедрено ядро MinWin, но принцип его реализации основан на разделении ядра на слои, где базовый слой (KernelBase.dll и т. д.) суммарно занимает 30 Мб, а остальная функциональность остаётся в старых библиотеках (к примеру, kernel32.dll и т. д.). Для работы приложений и драйверов устройств это изменение незаметно благодаря тщательно продуманной схеме разделения функциональности.




Устройство и работа

Чтобы выделить MinWin, пришлось переработать некоторые компоненты (разделить или объединить). Например, библиотека kernel32.dll разделилась на kernel32.dll и kernelbase.dll. А чтобы эти изменения не коснулись программ высших уровней, вызовы всех «удаленных» функций в старых DLL перенаправляются в библиотеки от MinWin. Например:

  • Kernel32.dllKernelbase.dll
  • Advapi32.dllKernelbase.dll

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

Например: api-ms-win-core-errorhandling-l1-1-0.dll, где номера обозначают уровень иерархии в системе, мажорную и минорную версию. Схема отображения виртуальных DLL в физические хранится в Apisetschema.dll.

Все виртуальные DLL существуют физически, но не содержат в себе реализаций функций:

C:\Windows\System32>dir /a api* /B

api-ms-win-core-console-l1-1-0.dll
api-ms-win-core-datetime-l1-1-0.dll
api-ms-win-core-debug-l1-1-0.dll
api-ms-win-core-delayload-l1-1-0.dll
api-ms-win-core-errorhandling-l1-1-0.dll
api-ms-win-core-fibers-l1-1-0.dll
api-ms-win-core-file-l1-1-0.dll
api-ms-win-core-handle-l1-1-0.dll
api-ms-win-core-heap-l1-1-0.dll
api-ms-win-core-interlocked-l1-1-0.dll
api-ms-win-core-io-l1-1-0.dll
api-ms-win-core-libraryloader-l1-1-0.dll
api-ms-win-core-localization-l1-1-0.dll
api-ms-win-core-localregistry-l1-1-0.dll
api-ms-win-core-memory-l1-1-0.dll
api-ms-win-core-misc-l1-1-0.dll
api-ms-win-core-namedpipe-l1-1-0.dll
api-ms-win-core-processenvironment-l1-1-0.dll
api-ms-win-core-processthreads-l1-1-0.dll
api-ms-win-core-profile-l1-1-0.dll
api-ms-win-core-rtlsupport-l1-1-0.dll
api-ms-win-core-string-l1-1-0.dll
api-ms-win-core-synch-l1-1-0.dll
api-ms-win-core-sysinfo-l1-1-0.dll
api-ms-win-core-threadpool-l1-1-0.dll
api-ms-win-core-ums-l1-1-0.dll
api-ms-win-core-util-l1-1-0.dll
api-ms-win-core-xstate-l1-1-0.dll
api-ms-win-security-base-l1-1-0.dll
api-ms-win-security-lsalookup-l1-1-0.dll
api-ms-win-security-sddl-l1-1-0.dll
api-ms-win-service-core-l1-1-0.dll
api-ms-win-service-management-l1-1-0.dll
api-ms-win-service-management-l2-1-0.dll
api-ms-win-service-winsvc-l1-1-0.dll

См. также

Напишите отзыв о статье "MinWin"

Ссылки

  • [msdn.microsoft.com/en-us/library/windows/desktop/hh802935(v=vs.85).aspx Windows API Sets]

К:Википедия:Статьи без изображений (тип: не указан)

Отрывок, характеризующий MinWin

Положим, что Александр мог сделать все иначе. Положим, что он мог, по предписанию тех, которые обвиняют его, тех, которые профессируют знание конечной цели движения человечества, распорядиться по той программе народности, свободы, равенства и прогресса (другой, кажется, нет), которую бы ему дали теперешние обвинители. Положим, что эта программа была бы возможна и составлена и что Александр действовал бы по ней. Что же сталось бы тогда с деятельностью всех тех людей, которые противодействовали тогдашнему направлению правительства, – с деятельностью, которая, по мнению историков, хороша и полезна? Деятельности бы этой не было; жизни бы не было; ничего бы не было.
Если допустить, что жизнь человеческая может управляться разумом, – то уничтожится возможность жизни.


Если допустить, как то делают историки, что великие люди ведут человечество к достижению известных целей, состоящих или в величии России или Франции, или в равновесии Европы, или в разнесении идей революции, или в общем прогрессе, или в чем бы то ни было, то невозможно объяснить явлений истории без понятий о случае и о гении.
Если цель европейских войн начала нынешнего столетия состояла в величии России, то эта цель могла быть достигнута без всех предшествовавших войн и без нашествия. Если цель – величие Франции, то эта цель могла быть достигнута и без революции, и без империи. Если цель – распространение идей, то книгопечатание исполнило бы это гораздо лучше, чем солдаты. Если цель – прогресс цивилизации, то весьма легко предположить, что, кроме истребления людей и их богатств, есть другие более целесообразные пути для распространения цивилизации.
Почему же это случилось так, а не иначе?
Потому что это так случилось. «Случай сделал положение; гений воспользовался им», – говорит история.
Но что такое случай? Что такое гений?
Слова случай и гений не обозначают ничего действительно существующего и потому не могут быть определены. Слова эти только обозначают известную степень понимания явлений. Я не знаю, почему происходит такое то явление; думаю, что не могу знать; потому не хочу знать и говорю: случай. Я вижу силу, производящую несоразмерное с общечеловеческими свойствами действие; не понимаю, почему это происходит, и говорю: гений.
Для стада баранов тот баран, который каждый вечер отгоняется овчаром в особый денник к корму и становится вдвое толще других, должен казаться гением. И то обстоятельство, что каждый вечер именно этот самый баран попадает не в общую овчарню, а в особый денник к овсу, и что этот, именно этот самый баран, облитый жиром, убивается на мясо, должно представляться поразительным соединением гениальности с целым рядом необычайных случайностей.