А знаете ли вы...
Sep. 15th, 2011 12:54 pm... что совершенно официально можно сделать Windows POSIX-совместимой операционной системой? При чём, не используя сторонних производителей. Вот официальный патч на сайте мелкомягких http://www.microsoft.com/download/en/details.aspx?DisplayLang=en&id=274
Microsoft Windows Services for UNIX — обеспечивает полное соответствие POSIX для некоторых продуктов Microsoft Windows. Операционные системы на базе Windows NT до Windows 2000 имели POSIX уровень встроенный в ОС, и UNIX Services for Windows предоставляло UNIX-подобное окружение. Для Windows XP, Windows Services for UNIX должны быть установлены для POSIX совместимости. UNIX подсистема встроена в Enterprise и Ultimate редакции Windows Vista, и не могут быть добавлены в другие редакции. http://ru.wikipedia.org/wiki/POSIX
Век живи, век удивляйся...
З.Ы. Плюс http://technet.microsoft.com/ru-ru/interopmigration/bb380242
Microsoft Windows Services for UNIX — обеспечивает полное соответствие POSIX для некоторых продуктов Microsoft Windows. Операционные системы на базе Windows NT до Windows 2000 имели POSIX уровень встроенный в ОС, и UNIX Services for Windows предоставляло UNIX-подобное окружение. Для Windows XP, Windows Services for UNIX должны быть установлены для POSIX совместимости. UNIX подсистема встроена в Enterprise и Ultimate редакции Windows Vista, и не могут быть добавлены в другие редакции. http://ru.wikipedia.org/wiki/POSIX
Век живи, век удивляйся...
З.Ы. Плюс http://technet.microsoft.com/ru-ru/interopmigration/bb380242
no subject
Date: 2011-09-15 09:16 am (UTC)В качестве примера программы на Native API можно привести, скажем, выполняющийся при загрузке chkdisk. Затем загружаются библиотеки, реализующие программный интерфейс Win32 (впервые он появился в Windows 3.1 и для Windows NT "родным" не является). Точно так же можно реализовать и "системные вызовы" POSIX (пишу в кавычках, потому как "системными вызовами" они являются далеко не всегда - многие из этих функций могут быть выполнены без переключения контекста и перехода в kernel mode).
Вообще, как я понимаю, подобный подход вполне нормален для микроядерных и гибридных ОС. Зачем запихивать в ядро все содержание MSDN, когда можно реализовать лишь несколько десятков "совершенно необходимых" системных вызовов? Вот, кстати, описание чего-то подобного в микроядерной и unixоидной Minix 3:
http://www.minix3.ru/docs/prog-calls-109.pdf