Що таке MinWin і навіщо він потрібний
… також відомий як “Not a kernel guy”
Я дивлюся, що кожна згадка слова «MinWin» (останнім відзначився Марк українович на PDC 2009) викликає багато питань, головне з яких – «що це таке і навіщо воно взагалі треба?» Спробую відповісти з мірою свого розуміння. Зауважу, що свічку над MinWin я не тримав, тому вважати мої слова істиною в останній інстанції не варто.
Грунтуючись на цій інформації, вже можна відповісти на деякі з питань. Ні, MinWin це не "нове" ядро. Хоча визначте, що означає «нове» спочатку. Ядро Windows 7 – це просто наступна версія ядра Vista. А ядро Vista – це наступна версія ядра W2K3, яке, своєю чергою, - розвиток ядра XP.
Також можна зрозуміти, чому "маленький" MinWin займає цілих 28MB, хоча той же Linux можна запакувати на дискету. Завдання творців MinWin полягала аж ніяк не у створенні мінімальної операційної системи. Їхнє завдання полягало в тому, щоб окреслити мінімальний самодостатній шматочок Windows, який буде базовим будівельним блоком для всіх редакцій системи, включаючи Datacenter Edition. Саме тому, до речі, у Windows 7 (а насправді в MinWin) з'явилися API sets - віртуальні DLL, що дозволяють групувати логічно пов'язані API незалежно від того, яка бібліотека їх насправді містить.
Треба сказати, що 99% роботи, виконаної авторами MinWin, залишилося за кадром. Плоди їхньої праці стануть помітними з виходом наступних версій Windows, якщо, звичайно, все піде як планувалося. Основна їхня заслуга полягає в упорядкуванні залежностей між базовими системними компонентами. З цієї точки зору MinWin - це просто демонстрація можливостей, що з'явилися.