Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Отличия ОС Unix and Linux (операционные системы)

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

Прочитав немного, я узнал, что история Unix начинается еще в 1969 году. Например, это коммерческая операционная система. Linux предназначен для создания бесплатной альтернативы коммерческим средам UNIX. Его история начинается в 1991 или даже в 1983 году, когда был запущен проект GNU, первоначальной целью которого было предоставить бесплатную альтернативу UNIX. Linux работает на многих других платформах, таких как Intel / AMD x86. Большинство операционных систем UNIX могут работать только на одной платформе. Найти и поэкспериментировать с этими платформами было непросто, но я нашел их. После того, как я использовал эти операционные системы по очереди, я проанализировал общие сходства и различия. Конечно, я дополнительно использовал альтернативные источники для углубленного изучения этих систем. Linux и UNIX имеют общие исторические корни, но есть и существенные различия. Многие из инструментов, утилит и бесплатных приложений, которые являются стандартными в Linux, первоначально были разработаны как бесплатные альтернативы программам UNIX. Linux часто поддерживает множество опций и приложений и заимствует лучшие или самые популярные функции из UNIX. Как администратор или разработчик, привыкший к работе с Linux, UNIX может быть не очень удобным для пользователя. С другой стороны, основа UNIX-подобной операционной системы (инструменты, файловая система, API) довольно стандартизирована. Однако некоторые детали систем могут значительно отличаться. Далее мы попытаемся рассмотреть эти различия вместе.

Давайте посмотрим на него и вместе разберемся в технических различиях. Разработчики коммерческих дистрибутивов UNIX полагаются на определенную клиентскую базу и серверную платформу для своей операционной системы. У вас есть хорошее представление о том, какая поддержка и оптимизация, какие приложения должны быть реализованы. Поставщики UNIX делают все возможное, чтобы обеспечить совместимость между различными версиями. Кроме того, они опубликовали свои стандарты операционной системы. С другой стороны, разработка GNU / Linux не является платформой и пользовательской, а разработчики GNU / Linux имеют разные фоны и перспективы. В сообществе Linux нет строгих стандартных инструментов или сред. Для решения этой проблемы был запущен проект Linux, но он оказался не таким эффективным, как хотелось бы. Это отсутствие стандартизации приводит к значительным несоответствиям в Linux. Для некоторых разработчиков использование лучшего из других операционных систем является плюсом, но не всегда удобно копировать элементы UNIX в Linux. Несовместимость такого рода также возникает между различными дистрибутивами Linux. Для сравнения, каждая новая версия системы UNIX содержит хорошо документированное описание новых функций и изменений в UNIX. Команды, инструменты и другие элементы редко меняются, и часто одни и те же аргументы командной строки остаются одинаковыми для приложений во многих версиях этого программного обеспечения. При существенных изменениях в этих элементах коммерческие поставщики систем UNIX часто предоставляют оболочку, необходимую для поддержания совместимости с предыдущими версиями инструмента. Эта совместимость означает, что утилиты и приложения могут использоваться в новых версиях операционной системы без проверки и изменения их исходного кода. Таким образом, переход на новую версию UNIX, которая обычно принципиально не отличается от старой версии для пользователей или администраторов, связан с гораздо меньшими усилиями, чем переход от одного дистрибутива Linux к другому. После того, как я рассмотрел технические характеристики, мне удобнее использовать версии Unix, поскольку они более стандартизированы, чем его противник.

Теперь я хочу посмотреть на компоненты пользовательского режима. Поставщики UNIX могут относительно свободно изменять свой код для этих архитектур и использовать свою архитектуру в любых интересах. Поскольку вы знаете устройства, которые вы поддерживаете, ваши драйверы работают лучше, и вам не нужно учитывать ограничения BIOS ПК. Linux, с другой стороны, в прошлом был разработан для максимальной совместимости. Linux доступен на различных архитектурах, а количество устройств ввода - вывода и других периферийных устройств, которые можно использовать с этой операционной системой, практически не ограничено. Разработчики не могут заранее знать, какое конкретное оборудование будет установлено на компьютере, и часто не могут обеспечить эффективное использование. Одним из примеров является Управление хранилищем Linux. Ранее Linux использовал модель Sharded Memory, первоначально разработанную для x86. Теперь он адаптирован для использования выгружаемой памяти, но сохраняет некоторые требования к памяти сегмента, что приводит к проблемам, если архитектура не поддерживает сегментированную память. Это не проблема для производителей UNIX. Вы точно знаете, на каком оборудовании работает UNIX.

Давайте поговорим о ядре этих операционных систем. На мой взгляд, ядро-это сердце операционной системы. Исходный код ядра коммерческих дистрибутивов UNIX является собственностью их разработчиков и не распространяется за пределами компании. Полная противоположность имеет место с Linux. Процедуры компиляции и исправления ядер и драйверов очень различны. Для Linux и других операционных систем с открытым исходным кодом патч может быть выпущен в качестве исходного кода, и конечный пользователь может установить, протестировать и даже изменить его. Эти патчи обычно не тестируются так тщательно, как патчи от коммерческих поставщиков UNIX. Поскольку нет полного списка приложений и сред, которые необходимо протестировать для правильной работы в Linux, разработчики Linux полагаются на конечных пользователей и других разработчиков для обнаружения ошибок. Коммерческие поставщики дистрибутивов UNIX выпускают ядра только в виде исполняемого кода. Некоторые выпуски монолитны, в то время как другие обновляют только определенный модуль ядра. Однако в любом случае эта версия предоставляется только в виде исполняемого кода. Если требуется обновление, администратор должен подождать, пока поставщик не выпустит двоичный патч. Тем не менее, может быть обнадеживающим, что поставщик проведет тщательную проверку обратной совместимости для своего патча. Все коммерческие версии UNIX в какой-то степени превратились в модульное ядро. Драйверы и отдельные функции операционной системы доступны в виде отдельных компонентов и могут быть загружены или выгружены из ядра, если это необходимо. Однако открытая модульная архитектура Linux намного более гибкая. Однако гибкость и адаптивность Linux означает постоянные изменения. Исходный код Linux постоянно меняется, и в соответствии с настроением разработчика API может измениться. Когда модуль или драйвер написан для коммерческой версии UNIX, он длится намного дольше, чем тот же драйвер для Linux. Одной из причин, по которой Linux стал мощной операционной системой, является его полная совместимость с другими операционными системами. Одной из наиболее очевидных особенностей является обилие доступных файловых систем. Большинство коммерческих версий UNIX поддерживают два или три типа файловых систем. Тем не менее, Linux поддерживает большинство современных файловых систем. Это большой плюс для меня.

Большинство базовых приложений одинаковы в UNIX и Linux. Например, некоторые команды доступны в UNIX и Linux и очень похожи, если не полностью идентичны. Версии Linux этих инструментов основаны на версиях GNU этих инструментов, в то время как версии UNIX этих инструментов основаны на традиционных инструментах UNIX. Эти инструменты UNIX имеют долгую историю и редко изменялись. Однако это не означает, что коммерческие версии UNIX не могут использоваться с инструментами GNU. Фактически, многие коммерческие поставщики операционных систем UNIX содержат много инструментов GNU в своих дистрибутивах или предлагают их в качестве бесплатных дополнений. Инструменты GNU-это не просто стандартные инструменты. Некоторые из этих бесплатных утилит не имеют коммерческих аналогов (Emacs или Perl). Большинство производителей предварительно устанавливают эти программы, и они либо автоматически устанавливаются вместе с системой, либо доступны в качестве дополнения. Бесплатные приложения с открытым исходным кодом почти всегда включены во все дистрибутивы Linux. Для Linux доступно большое количество свободного программного обеспечения, и многие из этих приложений были портированы на коммерческие версии операционной системы UNIX. Коммерческие и / или приложения с закрытым исходным кодом (САПР, финансовое программное обеспечение, графические редакторы) могут не иметь аналогов для Linux. В то время как некоторые поставщики выпускают версии своих приложений для Linux, большинство поставщиков не спешат делать это, пока Linux не станет все более популярным среди пользователей. С другой стороны, коммерческие версии UNIX в прошлом поддерживали большое количество корпоративных приложений, таких как Oracle или SAP. Linux теряет много, потому что трудно сертифицировать большие приложения, в то время как коммерческие версии UNIX существенно не меняются от версии к версии. Linux может сильно меняться не только с каждым новым дистрибутивом, но иногда и между выпусками одного и того же дистрибутива. Таким образом, производителю программного обеспечения очень трудно понять, в какой среде используется его приложение.

А как насчет системного администрирования у нас? Из-за большого количества дистрибутивов Linux и почти неограниченного количества доступных приложений (поскольку существует также много версий этого приложения) для этой операционной системы управление программами в Linux становится сложной задачей. Выбор правильного инструмента зависит от того, с каким дистрибутивом вы работаете. Другие неудобства возникают из-за того, что некоторые дистрибутивы используют формат файла Redhat Package Manager (RPM), в то время как их программы несовместимы. Это разделение приводит к множеству вариантов работы с пакетами, и не всегда ясно, какая система используется в той или иной среде. С другой стороны, коммерческие дистрибутивы UNIX содержат стандартные менеджеры пакетов. Несмотря на то, что существуют разные версии приложений и определенные форматы для разных версий UNIX, среда управления приложениями одна и та же. Например, Solaris использовал те же инструменты для управления пакетами приложений с момента своего запуска. И, скорее всего, средства Solaris для идентификации, добавления или удаления программных пакетов все те же. Производители коммерческих дистрибутивов UNIX также поставляют оборудование, на котором должна работать ваша операционная система, чтобы вы могли внедрять новые устройства в свою операционную систему, что намного сложнее для Linux. Например, более новые версии Linux пытались поддерживать компоненты с поддержкой горячей замены (с различным успехом). Коммерческие версии UNIX имеют эту возможность в течение многих лет. Коммерческие версии UNIX также обеспечивают лучший аппаратный мониторинг, чем Linux. Производители могут писать драйверы и встроить в вашу операционную систему, для мониторинга состояния системы, например, ECC-памяти, энергопотребление или другие аппаратные компоненты. Такого рода поддержка Linux ожидается только в отдаленном будущем. Оборудование для коммерческих систем UNIX также предлагает расширенные параметры загрузки. Перед запуском операционной системы существует множество способов настройки запуска, проверки состояния системы или настройки параметров оборудования. BIOS стандартного ПК предлагает меньше этих опций, если таковые имеются.

Давайте посмотрим, как мы поступим с поддержкой каждой системы. Одним из основных различий между Linux и UNIX является стоимость. Коммерческие поставщики систем UNIX установили высокую цену на UNIX, хотя его можно использовать только со своими аппаратными платформами. Дистрибутивы Linux, с другой стороны, относительно недороги, если не бесплатны. При покупке коммерческой версии UNIX производители обычно предлагают техническую поддержку. Большинство пользователей Linux не имеют поддержки от производителя операционной системы. Вы можете получить поддержку только по электронной почте, на форумах и в различных сообществах пользователей Linux. Однако эти группы предназначены не только для пользователей Linux. Многие коммерческие администраторы операционной системы UNIX участвуют в этих открытых группах поддержки, чтобы иметь возможность как предоставлять, так и использовать поддержку, если это необходимо. Многие люди находят эти группы поддержки еще более полезными, чем система поддержки, предлагаемая производителем операционной системы.

Подводя итог, я хочу отметить, что основы UNIX и Linux очень похожи. Лично я остаюсь в Linex после экспериментов с двумя платформами. Для пользователя или системного администратора переход с Linux на UNIX означает некоторые неудобства для работы, но в целом переход безболезнен. Хотя их файловые системы и ядра различаются, и освоение занимает некоторое время, инструменты и API остаются прежними. Как правило, эти различия не более значительны, чем различия между основными версиями UNIX. Все ветви UNIX и Linux постепенно развиваются и немного отличаются друг от друга. Однако из-за зрелости концепций UNIX основы операционной системы существенно не изменятся. И какая система ближе для всех, зависит от вас.