1757

В чем отличия Windows от Linux

В чем отличия Windows от Linux

Большинство сравнений этих операционных систем проводится по принципам: свободное – несвободное, платное – бесплатное. Мы попробуем заглянуть глубже, разобрав основные принципы работы Windows и Linux.

Ядро

Основа, сердце и мозг любой операционной системы — это ее ядро. Его архитектура определяет принципы взаимодействия приложений с аппаратными ресурсами компьютера и периферийными устройствами.

Актуальные версии ОС Microsoft (7, 8.1 и 10) построены на гибридном ядре NT. Оно имеет модульную структуру и включается в себя микроядро, уровень аппаратных абстракций, драйверы и службы, работающие в режиме kernel-mode. Ядро работает в защищенной области и имеет полный доступ к системным и аппаратным ресурсам. Пользовательский режим состоит из двух подсистем: внутренней (интегральной) и внешней (подсистема окружения). Первая контролирует такие аспекты работы ОС, как авторизация, доступ к учетной записи, подключение к сети, использование сетевых сервисов и протоколов. Подсистема окружения отвечает за запуск программного обеспечения и графический интерфейс. Для операций пользовательского режима непосредственное обращение к аппаратной части исключается. Любой программный запрос предварительно обрабатывается ядром и передается дальше уже от его имени.

Схема работы гибридного ядра NT

Схематическая модель ядра NT с разделением по режимам работы

В семействе операционных систем Linux используется монолитное ядро с динамически подключаемыми модулями. В нем собраны все базовые сервисы – драйверы устройств, сетевые протоколы, управление дисковыми пространствами и файловой системой. На схеме показано условное разделение модулей по основным выполняемым задачам. Динамический механизм подключения позволяет вводить их в работу по мере необходимости, к примеру, при обнаружении нового устройства или по желанию пользователя. Добавление и удаление компонентов выполняется без остановки системы. Главным достоинством монолитного ядра считается скорость работы.

Монолитное ядро Linux

Схема ядра Linux с кольцом решаемых различными модулями задач

В последние годы наблюдается картина взаимной интеграции ОС на уровне ядер. Microsoft осуществляет поддержку виртуализации, разместив дистрибутивы Ubuntu, openSUSE и Debian в магазине MS Store, а в 2020 году обещает внедрить ядро Linux в дистрибутив Windows 10. С другой стороны, свободное сообщество реализовало KVM (kernel-based virtual machine). С помощью этой виртуальной машины Linux может запускать Windows поверх своего ядра.

Файловая система

В обеих операционных системах пользователь имеет свою домашнюю директорию с набором папок для хранения мультимедийных файлов, документов или фото. На этом сходство заканчивается. Windows использует иерархическую систему адресации. Жесткие диски, CD или DVD-ROM, а также другие внешние носители информации обозначаются буквами латинского алфавита. На HDD располагаются системные и пользовательские директории. Физические устройства (например, мышь и клавиатура) вынесены в отдельную категорию.

Дерево каталогов Windows

Древовидная файловая структура Windows от жесткого диска до конечного файла

В Linux буквенной адресации нет, а любое устройство система способна воспринимать как файл. Вместо диска «С» используется понятие корневая директория, обозначаемое символом «/». К ней монтируются все остальные папки как системные, так и пользовательские. Устройства также попадают в эту иерархию. К примеру, CD-ROM будет смонтирован как /dev/cdrom, а мышь как /dev/mouse.

Структура файловой системы Linux

Точки монтирования каталогов в Linux расходящиеся от корневой директории

Кардинальные различия в подходе требуют и разных файловых систем. В Windows по умолчанию используется NTFS (NT File System), а в семействе Linux наибольшее распространение получила EXT (Extended File System). Четвертая редакция, обозначаемая как ext4 или ext4fs, основная в современных дистрибутивах.

Метод сохранения конфигурации

В Windows основным местом хранения конфигураций и параметров является реестр операционной системы. Часть программ дополнительно создает файлы INI для записи пользовательских настроек и их быстрого редактирования. Повреждение реестра может привести к краху ОС, но внесение в него правок не требует повышенных привилегий. С другой стороны, централизованное хранение параметров дает необходимую гибкость при удаленном администрировании.

Реестр Windows

Вид редактора реестра Windows и диалогового окна с командой его запуска

В Linux хранение конфигураций децентрализовано. Системные конфигурации хранятся в каталоге /ext, а пользовательские в скрытых папках домашней директории. Редактирование настроек доступно в обычном текстовом редакторе, но требует повышенных привилегий. Не зная пароля root (главного администратора), пользователь не сможет вносить правки, и, следовательно, нарушить работу системы.

Права пользователей

Обе рассматриваемые ОС способны работать в многопользовательском режиме, но имеют серьезные различия в механизме его реализации. В Windows по умолчанию используются три категории доступа для пользователей: обычный, гостевой и административный. Наибольшими правами обладает администратор, наименьшими – гость. Обычный пользователь изначально сильно урезан в возможностях. В дополнение к этому существует система квотирования дискового пространства, инструменты управления групповой политикой и родительский контроль. При грамотном подходе администратор может ограничить возможности пользователя настолько, что для него компьютер станет большой пишущей машинкой или калькулятором с экраном. Такой подход удобен для организаций, но мало применим к домашнему ПК. По этой причине разграничение прав в Windows используется в основном в корпоративной среде.

В Linux, которая, как мы знаем, способна все воспринимать как файл, реализована единая сквозная система разграничений. В общем виде принцип ее работы показан на следующей картинке.

Схема прав доступа в Linux

Структурная схема распределения прав доступа пользователей в ОС Linux

Каждый файл имеет разрешения на чтение, запись и запуск, обозначаемые буквами RWX. Права дублируются для владельца-создателя, группы, в которую он входит, и остальных пользователей. Права могут комбинироваться в широком диапазоне. 

Неограниченным доступом ко всей системе обладает root – суперпользователь. Он единственный имеет право открывать любой файл, вносить изменения в конфигурацию и запускать все программы. Образно говоря, если в своей директории пользователь – царь, то root в системе – бог.

В Windows на домашнем ПК быть администратором явление естественное. Только таким образом можно устанавливать программы и конфигурировать систему. Мало кто добровольно ограничит себя в правах. В Linux, наоборот, даже продвинутому пользователю никогда не придет в голову постоянно работать в режиме root.

Управление программным обеспечением

Обе операционные системы имеют двойственную систему установки ПО: на выбор можно использовать локальный инсталлятор или сетевой магазин приложений. Для Windows это файлы EXE/MSI и магазин Microsoft Store. В Linux используются пакеты RPM или DEB и разветвленная система репозиториев.

С программами для Windows все просто. Это самая распространенная операционная система в мире, и выбор ПО для нее не просто богат, он огромен. Найти подходящее приложение не составляет особого труда. 

В семействе Linux все сложнее. Во-первых, существует две основные ветки – дистрибутивы семейства Red Hat (пакеты RPM) и семейства Debian (пакеты DEB). Во-вторых, внутри этих веток существует еще несколько десятков направлений. Разобраться в сложившейся картине сложно, и это отпугивает многих пользователей. Особенно если учесть, что для Windows линия развития будет практически прямой с небольшой тупиковой ветвью, заканчивающейся версией Millennium Edition в далеком 2003 году.

Семейство дистрибутивов Linux

Дерево развития дистрибутивов Linux c выделением веток Red Hat и Debian

В заключение

С уверенностью можно сказать только одно – Windows и Linux разные. Невозможно полноценно сравнивать единственного ребенка какого-нибудь английского лорда, получившего хорошее образование и воспитание, и череду отпрысков вождя африканского племени. В семействе Linux есть выдающиеся экземпляры систем, но бороться на равных с гигантом мировой индустрии им не под силу.

Дмитрий Чевычелов


Понравилась статья?
Комментариев: 0