Яка різниця між 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 на конференції. В результаті запити на копії Unix посипалися в Bell. Оскільки продаж операційних систем виходив за межі дозволеної сфери діяльності AT&T, вони не могли розглядати Unix як продукт. Це призвело до того, що Unix поширювався як вихідний код з ліцензією. Номінальних витрат було достатньо, щоб покрити доставку та пакування та «розумну гонорар». Unix прийшов «як є», без технічної підтримки та без виправлень помилок. Але ви отримали вихідний код — і ви могли змінити його.

Unix швидко набув поширення в академічних установах. У 1975 році Кен Томпсон провів відпустку від Белла Каліфорнійський університет, Берклі. Разом з деякими аспірантами він почав додавати та покращувати їх локальну копію Unix. Зовнішній інтерес до доповнень Berkeley зріс, що призвело до першого випуску Розповсюдження програмного забезпечення Berkeley (BSD). Це був набір програм і системних модифікацій, які можна було додати до існуючої системи Unix, але це не була окрема операційна система. Наступні версії BSD були цілими системами Unix.

  Як легко шукати історію буфера обміну в 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 Hurd, але прогрес був повільним. (Сьогодні він все ще розробляється і наближається до випуску.) Без ядра не було б операційної системи.

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

Щоб краще зрозуміти внутрішню роботу Intel 80386 у своєму новому ПК зателефонував студент інформатики Лінус Торвальдс написав простий код перемикання завдань як навчальну вправу. Згодом цей код став елементарним прото-ядром, яке стало першим ядром Linux. Торвальдс був знайомий з MINIX. Фактично, його перше ядро ​​було розроблено на MINIX з використанням компілятора GCC Річарда Столмана.

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

  5 найкращих графічних інтерфейсів для MPV на Linux

Linux насправді не є клоном Unix. Якби Linux був клоном Unix, це був би Unix. Це не так, він схожий на Unix. Слово «клон» означає, що деяка невелика частина оригіналу культивується в нову клітинну копію оригіналу. Linux був створений заново, щоб мати вигляд Unix і відповідати тим самим потребам. Це менше клон, а більше a реплікант.

Але в будь-якому випадку, 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, є торговими марками відповідних організацій.

  Як відновити видалені файли в Linux за допомогою Photorec

Торгові марки та авторське право

Linux є зареєстрованою торговою маркою Лінуса Торвальдса. The Linux Foundation керує торговою маркою від свого імені. Ядро Linux і основні утиліти випускаються під різними GNU «копійне ліве» Загальні публічні ліцензії. Вихідний код є у вільному доступі.

Unix є зареєстрованою торговою маркою Відкрита група. Він захищений авторським правом, є власністю та закритим кодом.

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

Відмінності у використанні

З точки зору користувацького досвіду, у командному рядку немає великої видимої різниці. Завдяки стандартам і відповідності POSIX програмне забезпечення, написане на Unix, може бути скомпільовано для операційної системи Linux з обмеженою кількістю зусиль для перенесення. Наприклад, сценарії оболонки можна використовувати безпосередньо в 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. За замовчуванням у дистрибутивах Linux буде використовуватися система ініціалізації, похідна від Unix System V, або systemd.

Stick Shift проти автоматичного

Якщо ви можете керувати одним, ви можете керувати іншим, навіть якщо це буде трохи зупинитися-почати.

Якщо відкинути ціну, то відмінності у філософії, ліцензуванні, моделі розвитку, організації громади, а також у типі та стилі управління є більшими та значущими, ніж відмінності в прапорцях командного рядка між, скажімо, однією версією grep та інші.

Найбільші відмінності – це не ті, які ви бачите на екрані.