ћерион Ќетворкс

17 минут чтени€

Linux черпал вдохновение из Unix, но Linux - это не Unix, хот€ он определенно похож на Unix. ћы объ€сним основные различи€ между этими двум€ известными операционными системами.

Linux vs Unix - в чем разница?

“ак в чем же разница?

Linux - это бесплатное семейство операционных систем с открытым исходным кодом. Unix - это коммерческий продукт, предлагаемый различными поставщиками, каждый со своим вариантом, обычно предназначенным дл€ своего собственного оборудовани€. Ёто дорогой и закрытый код. Ќо Linux и Unix делают примерно одно и то же, не так ли? Ѕолее-менее да.

“онкости несколько сложнее. ≈сть отличи€ помимо технических и архитектурных. „тобы пон€ть некоторые вли€ни€, которые сформировали Unix и Linux, нам нужно пон€ть их предысторию.


»стоки Unix

Unix более 50 лет. ќн был разработан на €зыке ассемблера Digital Equipment Corporation (DEC) на DEC PDP/7 в качестве неофициального проекта в Bell Labs, в то врем€ принадлежавшем AT&T. ¬скоре он был перенесен на компьютер DEC PDP/11/20, а затем постепенно распространилс€ на другие компьютеры Bell. ѕереписывание на €зык программировани€ C привело к по€влению в 1973 г. версии 4 Unix. Ёто было важно, потому что характеристики €зыка C и компил€тора означали, что теперь переносить Unix на новые компьютерные архитектуры было относительно легко.

¬ 1973 году  ен “омпсон и ƒеннис –итчи представили на конференции доклад о Unix. ¬ результате запросы на копии Unix хлынули в Bell. ѕоскольку продажа операционных систем выходила за рамки разрешенного объема де€тельности AT&T, они не могли рассматривать Unix как продукт. Ёто привело к распространению Unix в виде исходного кода с лицензией. Ќоминальных затрат было достаточно, чтобы покрыть отгрузку и упаковку, а также Ђразумный гонорарї. Unix пришла Ђкак естьї, без технической поддержки и исправлений ошибок. Ќо вы получили исходный код - и вы могли его изменить.

Unix быстро завоевал попул€рность в академических учреждени€х. ¬ 1975 году  ен “омпсон провел творческий отпуск от Bell в  алифорнийском университете в Ѕеркли. ¬месте с некоторыми аспирантами он начал добавл€ть и улучшать их локальную копию Unix. ¬нешний интерес к дополнени€м Berkeley вырос, что привело к выпуску первого выпуска Berkeley Software Distribution (BSD). Ёто был набор программ и модификаций системы, которые можно было добавить в существующую систему Unix, но это не была отдельна€ операционна€ система. ѕоследующие версии BSD были целыми системами Unix.

 алифорнийский университет в Ѕеркли

“еперь существовало две основных разновидности Unix: поток AT&T и поток BSD. ¬се другие варианты Unix, такие как AIX, HP-UX и Oracle Solaris, €вл€ютс€ их потомками. ¬ 1984 году были сн€ты некоторые ограничени€ дл€ AT&T, и они смогли производить и продавать Unix. «атем Unix стала коммерциализированной.


Ќачало Linux

–ассматрива€ коммерциализацию Unix как дальнейшее разрушение свобод, доступных пользовател€м компьютеров, –ичард —толлман решил создать операционную систему, основанную на свободе. “о есть свобода измен€ть исходный код, распростран€ть модифицированные версии программного обеспечени€ и использовать программное обеспечение любым способом, который пользователь сочтет нужным.

ќперационна€ система должна была воспроизвести функциональность Unix без включени€ какого-либо исходного кода Unix. ќн назвал операционную систему GNU и в 1983 году основал проект GNU Project дл€ разработки этой операционной системы. ¬ 1985 году он основал ‘онд свободного программного обеспечени€ дл€ продвижени€, финансировани€ и поддержки проекта GNU.

¬се области операционной системы GNU достигли хорошего прогресса - кроме €дра. –азработчики проекта GNU работали над микро€дром под названием GNU Hurd, но прогресс был медленным, (сегодн€ он все еще находитс€ в разработке и приближаетс€ к выпуску.) Ѕез €дра не было бы операционной системы.

ќсновной управл€ющей программой Unix €вл€етс€ его €дро. ядро имеет полный контроль над всей системой. ќн имеет подсистемы, которые предлагают услуги дл€ обработки файловой системы, обработки ресурсов, управлени€ пам€тью, запуска и остановки программ и нескольких других низкоуровневых основных задач. ядро €вл€етс€ сердцем ќ— и действует как интерфейс между пользователем и оборудованием.  ажда€ подсистема €дра имеет определенные функции, такие как параллелизм, виртуальна€ пам€ть, подкачка и виртуальна€ файлова€ система. Ќа внешних уровн€х архитектуры у нас есть оболочка, команды и прикладные программы. ќболочка - это интерфейс между пользователем и €дром. ќболочка и пользователь ввод€т команды, интерпретируют эти команды и соответственно вызывают компьютерные программы.

¬ 1987 году Ёндрю —. “анебаум выпустил операционную систему MINIX (mini-Unix) в качестве учебного пособи€ дл€ студентов, изучающих проектирование операционных систем. MINIX была функциональной Unix-подобной операционной системой, но имела некоторые ограничени€, особенно в отношении файловой системы. ¬ конце концов, исходный код должен быть достаточно маленьким, чтобы его можно было адекватно изучить за один университетский семестр. Ќекоторой функциональностью пришлось пожертвовать.

„тобы лучше пон€ть внутреннюю работу Intel 80386 на своем новом ѕ , студент-информатик Ћинус “орвальдс написал в качестве учебного упражнени€ простой код переключени€ задач. ¬ конце концов, этот код стал элементарным прото-€дром, которое стало первым €дром Linux. “орвальдс был знаком с MINIX. ‘актически, его первое €дро было разработано на MINIX с использованием компил€тора GCC –ичарда —толлмана.

Ћинус “орвальдс

 то занимаетс€ разработкой?

ƒистрибутив Linux - это сумма множества различных частей, вз€тых из самых разных мест. ядро Linux, набор основных утилит GNU и пользовательские приложени€ объединены дл€ создани€ жизнеспособного дистрибутива. » кто-то должен заниматьс€ этим объединением, обслуживанием и управлением - точно так же, как кто-то должен разрабатывать €дро, приложени€ и основные утилиты. —опровождающие дистрибутива и сообщества каждого дистрибутива играют свою роль в создании дистрибутива Linux так же, как и разработчики €дра.

Linux - это результат распределенных совместных усилий, выполн€емых неоплачиваемыми добровольцами, такими организаци€ми, как Canonical и Red Hat, а также отдельными лицами, спонсируемыми отраслью.

–азработчики

 аждый коммерческий Unix разрабатываетс€ как единое целое с использованием собственных или жестко контролируемых сторонних средств разработки. „асто они имеют уникальное €дро и разработаны специально дл€ аппаратных платформ, поставл€емых каждым поставщиком.

Ѕесплатные производные потока BSD Unix с открытым исходным кодом, такие как FreeBSD, OpenBSD и DragonBSD, используют комбинацию устаревшего кода BSD и нового кода. “еперь они поддерживаютс€ сообществом и управл€ютс€ так же, как и дистрибутивы Linux.

“акже важно отметить, что Linux - это только €дро, а не полна€ ќ—. Ёто €дро Linux обычно входит в состав дистрибутивов Linux, что делает его полноценной ќ—.

ƒистрибутив Linux - это операционна€ система, созданна€ из набора программного обеспечени€, построенного на €дре Linux, и система управлени€ пакетами.

—тандартный дистрибутив Linux состоит из €дра Linux, системы GNU, утилит GNU, библиотек, компил€тора, дополнительного программного обеспечени€, документации, оконной системы, оконного менеджера и среды рабочего стола.

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

Ќапример, у нас есть ќ— на базе OpenWrt Linux дл€ встраиваемых устройств, Linux Mint дл€ персональных компьютеров и Rocks Cluster Distribution дл€ суперкомпьютеров. ¬сего существует около 600 дистрибутивов Linux.

»ли, например, попул€рна€ мобильна€ ќ— Android от Google основана на Linux.  ажда€ итераци€ ќ— Android построена на текущем €дре Linux.

ƒерево Unix

—тандарты и соответствие

¬ общем, Linux не соответствует ни единой спецификации Unix (SUS), ни POSIX. ќн пытаетс€ удовлетворить оба стандарта, не будучи зависим от них. “аие ќ— называютс€ Unix-подобными ќ— (Unix-like, UN*X или *nix). Linux - это Unix-подобна€ операционна€ система с некоторыми изменени€ми в дизайне Unix. Ѕыло одно или два (буквально одно или два) исключени€, такие как Inspur K-UX, китайский Linux, совместимый с POSIX.

  • POSIX (Portable Operating System Interface Ч переносимый интерфейс операционных систем) Ч набор стандартов, описывающих интерфейсы между операционной системой и прикладной программой (системный API)
  • Single UNIX Specification (SUS) Ч общее название дл€ семейства стандартов, которым должна удовлетвор€ть операционна€ система, чтобы называтьс€ ЂUNIXї

Ќасто€щий Unix, как и коммерческие предложени€, соответствует требовани€м. Ќекоторые производные BSD, включа€ все версии macOS, кроме одной, совместимы с POSIX. »мена вариантов, такие как AIX, HP-UX и Solaris, €вл€ютс€ товарными знаками соответствующих организаций. MacOS - это сертифицированна€ ќ— Unix. ” него есть собственное €дро под названием XNU. MacOS используетс€ в компьютерах Apple.


“оварные знаки и авторское право

Linux - зарегистрированна€ торгова€ марка Ћинуса “орвальдса. Linux Foundation управл€ет торговой маркой от его имени. ядро Linux и основные утилиты выпускаютс€ под различными общедоступными лицензи€ми GNU с Ђавторским левомї. »сходный код находитс€ в свободном доступе.

Unix - зарегистрированна€ торгова€ марка Open Group. ќн защищен авторским правом, проприетарен и имеет закрытый код.

FreeBSD защищена авторским правом FreeBSD Project, и исходный код доступен.


–азличи€ в использовании

— точки зрени€ пользовательского опыта, в командной строке нет большой видимой разницы. »з-за стандартов и соответстви€ POSIX программное обеспечение, написанное на Unix, может быть скомпилировано дл€ операционной системы Linux с ограниченными усили€ми по переносу. Ќапример, скрипты оболочки можно использовать непосредственно в Linux во многих случа€х с небольшими изменени€ми или даже без них.

Ќекоторые утилиты командной строки имеют несколько разные параметры командной строки, но, по сути, на обеих платформах доступен один и тот же арсенал инструментов. ‘актически, в IBM AIX есть AIX Toolbox дл€ приложений Linux. Ёто позвол€ет системному администратору устанавливать сотни пакетов GNU (например, Bash, GCC и другие).

–азличные разновидности Unix имеют разные доступные графические интерфейсы пользовател€ (GUI), как и Linux. ѕользователь Linux, знакомый с GNOME или Mate, сможет нащупать свой путь при первом знакомстве с KDE или Xfce. “о же самое и с р€дом графических интерфейсов пользовател€, доступных в Unix, таких как Motif, Common Desktop Environment и X Windows System. ¬се они достаточно похожи, чтобы по ним мог ориентироватьс€ любой, кто знаком с концепци€ми оконной среды с диалогами, меню и значками.

¬ы узнаете больше о различи€х при администрировании систем. Ќапример, есть разные механизмы инициализации. ѕроизводные от System V Unix и потоков BSD имеют разные системы инициализации. Ѕесплатные варианты BSD поддерживали схемы инициализации BSD. ѕо умолчанию дистрибутивы Linux будут использовать систему инициализации, производную от Unix System V или systemd.


ѕодробнее про различи€

»спользование и операции

Linux используетс€ от малых до средних операций, в то врем€ как ранее UNIX был единственным вариантом. Ѕольшинство поставщиков программного обеспечени€ перешли на Linux, поскольку это открытое программное обеспечение, которое свободно распростран€етс€ и предпочтительно дл€ веб-служб и офисных операций. ¬ большинстве случаев используетс€ Linux, но бывают случаи, когда UNIX имеет преимущество.  ак и на предпри€ти€х, которые используют массивные симметричные многопроцессорные системы, UNIX - правильный выбор. —ерьЄзным конкурентом Linux какое-то была FreeBSD, но благодор€ открытости Linux стал лидером мира свободного ѕќ.

ќсновные характеристики

Linux - это €дро, а Unix - это стандартизаци€. ≈сть р€д функций, которыми отличаютс€ обе операционные системы, некоторые из них приведены ниже.

¬озможности UNIX:

  • Ёто многопользовательска€ и многозадачна€ ќ—.
  • Ќа серверах и рабочих станци€х UNIX используетс€ в качестве главной управл€ющей программы.

¬озможности Linux:

  • Ёто многозадачна€ ќ—, котора€ также поддерживает многопользовательские программы.
  • ќдна программа может иметь более одного процесса, и каждый из процессов может иметь более одного потока.
  • Ќа одном компьютере вы можете установить Linux, а также другую ќ—, и обе ќ— будут работать без сбоев.
  • ” него есть авторизованна€ учетна€ запись, поэтому отдельные учетные записи защищены.

Ѕезопасность

Ќе существует полностью защищенной ќ—, но если мы сравним Unix и Linux, мы увидим, что Linux гораздо более оперативно реагирует на ошибки и угрозы. ќба имеют одинаковые характеристики, такие как правильна€ сегментаци€ домена в многопользовательской среде, есть система паролей, с помощью которой система шифруетс€ и так далее. ѕреимущество открытой программной системы в том, что она находитс€ в свободном доступе, что делает ее более защищенной от ошибок.  огда кто-либо из разработчиков видит ошибку в программном обеспечении, он может сообщить об этом кому угодно на форуме разработчиков. ¬ случае Unix система не €вл€етс€ открытым программным обеспечением, поэтому она имеет ограничени€ и гораздо более у€звима дл€ угроз.

јппаратна€ архитектура

≈сли мы увидим коммерческие версии Unix, то большинство из них поддерживает свои собственные аппаратные машины. Ќапример. HP-UX поддерживает только компьютеры PA-RISC и Itanium, Solaris работает на SPARC и x86, который €вл€етс€ процессором питани€. ќни подпадают под ограничени€ UNIX, и по этой причине производители Unix имеют преимущество в том, что они могут оптимизировать код и драйверы.

¬ случае с Linux это не так. Linux был написан таким образом, чтобы он мог поддерживать максимальное количество машин. ≈сть несколько платформ и машин, на которых может работать Linux с поддержкой нескольких других устройств ввода-вывода. «десь разработчики не знают, в какой системе будет установлено программное обеспечение, поэтому они не могут оптимизировать код.

ядро

ѕроцесс установки исправлений и компил€ции различен дл€ Linux и Unix. ¬ Linux патч может быть выпущен на форуме, и конечный пользователь может установить его на свой компьютер. Ётот патч также может редактироватьс€ и измен€тьс€ конечным пользователем. ѕоскольку существует множество сред, поддерживающих приложени€ Linux, разработчики завис€т от многих глаз, чтобы знать об ошибках и угрозах.

ядра выпускаютс€ только в двоичной форме коммерческими поставщиками Unix. ≈сли необходимо установить обновление, администратор должен дождатьс€, пока поставщик выпустит исправление в двоичной форме.

ѕоддержка файловой системы

—уществует множество файловых систем, поддерживаемых Linux, тогда как в случае Unix он поддерживает меньшее количество систем. Ќиже мы увидим некоторые файловые системы, поддерживаемые разными ќ—.

  • Linux - Jfs, Xfs, Btrfs, Ext2, Ext3, Ext4, FAT, FAT32, NTFS, devpts и так далее.
  • Unix - ufs, xfs, zfs, jfs, hfs +, hfs и так далее.

ƒоступность приложений

 ак упоминалось выше, Linux - это клон Unix. “аким образом, многие приложени€ одинаковы в обеих ќ—. Ќекоторые похожие команды - cp, ls, vi и cc. Linux - это верси€ GNU, тогда как Unix основан на оригинальных инструментах. Ќо это не следует путать, поскольку некоторые поставщики Unix используют инструменты GNU в своих установках. Ѕольшинство поставщиков предоставл€ют эти инструменты в виде предварительно скомпилированных пакетов, которые устанавливаютс€ или поставл€ютс€ как дополнительный компонент.

¬се дистрибутивы Linux поставл€ютс€ с набором приложений с открытым исходным кодом, и есть несколько других, свободно доступных дл€ разработчиков и конечных пользователей. “аким образом, Unix также портировал эти приложени€, и они доступны в коммерческой версии Unix.

ѕоддержка

¬се версии Unix €вл€ютс€ платными, а версии дл€ Linux можно использовать бесплатно. Ёто также добавл€ет в Unix функцию, заключающуюс€ в том, что если кто-то купит Unix, он получит коммерческую поддержку. ¬ случае с Linux у нас есть несколько открытых форумов, где пользователи могут задавать вопросы и предлагать лучшее решение. Linux более отзывчив, поскольку несколько конечных пользователей за€вили, что форумы более отзывчивы, чем коммерческа€ техническа€ поддержка Unix.


—равнительна€ таблица

ќсобенности Linux Unix
–азработчик ¬дохновленный MINIX (Unix-подобна€ ќ—), Linux был первоначально разработан финско-американским инженером-программистом Ћинусом “орвальдсом. ѕоскольку это открытый исходный код, у нас есть разработчики сообщества дл€ Linux. ѕервоначально полученный от AT&T Unix, он был разработан в Bell Labs  еннетом Ћэйном “омпсоном, ƒеннисом –ичи и трем€ другими.
Ќаписано на C и другие €зыки программировани€. C и €зык ассемблера.
—емейство ќ— Unix-подобный (Unix-like) Unix
»сходна€ модель ќткрытый исходный код —мешанный. ќднако, традиционно с закрытым исходным кодом, немногие проекты Unix имеют открытый исходный код, включа€ ќ— Illumos и ќ— BSD (Berkley Software Distribution).
ƒоступно на €зыках ћного€зычный јнглийский
ѕервый выпуск Linux новее по сравнению с Unix. ќн был производным от Unix и был выпущен в сент€бре 1991 года. Unix старше. Ѕыл выпущен в окт€бре 1973 года дл€ сторонних организаций. ƒо этого он использовалс€ внутри Bell Labs с момента основани€ в 1970 году.
“ип €дра ћонолитное €дро “ип €дра варьируетс€. ќн может быть монолитным, микро€дерным и гибридным.
Ћицензи€ GNUv2 (—тандартна€ общественна€ лицензи€ GPL) и другие. Ћицензирование различаетс€. Ќекоторые версии €вл€ютс€ проприетарными, другие - бесплатными / OSS.
ќфициальный веб-сайт https://www.kernel.org/ http://opengroup.org/unix
ѕользовательский интерфейс по умолчанию ќболочка Unix CLI (интерфейс командной строки) и графический (система X Windows)
“екстовый режим интерфейса ѕо умолчанию оболочка - BASH (Bourne Again Shell). Ѕолее того, он совместим со многими интерпретаторами команд. ѕервоначально оболочка Bourne. ќн также совместим со многими интерпретаторами команд.
—тоимость ћожно получить и использовать бесплатно. —уществуют также платные версии Linux. Ќо, как правило, Linux дешевле Windows. ѕроприетарные операционные системы имеют разные структуры затрат, устанавливаемые продавцами, соответственно.
ѕримеры Debian, Ubuntu, Fedora, Red Hat, Android и т. ƒ. IBM AIX, Solaris, HP-UX, Darwin, macOS X и т. ƒ.
јрхитектура ѕервоначально был создан дл€ оборудовани€ Intel x86, порты доступны дл€ многих типов процессоров. —овместим с машинами PA и Itanium. Solaris также доступен на x86/x64. OSX - это PowerPC.
ќбнаружение и устранение угроз ѕоскольку Linux в основном управл€етс€ сообществом открытого исходного кода, над кодом работают многие разработчики в разных част€х мира. —ледовательно, в случае Linux обнаружение и устранение угроз происходит довольно быстро. »з-за проприетарной природы Unix пользовател€м необходимо дождатьс€ соответствующих исправлений дл€ исправлени€ ошибок.
Ѕезопасность  ак Linux, так и ќ— на базе Unix обычно считаютс€ очень хорошо защищенными от вредоносных программ. Ёто св€зано с отсутствием корневого доступа, быстрыми обновлени€ми и сравнительно низкой долей рынка (по сравнению с Windows). ѕо состо€нию на 2018 год широко распространенного Linux-вируса не было. Unix также считаетс€ очень безопасным. «аразить еще сложнее, так как источник тоже недоступен. ¬ насто€щее врем€ дл€ Unix нет активно распростран€ющегос€ вируса.
÷ена Linux бесплатный. ќднако корпоративна€ поддержка доступна по цене. Unix не бесплатен. ќднако некоторые версии Unix бесплатны дл€ использовани€ в цел€х разработки (Solaris). ¬ среде дл€ совместной работы Unix стоит 1407 долларов на пользовател€, а Linux стоит 256 долларов на пользовател€.
—ледовательно, UNIX очень дорога€.

«аключение

Unix очень стар и считаетс€ родителем всех операционных систем. ядро Linux также €вл€етс€ производным от Unix. ќсновное различие между операционными системами на основе Unix и Linux заключаетс€ не в части представлени€, а в том, как они работают внутри, то есть в основном в части €дра.

–азница между ними также будет зависеть от того, какие именно версии Linux и Unix вы сравниваете.

“акже важно указать, что Linux (и многие другие Unix-подобные ќ—) можно свободно получать и измен€ть, в то врем€ как операционные системы Unix - нет. —тоимость всегда €вл€етс€ основным вопросом при прин€тии решени€, какую технологию использовать, и Linux имеет в этом отношении преимущество.

Linux более гибкий и бесплатный по сравнению с насто€щими системами Unix, и именно поэтому Linux стал более попул€рным. ѕри обсуждении команд в Unix и Linux они не одинаковы, но очень похожи. ‘актически, команды в каждом дистрибутиве одного и того же семейства ќ— также различаютс€.

¬ Solaris, HP, Intel и других используютс€ »нтернет-серверы Unix, рабочие станции и персональные компьютеры. ¬ то врем€ как Linux широко используетс€ дл€ компьютерного программного обеспечени€ и оборудовани€, игр, планшетов, мэйнфреймов и т.д.

≈сть исследовани€, которые говор€т, что Linux за последние несколько лет развиваетс€ быстрее, чем люба€ друга€ ќ—. —ледовательно, в будущем Linux может оставить далеко позади установки UNIX.


—кидки 50% в Merion Academy

¬ыбрать курс