dlinyj: (Default)
[personal profile] dlinyj
... что совершенно официально можно сделать 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

Date: 2011-09-15 09:16 am (UTC)
From: [identity profile] Шура Люберецкий (from livejournal.com)
Дык Windows (буду говорить про семейство NT) в этом плане вообще очень интересна. Там есть некое Native API, правда, очень слабо документированное. Над этим Native API можно "построить" как реализацию POSIX, так и реализацию Win32. Когда NT разрабатывалась, вопрос совместимости с POSIX стоял довольно остро - система была расчитана на серверы и рабочие станции, где традиционно использовались UNIX-образные системы, в том числе и с самописным софтом. Работоспособность последнего была крайне важна.

В качестве примера программы на 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

January 2026

S M T W T F S
    123
456 78910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 22nd, 2026 11:28 pm
Powered by Dreamwidth Studios