Исследовательница Google и экс‑сотрудница Microsoft: Windows NT «затмевает Linux». linux.. linux. windows.. linux. windows. windows nt.. linux. windows. windows nt. аналитика.. linux. windows. windows nt. аналитика. архитектура.. linux. windows. windows nt. аналитика. архитектура. инженеры.. linux. windows. windows nt. аналитика. архитектура. инженеры. искусственный интеллект.. linux. windows. windows nt. аналитика. архитектура. инженеры. искусственный интеллект. операционные системы.

Исследовательница из Google Лори Кирк, ранее четыре года проработавшая инженером по обратному проектированию в Microsoft, вновь подняла один из старейших споров в сфере вычислительной техники — выбирать ли Windows или Linux. По её мнению, Linux в этом противостоянии проигрывает.

Исследовательница Google и экс‑сотрудница Microsoft: Windows NT «затмевает Linux» - 1

Лори Кирк, которая присоединилась к Google в 2024 году, написала, что «ядро NT — это поистине инженерный шедевр, который во многих отношениях до сих пор оставляет Linux далеко позади».

Кирк хвалит именно архитектуру Windows — то, как NT управляет ресурсами и определяет права доступа к ним. Речь идёт не о меню «Пуск», Copilot или рекламе в Windows. Кирк развивает мысль, заглядывая в 2026 год: она задаётся вопросом, подходит ли Linux для работы ИИ‑агентов, чьи полномочия растут с каждым месяцем, и представляет альтернативный сценарий, в котором Microsoft выпустила бы «Open NT» — версию с открытым исходным кодом, которую могла бы форкнуть компания Amazon. Инженеры в комментариях выступили с резкой критикой, утверждая, что модульная структура Linux — это осознанное решение, а обилие форков погубило бы любую версию Open NT.

Исследовательница Google и экс‑сотрудница Microsoft: Windows NT «затмевает Linux» - 2

Ядро Windows NT служит фундаментом для всех основных выпусков Windows с 1993 года, включая Windows 11. Microsoft наняла Дэйва Катлера в октябре 1988 года, после того как он руководил разработкой VMS в компании DEC. По данным Microsoft, его небольшая команда бывших инженеров DEC потратила полгода на составление спецификаций, прежде чем приступить к написанию кода; ключевыми целями были переносимость, поддержка многопроцессорных систем и сертификация безопасности уровня C2.

Дэйв Пламмер, инженер Microsoft на пенсии и создатель «Диспетчера задач», отметил: «NT не была первым подобным проектом для Дэйва Катлера, и это заметно по тому, насколько дальновидной оказалась эта система — и остаётся таковой по сей день». Он добавил: «После RSX-11M и VMS создание Windows NT стало для него уже третьим опытом разработки ядра с нуля».

Проект начинался как NT OS/2 — операционная система, изначально написанная для процессора Intel i860, а затем перенесённая на архитектуру MIPS. Microsoft сменила основной вектор развития с OS/2 на Win32 после того, как Windows 3.1 разошлась тиражом в 16 миллионов копий всего за полгода.

Что касается Windows 11, то лучше всего ситуацию описал Франко Минуччи, инженер по разработке SoC в Nokia: «Проблемы Windows 11 касаются скорее оболочки, чем ядра». Основная волна критики в адрес Windows 11 была связана с ИИ: от негативной реакции на внедрение функций «агентной» ОС до заявлений Microsoft о том, как сильно компания ценит опытных пользователей, на фоне непонимания со стороны руководителя ИИ‑направления, почему возможности искусственного интеллекта не впечатлили аудиторию.

Архитектура Windows NT основана на объектах — именно это Кирк и имеет в виду, называя её объектно‑ориентированной. По её словам, NT «больше напоминала объектно‑ориентированный язык с надёжной моделью безопасности, заложенной с самого начала, в то время как Linux — совсем не такова».

Разумеется, термин «объектно‑ориентированная» здесь используется как аналогия. В Microsoft отмечают, что Windows не является объектно‑ориентированной в классическом понимании (как в C++), и предпочитают термин «объектно‑ориентированная архитектура» (или система, основанная на объектах).

В NT процессы, потоки, файлы, устройства, ключи реестра, мьютексы, задания (jobs) и маркеры доступа — всё это является объектами (всего существует более 25 их типов). Специальный компонент — диспетчер объектов (Object Manager) — отвечает за их создание и уничтожение, ведёт их пространство имен, отслеживает, какие объекты закреплены за конкретными процессами, и контролирует права доступа. Другие компоненты могут взаимодействовать с объектом только через функции, предоставляемые его владельцем; по утверждению Microsoft, это позволяет изменять внутреннюю реализацию компонента, не нарушая работу остальной системы.

Для разработчиков это взаимодействие происходит через дескрипторы (handles). Когда приложение открывает файл, Windows возвращает дескриптор и сохраняет связанные с ним права доступа; в дальнейшем каждый запрос проверяется на соответствие этим правам. При дублировании дескриптора (handle) права у копии можно отобрать, но добавить новые — нельзя. В документации Microsoft описывалась модель, основанная преимущественно на правах, назначаемых конкретным объектам, с добавлением небольшого набора общесистемных привилегий.

При входе в систему Windows создаёт маркер доступа, содержащий идентификатор безопасности (SID), сведения о группах и привилегиях; копия этого маркера передаётся каждому запускаемому процессу. Каждый защищаемый объект имеет дескриптор безопасности со списками управления доступом (ACL), в которых указано, какие права разрешены или запрещены для конкретных SID. Если запросить доступ к объекту, Windows сверяет маркер со списком ACL и выдает дескриптор (handle) с набором предоставленных прав.

Дескриптор также содержит системный список ACL, управляющий аудитом, что позволяет администраторам регистрировать как успешные попытки доступа к объектам, так и случаи отказа в доступе.

Наличие надёжной модели ещё не гарантирует безопасность всей ОС. Система NT 3.5 получила сертификат уровня C2 в 1995 году, однако лишь в конфигурации автономного ПК без сетевых подключений и только после ужесточения настроек безопасности по умолчанию. Кен К., инженер по инфраструктуре, ранее работавший в Bloomberg и Reuters, попросил Кирк назвать «какой‑либо ещё продукт, требующий ежемесячных обновлений, чтобы не рискнуть стать жертвой взлома». По его словам, драйверы, настройки по умолчанию и десятилетия работы над обеспечением совместимости влияют на безопасность Windows не меньше, чем само ядро.

Модель безопасности Linux сложнее. «Используете ли вы UID? GID? ACL? Cgroups? Политики? SELinux? Режимы доступа к файлам?» — спрашивает Кирк, утверждая, что здесь отсутствует «единый целостный граф прав доступа (capabilities)». Имеется в виду, что каждый компонент выполняет свою задачу. UID и GID идентифицируют пользователей и группы, а режимы доступа к файлам и ACL защищают сами файлы. Механизм capabilities (привилегий) разделяет полномочия суперпользователя (root), позволяя, например, веб‑серверу привязываться к 80-му порту без получения полных прав root. Пространства имен (namespaces) предоставляют процессу собственное представление о точках монтирования, других процессах или сети (именно так работают контейнеры); cgroups ограничивают использование ресурсов ЦП и памяти; а SELinux и другие модули безопасности Linux (LSM) обеспечивают соблюдение дополнительных политик.

В документации ядра по LSM сказано, что АНБ представило SELinux в 2001 году в виде отдельного патча. Линус Торвальдс в ответ предложил создать универсальный каркас (фреймворк) с точками встраивания (хуками), к которым могла бы подключаться любая модель безопасности; этот механизм был включён в состав ядра в декабре 2003 года. Сейчас ядро ​​поставляется с поддержкой SELinux, AppArmor, Smack, TOMOYO, Landlock и других систем.

Кен К. утверждал, что модель модульных дополнений — это объединяющая философия Unix и Linux, составляющая «саму суть» этих систем. Кевин Фолкнер добавил, что опциональное использование SELinux позволяет некоторым проектам в области высокопроизводительных вычислений (HPC) избежать накладных расходов, которые для них неприемлемы.

Ни один из лагерей не может претендовать на то, чтобы единолично определять, что такое «чистая архитектура». Система NT строится вокруг единой объектной модели, тогда как Linux развивался путем добавления модульных механизмов к базовой архитектуре Unix.

Кирк полагает, что архитектура NT может пойти по пути использования «ресурсов с явной типизацией» и обеспечить «надёжные централизованные журналы аудита на случай, если агент выйдет из‑под контроля». 

Исследовательница Google и экс‑сотрудница Microsoft: Windows NT «затмевает Linux» - 3

Механизм Landlock в Linux, появившийся в версии ядра 5.13, позволяет даже непривилегированным процессам ограничивать собственный доступ к файловой системе и сети. Правила наследуются дочерними процессами и могут становиться только строже, а отклонённые запросы по умолчанию фиксируются в журнале аудита. В сочетании с seccomp, пространствами имен (namespaces), cgroups и LSM (модулями безопасности Linux) это позволяет эффективно изолировать агента. В документации Landlock, правда, признается, что пространства имён «не предназначены для контроля доступа», что перекликается с замечанием Кирк.

Таким образом, спор идет о том, упростит ли ОС, изначально спроектированная с расчетом на агентов, управление этими механизмами защиты; Microsoft как раз работает над таким решением. На конференции Build 2026 компания анонсировала технологию Microsoft Execution Containers (MXC): разработчики декларируют, к каким ресурсам агент будет иметь доступ, а Windows обеспечивает соблюдение этих ограничений во время выполнения. Изоляция сеансов MXC предполагает запуск агентов от имени собственных учётных записей, благодаря чему каждое действие можно однозначно связать с конкретным агентом. В компоненте Agent Workspace для Windows 11 уже используются списки контроля доступа (ACL), чтобы ограничить права учетных записей агентов рамками полномочий пользователя.

Агенты в Windows получают собственные идентификаторы безопасности (SID), маркеры доступа и списки ACL — то есть используют именно ту модель NT, которую хвалит Кирк. Разумеется, курс Microsoft на внедрение агентов в ОС — от ИИ‑помощника на панели задач до фонового агента с доступом к личным папкам — сопровождался предупреждениями о рисках, связанных с вредоносным ПО. Эти разработки не означают, что Microsoft разделяет мнение Кирк насчет Linux, но компания определённо задаётся тем же вопросом. 

Кирк считает, что в начале 2000-х годов Microsoft следовало создать «Open NT» — не в духе полной лицензии GPL, а в таком формате, который позволил бы крупной организации, например, заменить стандартный аллокатор памяти на собственный. В качестве примера она приводит гипотетическую ситуацию, когда ранняя версия Amazon создает «AmazonNT» для сервиса EC2, оснащая систему собственным планировщиком или сетевым стеком, в то время как Microsoft обеспечивает стабильную базовую платформу, гарантирующую безопасность и совместимость.

Кирк признаёт, что Microsoft «отчасти сделала это». Программа Shared Source Initiative предоставляла доступ к исходному коду Windows примерно 1600 корпоративным клиентам, университетам и государственным структурам. В 2001 году Министерство внутренних дел Австрии стало первым европейским государственным ведомством, получившим исходный код Windows XP. В 2006 году проект Windows Research Kernel позволил представителям академических кругов модифицировать планировщик и диспетчер памяти NT, однако исключительно в учебных и исследовательских целях.

Программа Shared Source позволяла изучать код, но не давала Amazon возможности выпустить коммерческий форк NT.

Главный довод против концепции Open NT со стороны сообщества Linux — это издержки, связанные с созданием форков. Дэвид Эйрли, опытный разработчик ядра Linux, отвечающий за его графическую подсистему, отметил: «С форками так дела не делаются. Их обслуживание со временем обходится слишком дорого».

Кирк привела в пример Java, где Corretto, GraalVM, Azul и OpenJ9 ориентируются на единую спецификацию, но используют разные движки. Эйрли возразил, что у этих проектов есть платящие клиенты, тогда как внутренний форк NT, не приносящий дохода, постоянно находился бы под угрозой закрытия. «Многие создают форки Linux, поддерживают их год или пять, а затем понимают, что из‑за высоких затрат необходимо работать с основной веткой (upstream)», — добавил он.

Если бы Amazon переписала планировщик NT, каждое исправление безопасности от Microsoft приходилось бы интегрировать и повторно тестировать ежемесячно — вплоть до того момента, пока команда, занимающаяся форком, не превратилась бы во вторую команду разработчиков ядра. В случае с Linux компании отправляют полезные изменения в основную ветку, где их поддерживает сообщество, поэтому архитектуру и модель разработки здесь невозможно разделить.

Кирк полагает, что наличие стабильного интерфейса (контракта) NT позволило бы поддерживать жизнеспособность форков. Эйрли же утверждает, что поддержка ответвленного ядра обходится дорого, даже если исходный код полностью открыт.

Кен С., обладающий многолетним опытом работы в сфере ИТ и обеспечения надёжности систем, отметил, что присущая VMS согласованность перешла в NT лишь частично. Он задался вопросом, как добиться детерминированной производительности от NT (не являющейся системой реального времени) без избыточных затрат на оборудование, а свои слова о реестре назвал «непригодными для озвучивания на профессиональной площадке».

Рикардо Банффи, старший инженер‑программист, отметил, что в NT 4.0 драйверы были перенесены в пространство ядра ради повышения скорости графики. Документация Microsoft подтверждает, что в NT 4.0 диспетчер окон, GDI и графические драйверы были перемещены в ядро, из‑за чего сбой в графическом драйвере мог привести к краху всей ОС. Позднее в Windows 2000 появились модель драйверов Windows (WDM), поддержка Plug and Play, управление электропитанием, WMI и объекты заданий (job objects), а каждый последующий выпуск привносил всё новые и новые компоненты. Ядро NT в Windows 11 — это вовсе не архитектура образца 1993 года. 

Успех Linux — самый весомый аргумент против гипотетической альтернативной истории развития NT. ОС завоевала рынок серверов и облачных технологий, поскольку любой мог модифицировать систему, запускать её на недорогом оборудовании и отправлять изменения обратно разработчикам; это способствовало развитию контейнеризации, инструментов для разработчиков и платформы Android. В комментариях к обсуждению разработчик Оливер М. С. отметил такие преимущества, как эффективность и возможность полного контроля, а основатель и генеральный директор Шон Мерт привел мнение системного администратора Nasdaq: лишь VMS сохраняла стабильность при нагрузках, характерных для биржевых систем.

Ирония заключается в том, что Microsoft посвятила 2026 год превращению Windows в более удобную среду для Linux. Ubuntu на Windows 11 распространяется быстрее, чем на компьютерах с «родным» Linux, а подсистема WSL получает более быстрый доступ к файлам и улучшенные сетевые возможности. Microsoft также представила WSL Containers — решение, позволяющее запускать Linux‑контейнеры без использования Docker Desktop. Даже Google внедряет поддержку WSL в свои инструменты для работы с искусственным интеллектом.

Microsoft также создала инструмент, превращающий Windows 11 в компьютер, полностью готовый к программированию, и выпустила специальную версию Windows 11 для опытных пользователей (power users); тем не менее, согласно недавнему опросу, доля Windows среди разработчиков составляет всего 12%.

Кирк также отметила, что ядро, созданное в 2026 году, могло бы по своей структуре напоминать NT или даже быть форком BSD. Она назвала архитектуру BSD “более стройной” — с меньшим количеством дублирующих способов определения прав доступа (capabilities) — и высоко оценила раннее появление в ней механизма «изоляторов» (jails).

Механизм jails в FreeBSD изолирует представление процесса о файловой системе, пользователях и сети. Система Capsicum ближе к идеям Кирк: процесс, работающий в режиме capabilities, теряет доступ к глобальным пространствам имён и может использовать лишь те права, которые были явно переданы ему через файловые дескрипторы. При этом Capsicum была разработана в Кембридже при финансовой поддержке Google.

Модель безопасности, основанная на правах доступа (capability‑based security), — не изобретение Microsoft; по сути, аргумент Кирк сводится к тому, как именно операционная система управляет полномочиями и правами доступа. Главный вопрос заключается в том, какие задачи операционная система должна упрощать в 2026 году и в дальнейшем. Архитектура NT предполагает, что ресурсы имеют чётко определенные типы, права доступа привязаны непосредственно к ним, а сама ОС осуществляет проверку и аудит всех операций централизованно. Linux же опирается на гибкую базу Unix, предлагает модульные механизмы и позволяет дистрибутивам и администраторам комбинировать необходимые компоненты.

Ни один из этих подходов сам по себе не гарантирует безопасность ОС. Однако развитие ИИ смещает акцент: теперь важно не столько то, кто является пользователем, сколько то, какие действия может выполнять программный агент — к каким ресурсам получать доступ, как долго работать, от чьего имени действовать и как подтверждать совершенные операции.

NT не стала доминирующей ОС в мире серверов и облачных технологий — это первенство досталось Linux. И все же, спустя 33 года после выхода NT 3.1, в основе Windows по‑прежнему лежат объекты, дескрипторы (handles), токены и списки контроля доступа (ACL); теперь Microsoft использует их для изоляции ИИ‑агентов. Проект Open NT от Лори Кирк, вероятно, так и останется несбыточной мечтой. 

Автор: maybe_elf

Источник