К основному контенту

Чем отличается Windows от Linux

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

В этой статье мы рассмотрим чем отличается windows от linux с технической точки зрения, попытаемся разобраться почему Linux считается более безопасным, а также понять суть различий.

Содержание статьи: 1. Ядро системы 2. Структура файловой системы и диски 3. Хранение конфигурации и данных 4. Управление пользователями и права 5. Управление программами и обновление Выводы 1. Ядро системы

Основной компонент каждой операционной системы - это ее ядро. И даже с этого, между операционными системами есть огромные отличия. Ядро Linux - монолитное, оно состоит из одного файла, а для расширения его функциональности можно использовать модули.

Все программы общаются с ядром через системные вызовы, они стандартизированы, поэтому одни и те же программы без переписывания смогут работать на разных платформах под управлением Linux, например, x86 и ARM.

Все драйверы встроены в ядро, но зато большинство программ находятся в пользовательском пространстве, в том числе графическая оболочка. Монолитная структура дает больше безопасности, поскольку если на этапе сборки ядра отключить поддержку модулей, выполнить свой код на уровне ядра будет невозможно.



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



Но и это еще не все, системные вызовы не используются, вместо них пользовательские программы вынуждены обращаться к документированным библиотекам user32.dll, gdi32.dll, kenel32.dll, advapi32.dll. Эти библиотеки вызывают функции из ntdll.dll, которая напрямую связана с ядром.

Драйверами управляет библиотека hal.dll и подключаются они к ядру отдельно. Выводом на экран управляет графическая подсистема ядра, туда входит вся работа с графикой, в том числе и с оболочкой. Возможность использования пользовательского режима ядра позволяет легко адаптировать систему к любому типу программ, например win16 или POSIX. Но за эту гибкость приходится платить производительностью. 2. Структура файловой системы и диски

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

Файлы сортируются по каталогам в зависимости от типа, например, исполняемые - в /bin/, настройки - /etc/, а ресурсы - в /usr/. Получается что одна программа разделена по всей файловой системе, но это не выведывает трудностей из-за пакетного менеджера.



Устройства хранения в Linux именуются по алфавиту, а разделы на них - цифрами. Например, первый жесткий диск будет иметь имя sda, второй - sdb. А разделы на первом будут нумероваться - sda1, sda2, sda3 и так далее. Разделы могут свободно монтироваться в любую нужную папку, например, в качестве домашнего каталога или /var/.

Windows создает дополнительную абстракцию. Хотя диски и разделы именуются похожим образом, как и в Linux, но все это скрыто операционной системой. Пользователю же предоставляется такая абстракция, как диск C:, D:, E:, F: и так далее. Каждый из них - это раздел на жестком диске, а более подробную информацию от пользователя система скрывает. Это и к лучшему для новичков. Что касается распределения файлов, то одна программа находится в одной папке, со всеми исполняемыми файлами, настройками и ресурсами. 3. Хранение конфигурации и данных

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

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

Это тоже важное отличие linux от windows. Windows хранит все настройки приложений, системы и драйверов в специальной базе данных, под названием реестр Windows. Все настройки разделены по ветвях и ключах, а программы могут очень быстро получить к ним доступ.



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

К тому же программы очень быстро переполняют реестр и он начинает занимать слишком много, поэтому на его начальную загрузку нужно много времени. Трудно сказать какая технология лучше, но это тоже разница между linux и windows и только вам выбирать что использовать. 4. Управление пользователями и права

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

Со временем начали считать что такая система устарела и были доработаны списки доступа ACL, SELinux и AppArrmor - они полностью удовлетворяют все нужды в безопасности. Но они так и не набрали большой популярности.



Windows была предназначена для работы только одного пользователя, изначально из-за этого возникало очень много проблем с безопасностью. Но потом система пользователей была доработана многопользовательская система, которая, кроме владельца, группы и остальных включает подробные ACL списки доступа. Можно сказать, что тут различие windows и linux не так велико. 5. Управление программами и обновление

Продолжим сравнение windows и linux. Управление программами и их обновлением это огромная разница windows и linux, настолько все реализовано по-другому.

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

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

В Windows нет репозиториев, вам придется искать все необходимые программы в интернете и устанавливать их вручную. Каждая программа будет обновляться сама, когда будет считать нужным, в том числе и система. Для обновления системы понадобиться перезагрузка, причем в вопросе установки обновлений Windows бывает очень настойчивой. Выводы

В этой статье мы попытались разобраться чем отличается windows от linux. Причем мы не останавливались на таких общеизвестных вещах, как свобода и бесплатность, а попытались раскрыть именно технические подробности, насколько это возможно в такой небольшой статье. Если вы только стоите перед выбором операционной системы, надеюсь это сравнение windows и linux было для вас полезным.

На завершение небольшое видео о вечном споре Windows vs Linux, хотя оно уже немного устарело, но рассказано довольно интересно и по делу:

Комментарии


Дистанционная компьтерная помощь, удаленная компьютерная помощь онлайн.

Популярные сообщения из этого блога

Лучшие плагины для OBS Studio

Open Broadcast Software или OBS - это свободное программное обеспечение с открытым исходным кодом для стриминга аудио и видео данных в сеть интернет. Программа полностью кроссплатформенная и может работать в Windows, Linux или MacOS. Это отличная альтернатива для таких программ, как Wirecast и XSplit. OBS использует для вещания стандартный протокол обмена сообщениями в реальном времени, а поэтому может транслировать данные в любой сервис, поддерживающий это, например, Yotube. Несмотря на широкие возможности OBS, программа поддерживает еще и множество плагинов. В этой статье мы рассмотрим лучшие плагины для OBS Studio, которые вы можете использовать. Содержание статьи: Лучшие плагины OBS Studio 1. Browser Source Plugin 2. Video Source Plugin 3. Simple Scene Switcher 4. DirectShow Audio Source 5. CLR Browser Source 6. OBS Remote 7. AMD Advanced Media Framework Encoder 8. Text Source Plugin Выводы Лучшие плагины OBS Studio Чтобы найти плагины OBS Studio для Video пользователям пр…

Лучшие аналоги Paint для Linux

Когда я работал в Windows, я часто использовал стандартную программу редактора изображений Windows - Paint. Не всегда нужен очень и многофункциональный инструмент вроде Photoshop или Gimp. Иногда, чтобы подправить ту или иную картинку, дорисовать на ней несколько фигур или вставить текст достаточно простого, легкого в освоении графического редактора вроде Paint. В Linux таких программ довольно много. В этой инструкции мы рассмотрим лучшие аналоги Paint для Linux. В этот список не будут включены такие программы, как Gimp и Krita, ведь это полнофункциональные графические редакторы, векторные редакторы, такие как Inkscape мы тоже рассматривать не будем. А теперь перейдем к списку. Содержание статьи: KolourPaint MyPaint Gnome Paint XPaint Pinta mtPaint GPaint Rassam-paint Выводы KolourPaint На первом месте в списке аналогов Piant для Linux будет KoloutPaint. Это стандартный графический редактор для окружения рабочего стола KDE. Он поддерживает множество форматов изображений PNG, J…

Подключение OneDrive в Linux

OneDrive (Ранее известный как SkyDrive) это популярное облачное хранилище файлов от Майкрософт. Сейчас OneDrive бесплатно предоставляет 7 гигабайт пространства новым пользователям. Как вы знаете OneDrive хорошо интегрирован с другими продуктами компании  Microsoft. В OneDrive Также есть официальный клиент который автоматически загружает ваши видео и фотографии с камеры в облако. Но к сожалению этот клиент недоступен для операционных систем семейства Linux. Но не все так плохо. Сообщество открытого программного обеспечения уже нашло решение. Это opedrive-d от Boilermaker. Запустившись как демон программа автоматически синхронизирует локальную папку с облаком OneDrive. Содержание статьи: Установка Onedrive-d в Linux Настройка Синхронизация локальной папки с OneDrive Установка Onedrive-d в Linux Несмотря на то что onedrive-d разрабатывается для Ubuntu/Debian, CentOs/Fedora/RHEL поддерживается тоже хорошо. Для установки достаточно набрать несколько команд: $ git clone https://gith…