Каква е разликата между Linux и Unix?

Linux се вдъхновява от Unix, но Linux не е Unix — въпреки че определено е подобен на Unix. Ще обясним основните разлики между тези две известни операционни системи.

Същата разлика?

Linux е безплатна операционна система с отворен код. Unix е търговски продукт, предлаган от различни доставчици, всеки със свой собствен вариант, обикновено посветен на собствен хардуер. Това е скъпо и със затворен код. Но Linux и Unix правят повече или по-малко едно и също нещо по същия начин, нали? Повече или по-малко, да.

Тънкостите са малко по-сложни. Има разлики извън техническите и архитектурните. За да разберем някои от влиянията, които са оформили Unix и Linux, трябва да разберем тяхната предистория.

Произходът на Unix

Unix е на повече от 50 години. Разработено е през Корпорация за цифрово оборудване (DEC) асемблер на DEC PDP/7 като неофициален проект в Bell Labs, след това собственост на AT&T. Скоро беше пренесен на a DEC PDP/11/20 компютър, след което постоянно се разпространява сред други компютри в Bell. Пренаписване в Език за програмиране C доведе до версия 4 на Unix от 1973 г. Това беше важно, защото характеристиките на езика C и компилатора означаваха, че сега е относително лесно да се пренесе Unix към нови компютърни архитектури.

През 1973 г. Кен Томпсън и Денис Ричи представи доклад за Unix на конференция. В резултат на това в Bell се изсипаха заявки за копия на Unix. Тъй като продажбата на операционни системи е извън разрешения обхват на операции на AT&T, те не могат да третират Unix като продукт. Това доведе до разпространението на Unix като изходен код с лиценз. Номиналните разходи бяха достатъчни, за да покрият доставката и опаковката и „разумни роялти“. Unix дойде „както е“, без техническа поддръжка и без корекции на грешки. Но вие сте получили изходния код – и можете да го модифицирате.

Unix видя бързо навлизане в академичните институции. През 1975 г. Кен Томпсън прекара отпуск от Бел в Калифорнийския университет, Бъркли. Заедно с някои студенти, той започна да добавя и подобрява тяхното локално копие на Unix. Външният интерес към допълненията в Бъркли нарасна, което доведе до първото издание на Разпространение на софтуер Berkeley (BSD). Това беше колекция от програми и системни модификации, които можеха да бъдат добавени към съществуваща Unix система, но не беше самостоятелна операционна система. Следващите версии на BSD бяха цели Unix системи.

  Как да инсталирате Pgadmin на Linux

Сега имаше два основни варианта на Unix, потокът AT&T и потокът BSD. Всички други варианти на Unix, като напр AIX, HP-UX, и Оракул Соларис, са потомци на тези. През 1984 г. някои от ограниченията на AT&T бяха освободени и те успяха да произвеждат и продават Unix.

Тогава Unix стана комерсиализиран.

Генезисът на Linux

Виждайки комерсиализацията на Unix като по-нататъшна ерозия на свободите, достъпни за компютърните потребители, Ричард Столман си постави за цел да създаде операционна система, основана на свободата. Тоест свободата да се модифицира изходния код, да се разпространяват модифицирани версии на софтуера и да се използва софтуерът по всякакъв начин, който потребителят намери за подходящ.

Операционната система щеше да репликира функционалността на Unix, без да включва никакъв изходен код на Unix. Той нарече операционната система GNU и основа Проект GNU през 1983 г. за разработване на операционната система. През 1985 г. той основава Фондация за свободен софтуер за насърчаване, финансиране и подкрепа на проекта GNU.

Всички области на операционната система GNU постигнаха добър напредък — с изключение на ядрото. Разработчиците на проекта GNU работеха върху микроядро, наречено GNU Хърд, но напредъкът беше бавен. (Той все още е в процес на разработка днес и се приближава до версия.) Без ядро ​​нямаше да има операционна система.

През 1987 г. Андрю С. Танебаум пусна операционна система, наречена MINIX (mini-Unix) като учебно помагало за студенти, изучаващи дизайн на операционна система. MINIX беше функционална, подобна на Unix, операционна система, но имаше някои ограничения, особено с файловата система. В крайна сметка изходният код трябваше да бъде достатъчно малък, за да гарантира, че е обхванат адекватно в рамките на един университетски семестър. Някои функции трябваше да бъдат пожертвани.

За да разберете по-добре вътрешната работа на Intel 80386 в новия си компютър се обади студент по компютърни науки Линус Торвалдс написа прост код за превключване на задачи като учебно упражнение. В крайна сметка този код се превърна в елементарно прото-ядро, което стана първото ядро ​​на Linux. Торвалдс беше запознат с MINIX. Всъщност първото му ядро ​​е разработено на MINIX с помощта на GCC компилатора на Ричард Столман.

Торвалдс решава да създаде своя собствена операционна система, която преодолява ограниченията в предназначения за преподаване MINIX. През 1991 г. той направи своя известно съобщение на MINIX Usenet група, като иска коментари и предложения по неговия проект.

  Как да инсталирате и използвате Stacer на Linux

Linux всъщност не е клонинг на Unix. Ако Linux беше клонинг на Unix, това щеше да бъде Unix. Не е, прилича на Unix. Думата „клонинг“ означава, че някаква малка част от оригинала е култивирана в нова реплика клетка за клетка на оригинала. Linux е създаден наново, за да има облика и усещането на Unix и да отговаря на същите нужди. Това е по-малко клонинг, а повече а репликант.

Но така или иначе, Linux беше ядро, търсещо операционна система; GNU беше операционна система, която търси ядро. Погледнато назад, това, което се случи след това, изглежда неизбежно. Това също промени света.

Кой прави развитието?

Linux дистрибуцията е сбор от много различни части, изтеглени от много различни места. Ядрото на Linux, пакетът от основни помощни програми на GNU и приложенията за ползване са комбинирани, за да направят жизнеспособна дистрибуция. И някой трябва да направи това, като комбинира, поддържа и управлява – точно както някой трябва да разработи ядрото, приложенията и основните помощни програми. Поддръжниците на дистрибуцията и общностите на всяка дистрибуция играят своята роля за оживяването на Linux дистрибуция точно толкова, колкото и разработчиците на ядрото.

Linux е резултат от разпределени съвместни усилия, извършени от неплатени доброволци, от организации като Каноничен и червена шапка, и спонсорирани от индустрията лица.

Всеки търговски Unix е разработен като единна кохерентна единица, използвайки вътрешни или строго контролирани изнесени средства за разработка. Често те имат уникално ядро ​​и са проектирани специално за хардуерните платформи, предоставени от всеки доставчик.

Безплатните и с отворен код производни на BSD Unix потока, като напр FreeBSD, OpenBSD, и DragonBSD, използвайте комбинация от наследен BSD код и нов код. Сега те са поддържани от общността проекти и се управляват подобно на Linux дистрибуции.

Стандарти и съответствие

Като цяло Linux не е нито едното, нито другото Единична спецификация на Unix (SUS) съвместим нито POSIX съобразен. Опитва се да удовлетвори и двата стандарта, без да им робува. Имало е едно или две — буквално, едно или две — изключения, като напр Inspur K-UX, китайски Linux, който е съвместим с POSIX.

Истинският Unix, подобно на търговските предложения, е съвместим. Някои производни на BSD, включително всички освен една версия на macOS, са съвместими с POSIX. Имената на вариантите, като AIX, HP-UX и Solaris, са търговски марки, притежавани от съответните им организации.

  Как да инсталирате софтуера за наблюдение Bluecherry на Linux

Търговски марки и авторско право

Linux е регистрирана търговска марка на Линус Торвалдс. В Linux Foundation управлява търговската марка от негово име. Ядрото и основните помощни програми на Linux са пуснати под различни GNU „copyleft“ Общи публични лицензи. Изходният код е свободно достъпен.

Unix е регистрирана търговска марка на Отворете групата. Той е защитен с авторски права, собственост и е със затворен код.

FreeBSD е защитен с авторски права от Проект FreeBSD, а изходният код е наличен.

Разлики в употребата

От гледна точка на потребителското изживяване, в командния ред няма голяма видима разлика. Поради стандартите на POSIX и съответствието, софтуерът, написан на Unix, може да бъде компилиран за операционна система Linux с ограничено количество усилия за пренасяне. Shell скриптовете, например, могат да се използват директно в Linux в много случаи с малка или никаква модификация.

Някои от помощните програми на командния ред имат малко по-различни опции на командния ред, но по същество същият арсенал от инструменти е наличен и на двете платформи. Всъщност, на IBM AIX има AIX Toolbox за Linux приложения. Това позволява на системния администратор да инсталира стотици GNU пакети (като Bash, GCC и т.н.).

Различните Unix вкусове са различни графични потребителски интерфейси (GUI), достъпен за тях, както и Linux. Потребител на Linux, запознат с GNOME или колега ще трябва да почувстват пътя им при първия път, когато се сблъскат KDE или Xfce, но скоро ще го вземат. Подобно е и с гамата от графични интерфейси, налични в Unix, като напр Мотив, Обща среда на работния плот, и на X Windows система. Всички те са достатъчно сходни, за да могат да бъдат навигирани от всеки, който е запознат с концепциите за прозоречна среда с диалози, менюта и икони.

Ще научите повече за разликите, докато администрирате системите. Например, има различни в него механизми. Производните на System V Unix и BSD потоците имат различни системи за инициализиране. Безплатните BSD варианти поддържат BSD init схемите. По подразбиране дистрибуциите на Linux ще използват или инициална система, извлечена от Unix System V или systemd.

Stick Shift срещу автоматичен

Ако можете да управлявате единия, можете да шофирате и другия — дори ако ще бъде малко спиране-започнете.

Като оставим цената настрана, разликите във философията, лицензирането, модела на разработка, организацията на общността и вида и стила на управление са по-големи и по-значими от разликите в флаговете на командния ред между, да речем, една версия на grep и други.

Най-големите разлики не са тези, които виждате на екрана.