unix vs linux what is difference between unix
Unix Vs Linux: Aflați care este diferența de bază între arhitectura, nucleul și comenzile UNIX și Linux
Linux nu este altceva decât o clonă UNIX care este scrisă Linus Torvalds de la zero cu ajutorul unor hackeri de pe tot globul.
Sistemele de operare Unix și Unix-like sunt o familie de sisteme de operare pentru computer care derivă din sistemul Unix original de la Bell Labs, care poate fi urmărit până în 1965.
Linux este cea mai populară variantă și există o serie de distribuții diferite.
=> Faceți clic aici pentru seria Unix Tutorial complet
Unix este o familie de sisteme de operare pentru computere multitasking, portabile, multi-utilizatori, care au și configurații de partajare a timpului.
Sistemele Unix utilizează un kernel de sistem de operare centralizat, care este responsabil pentru gestionarea întregului sistem.
Interfața de programare, extragerea fișierelor, rețeaua încorporată și procesarea persistentă a fundalului numite daemons sunt celelalte caracteristici și capabilități care sunt acceptate de un sistem de operare Unix.
Ce veți învăța:
- Ce este UNIX?
- Ce este Linux?
- Diferența dintre Unix și Linux
- Linux vs Unix Kernel
- Comenzi Unix Vs Linux
- Concluzie
- Lectură recomandată
Ce este UNIX?
Unix este considerat mama majorității sistemelor de operare.
Proiectarea sistemelor Unix se bazează pe „Unix Philosophy” care include următoarele caracteristici:
- Utilizarea textului simplu pentru stocarea datelor.
- Sistem de fișiere ierarhic.
- Manevrarea dispozitivelor și a unor tipuri specifice de comunicare inter-proces (IPC) ca fișiere.
- Folosind un număr mare de instrumente software.
- Mai multe programe mici, simple și modulare care pot fi filetate împreună printr-un interpret de linie de comandă folosind conducte, în contrast cu utilizarea unui singur program monolitic care cuprinde toate aceleași funcționalități.
Merită menționat aici citatul de mai jos despre Unix Philosophy:
„Deși acea filozofie nu poate fi scrisă într-o singură propoziție, deoarece inima sa este ideea că puterea unui sistem provine mai mult din relațiile dintre programe decât din programele în sine. Multe programe UNIX fac lucruri destul de banale în mod izolat, dar, combinate cu alte programe, devin instrumente generale și utile. ” - Brian Kernighan și Rob Pike
Unix Architecture
Diagrama de mai jos vă va arăta arhitectura Unix.
(imagine sursă )
software de ceas de timp liber pentru pc
Programul master de control al Unix este nucleul său. Nucleul are control deplin asupra întregului sistem. Are subsisteme care oferă servicii pentru gestionarea sistemului de fișiere, gestionarea resurselor, gestionarea memoriei, programele de pornire și oprire și alte câteva sarcini de bază de nivel scăzut.
Nucleul este inima sistemului de operare și acționează ca o interfață între utilizator și hardware. Fiecare subsistem de nucleu are anumite caracteristici cum ar fi concurența, memoria virtuală, paginarea și un sistem de fișiere virtual.
În straturile exterioare ale arhitecturii, avem shell-ul, comenzile și programele de aplicație. Shell este interfața dintre utilizator și nucleu. Shell și utilizatorul tastează comenzile, interpretează aceste comenzi și apelează programele de computer în consecință.
Exemplu din sistemul de operare Unix este Solaris și HP-UX. Cei mai mari distribuitori de sisteme UNIX includ IBM, HP și SUN.
Citiți recomandat => Tutoriale gratuite de instruire Unix
Ce este Linux?
Până acum ați fi avut o idee corectă despre Unix. Să explorăm acum Linux în detaliu.
Oamenii confundă mult între termenii Unix și Linux și, în general, pun întrebări de genul „Este Unix diferit de Linux?” / „Sunt Linux și Unix același lucru?” / „Linux este ca Unix?” / „Linux este construit pe Unix?” .
Iată răspunsul la toate aceste întrebări. Mai întâi, permiteți-mi să vă șterg confuzia într-o singură linie. Linux și Unix sunt diferite, dar au o relație între ele, deoarece Linux este derivat din Unix.
Linux nu este Unix, dar este un sistem de operare asemănător Unix. Sistemul Linux este derivat din Unix și este o continuare a bazei proiectării Unix. Distribuțiile Linux sunt cel mai faimos și mai sănătos exemplu de derivate directe Unix.BSD (Berkley Software Distribution) este, de asemenea, un exemplu de derivat Unix.
În acest moment, este important pentru noi să vă clarificăm cum este Unix?
Un SO de tip Unix (numit și UN * X sau * nix) este cel care funcționează într-un mod similar cu sistemele Unix, cu toate acestea, nu este necesar ca acestea să fie conforme cu Specificația Unică UNIX (SUS) sau POSIX similar (Portabil Interfață sistem de operare) standard.
SUS este un standard care trebuie îndeplinit pentru ca orice sistem de operare să se califice pentru utilizarea mărcii comerciale „UNIX”. Această marcă este acordată de „The Open Group”.
Puține exemple dintre sistemele UNIX înregistrate în prezent includ macOS, Solaris și AIX. Dacă luăm în considerare sistemul POSIX, atunci Linux poate fi considerat ca un sistem de operare de tip Unix.
Conform fișierului README oficial al kernel-ului Linux, Linux este o clonă UNIX care este dezvoltat de la zero de către Linus Torvalds și echipa. Acesta vizează conformitatea POSIX. Codul kernel-ului Linux a fost complet scris de la zero. Este conceput în așa fel încât să acționeze ca Unix, dar nu are codul original Unix în el.
De asemenea, este semnificativ să menționăm că Linux este doar nucleul și nu sistemul de operare complet . Acest kernel Linux este, în general, ambalat în distribuții Linux, ceea ce îl face un sistem de operare complet.
Astfel, Linux este doar nucleul, în timp ce distribuțiile Linux pot fi tratate ca sistem de operare. Pe de altă parte, UNIX în sine este un sistem de operare complet, întrucât totul (toate aplicațiile necesare legate împreună) provin de la un singur furnizor. De exemplu, Solaris.
Distribuția Linux (pe scurt, denumită și distro) este un sistem de operare creat dintr-o colecție de software construit pe nucleul Linux și este un sistem de gestionare a pachetelor.
O distribuție Linux standard constă dintr-un kernel Linux, un sistem GNU, utilități GNU, biblioteci, compilator, software suplimentar, documentație, un sistem de ferestre, un manager de ferestre și un mediu desktop.
Majoritatea software-urilor incluse în distribuția Linux sunt gratuite și open source. Acestea pot include unele programe de proprietate, cum ar fi bloburi binare, care sunt esențiale pentru câțiva drivere de dispozitiv.
Arhitectura sistemului de operare bazat pe Linux
(imagine sursă )
Astfel, distribuțiile Linux fac de fapt nucleul Linux complet utilizabil ca sistem de operare prin adăugarea de aplicații diferite la acesta. Există diferite arome ale distribuțiilor Linux care servesc o gamă largă de nevoi ale utilizatorilor.
De exemplu , avem sistem de operare OpenWrt Linux pentru dispozitive încorporate, Linux Mint pentru calculatoare personale și distribuție Rocks Cluster pentru supercomputer. În total, există aproximativ 600 de distribuții Linux.
Va fi interesant să știți că popularul sistem de operare mobil Android de la Google se bazează pe Linux. Fiecare iterație a sistemului de operare Android este construită pe kernel-ul Linux actual.
cea mai bună extensie de blocare a ferestrelor pop-up pentru crom
Diferența dintre Unix și Linux
Linux | Unix și alte variante |
---|---|
Diferite variante întreținute de comunități diferite; cu nucleul fuzionând în ramura întreținută de Linus | Diferite variante întreținute de diferite companii; fiecare își menține propriul nucleu |
Linux se referă la nucleul sistemului de operare GNU / Linux. Mai general, se referă la familia distribuțiilor derivate. | Unix se referă la sistemul de operare original dezvoltat de AT&T. Mai general, se referă la familia de sisteme de operare derivate. |
Cod original dezvoltat de Linus și Fundația GNU | Cod original dezvoltat de AT&T |
Marca comercială Linux este deținută de Linus Trovalds și administrată de Linux Mark Institute în cadrul Linux Foundation. | Marca comercială UNIX este certificată de Open Group. Lista sistemelor de operare certificate. |
Linux Standard Base (LSB), disponibil ca ISO / IEC 23360, este un efort de standardizare de către un număr de distribuitori Linux. LSB este în mare parte o extensie a POSIX, dar are unele diferențe. Cu toate acestea, nu există o mare nevoie de certificare LSB, deoarece diferitele distribuții utilizează același nucleu în orice caz. | Certificare UNIX bazată pe „Specificația Unix unică” care este o extensie a IEEE 1003 (POSIX), disponibilă și ca ISO / IEC 9945. POSIX specifică API-urile de programare și interfețele shell și utilitare. POSIX a fost dezvoltat ca o modalitate de a permite interoperabilitatea între diferiți furnizori UNIX. |
GNU / Linux și derivate precum Debian și Fedora | System-V Unix și derivate precum IBM-AIX și HP-UX; Berkeley Unix și derivate precum FreeBSD și macOS |
Open Source sub licența publică generală copyleft | Berkeley Unix este parțial open source sub licența BSD. Sursa Unix System-V poate fi achiziționată sub o licență comercială proprietară. |
Proiectat ca o platformă scalabilă de uz general pentru un set larg de aplicații. | De obicei conceput pentru un public restrâns cu un set definit de platforme și aplicații țintă. |
Disponibil pe larg ca descărcare și instalare a software-ului configurabil. | De obicei livrat împreună cu hardware de ex. MacBook |
Sprijin comunitar gratuit. Asistență cu plată disponibilă de la un număr de furnizori de servicii. | Suport comercial plătit. Deseori duce la blocarea furnizorului. |
Interfețele evoluează adesea | Interfețele sunt de obicei stabile |
Actualizări frecvente, cu remedieri rapide ale erorilor | Actualizările și corecțiile rare pot dura ceva timp |
Suportă aproape toate sistemele de fișiere utilizate între sistemele de operare | Majoritatea versiunilor acceptă două sau poate trei sisteme de fișiere |
Lărgimea instrumentelor de administrare a sistemului de multe ori cu accent limitat, de exemplu Suse YAST | Fiecare versiune are de obicei un instrument de administrare a sistemului matur, de ex. HP SAM |
Sistem de operare preferat pentru implementarea în cloud și centrele de date în principal din motive economice | Sistem de operare preferat pentru cerințele serverului cu scop special datorită disponibilității aplicațiilor și servere de internet din motive vechi |
Scalabilitatea realizată utilizând clustere, grile sau cloud. | Scalabilitatea realizată utilizând clustere sau grile |
(Un cluster este o colecție de computere omogene, o rețea este o colecție de computere distribuite, iar un serviciu cloud este o colecție de clustere virtualizate.) | |
Cele mai multe linii de comandă și utilitare grafice sunt similare cu Unix | Cele mai multe linii de comandă și utilitare grafice sunt similare cu Linux |
Sperăm că trebuie să fi înțeles diferențele de bază dintre Unix și Linux din acest articol.
Să vedem acum câteva diferențe mai importante între Linux și Unix în formatul tabelar de mai jos:
Caracteristici | Linux | Unix |
---|---|---|
Eliberarea inițială | Linux este mai nou în comparație cu Unix. A fost derivat din Unix și a fost lansat în septembrie 1991. | Unix este mai vechi. A fost eliberat în octombrie 1973 pentru petreceri din afara. Înainte de aceasta, a fost utilizat intern în Bell Labs de la înființarea sa în 1970. |
Dezvoltator | Inspirat de MINIX (un sistem de operare asemănător Unix), Linux a fost dezvoltat inițial de inginerul de software finlandez-american Linus Torvalds. Deoarece este un open source, avem dezvoltatori de comunități pentru Linux. | Derivat inițial de la AT&T Unix, a fost dezvoltat la Bell Labs de Kenneth Lane Thompson, Dennis Ritchie și alți 3. |
Scris in | C și alte limbaje de programare. | C și limbajul asamblării. |
Familia OS | Unix-like | Unix |
Starea de lucru | Actual | Actual |
Modelul sursă | Sursa deschisa | Amestecat. În mod tradițional sursă închisă, totuși, puține proiecte Unix sunt open source care includ sistemul de operare illumos și sistemul de operare BSD (Berkley Software Distribution). |
Disponibil in | Multilingv | Engleză |
Tipul nucleului | Nucleul monolitic | Tipul de nucleu variază. Poate fi monolitic, microkernel și hibrid. |
Licență | GNUv2 (GPL General Public License) și altele. | Licențierea variază. Puține versiuni sunt proprietare, în timp ce altele sunt gratuite / OSS. |
Site oficial | https://www.kernel.org/ | http://opengroup.org/unix |
Interfață de utilizator implicită | Unix shell | CLI (Command Line Interface) și grafică (sistem X Windows) |
Interfață mod text | În mod implicit, shell-ul este BASH (Bourne Again Shell). Mai mult, este compatibil cu mulți interpreți de comandă. | Inițial coaja Bourne. De asemenea, este compatibil cu mulți interpreți de comandă. |
Cost | Poate fi obținut și utilizat în mod liber. Există și versiuni la prețuri de Linux. Dar, în general, Linux este mai ieftin decât Windows. | Sistemele de operare proprietare au structuri de cost diferite, stabilite în mod corespunzător de către furnizorii care îl vând. |
Exemple | Debian, Ubuntu, Fedora, Red Hat, Android etc. | IBM AIX, Solaris, HP-UX, Darwin, macOS X etc. |
Arhitectură | A fost inițial creat pentru hardware-ul Intel x86, porturi disponibile pentru o mulțime de tipuri de CPU. | Compatibil cu mașinile PA și Itanium. Solaris este disponibil și pe x86 / x64. OSX este PowerPC. |
Detectarea și soluția amenințărilor | Deoarece Linux este condus în principal de comunitatea open source, mulți dezvoltatori din diferite părți ale lumii lucrează la cod. Prin urmare, detectarea și soluția amenințărilor este destul de rapidă în cazul Linux. | Datorită naturii de proprietate a Unix, utilizatorii trebuie să aștepte corecțiile corecte pentru remedierea erorilor. |
Securitate | Ambele sisteme de operare Linux și Unix sunt considerate, în general, ca fiind foarte bine protejate împotriva malware-ului. Acest lucru este atribuibil lipsei de acces root, actualizări rapide și cote de piață relativ scăzute (în comparație cu Windows). Începând din 2018, nu a existat niciun virus Linux răspândit. | Unix este, de asemenea, considerat a fi foarte sigur. Este și mai greu de infectat, deoarece sursa nu este disponibilă. În prezent, nu există un virus care să se răspândească în mod activ pentru Unix. |
Preț | Linux este gratuit. Cu toate acestea, asistența corporativă este disponibilă la un preț. | Unix nu este gratuit. Cu toate acestea, unele versiuni Unix sunt gratuite pentru dezvoltare (Solaris). Într-un mediu de colaborare, Unix costă 1.407 USD per utilizator, iar Linux costă 256 USD per utilizator. Prin urmare, UNIX este extrem de scump. |
Linux vs Unix Kernel
Deoarece Linux singur este doar un nucleu, merită să discutăm diferențele majore dintre nucleul Linux și nucleul Unix.
Există trei tipuri de miez, adică monolitic, micro și hibrid (combinație de monolit și micro) așa cum se vede în imaginea de mai jos.
(imagine sursă )
În arhitectura nucleului monolitic, întregul sistem de operare funcționează într-un spațiu unic de nucleu. Acesta definește singură o interfață virtuală de nivel înalt pe partea superioară a hardware-ului computerului.
Deși nucleul Linux derivă majoritatea caracteristicilor sale din nucleele Unix / Unix, totuși, există câteva puncte semnificative de diferențe între cele două.
În arhitectura microkernel, serviciile de bază ale sistemului de operare rulează într-un proces, în timp ce celelalte servicii rulează în procese diferite.
În kernel µ, cantitatea aproape minimă de mecanisme este inclusă în modul kernel. Aceste mecanisme includ IPC de bază (comunicare inter-proces), planificarea și gestionarea spațiului de adrese de nivel scăzut.
În ceea ce privește dimensiunea codului sursă, în general, un microkernel este mai mic decât nucleul monolitic.
Caracteristici | Kernel Linux | Unix Kernel |
---|---|---|
Abordarea nucleului | Linux urmează abordarea nucleului monolitic. | Nucleul Unix poate fi monolitic, microkernel sau hibrid. De exemplu, macOS are un nucleu hibrid, Solaris are nucleul monolitic, iar AIX are un nucleu monolitic cu module care pot fi încărcate dinamic. |
Adăugarea / eliminarea caracteristicilor nucleului | Oferă o caracteristică excelentă prin care componentele nucleului, cum ar fi unitățile de dispozitiv, pot fi adăugate dinamic și eliminate ca module. Această caracteristică este numită ca module de nucleu încărcabile (LDM). Acest lucru elimină necesitatea de a compila din nou întregul nucleu. La rândul său, această caracteristică oferă o mare flexibilitate Linux. | Nucleele tradiționale de sistem Unix necesită adăugarea unei legături statice a noilor sisteme. |
Fluxuri | În Linux, nu există subsistemuri I / O de fluxuri. | În majoritatea nucleelor Unix, este inclus subsistemul I / O de fluxuri, care se dovedește a fi interfața dorită pentru scrierea driverelor de dispozitiv, a driverelor de terminal etc. |
Abordare preventivă vs non-preventivă | În mod normal, un kernel Linux nu este preventiv. Cu toate acestea, în ultima vreme, sistemul de operare Linux în timp real a început să utilizeze nuclee preventive. | Unele sisteme Unix sunt pe deplin preventive. De exemplu, Solaris 2.x. etc. |
Filetarea nucleului | Linux folosește firul de nucleu doar pentru a rula periodic un anumit cod de nucleu. | Multe sisteme de operare de tip Unix folosesc firul de nucleu în scopul comutării contextului procesului. |
Modalități de gestionare a mediului cu mai multe fire | Prin multi-threading, sunt create mai multe fluxuri de execuție independente, numite procese ușoare (LWP). În Linux, LWP este creat prin apelarea funcției clone (). Aceste procese din Linux pot partaja memorie fizică, fișiere deschise, spațiu de adresă etc. | În Unix, LWP se bazează pe fire de nucleu. |
Comenzi Unix Vs Linux
Există anumite diferențe între comenzile shell, adică chiar și între versiunile aceleiași variante Unix. Cu toate acestea, ceea ce variază cel mai mult este shell-ul intern încorporat, mai degrabă decât prezentarea.
În general, se depun eforturi pentru a menține Linux cât mai aproape de Unix, respectând standardele POSIX. Prin urmare, comenzile terminalelor din distribuțiile Linux și sistemele de operare Unix nu sunt exact aceleași, dar nu există prea multe diferențe.
Fiecare distribuție Linux în sine are propriul mod de execuție.
De exemplu , în CentOS care este un sistem de operare pentru familia Linux, folosim comenzi yum (modificator de actualizare yellowdog) pentru instalarea de pachete noi, în timp ce în Debian care este un alt sistem de operare din familia Linux, folosim comenzi apt-get pentru instalare.
În IBM AIX, care este un sistem de operare Unix patentat, îl folosim -deget comanda pentru a verifica cine este conectat la sistem. Dar această comandă nu este utilizată în Linux. În Linux, folosim degetul mic comanda pentru a obține același rezultat.
În Ubuntu / Debian (un sistem de operare Linux), avem fdisk, despărțit, gparted comenzi pentru sarcina „creați”. Pe de altă parte, în Solaris (un sistem de operare Unix), avem un format, fmthard pentru sarcina „creați” .
Puteți consulta lista de comenzi Linux și Unix, veți găsi că comenzile Linux și Unix sunt similare, dar nu exact aceleași.
Exemple
Până acum, în acest articol, am văzut diferențele de bază generalizate dintre Linux și Unix. Aceste diferențe pot fi mai specifice dacă comparăm versiunile exacte ale celor două. Să vedem acest lucru prin câteva exemple.
Solaris vs Linux
Solaris, care acum se numește Oracle Solaris, este un sistem de operare al familiei Unix. Să comparăm Linux cu Solaris.
Linux acceptă mai multe arhitecturi de sistem decât Solaris. Prin urmare, Linux este mai portabil.
În timp ce vorbim despre stabilitate și integrare hardware, Solaris pare să fie mai bun aici. Linux are, de asemenea, o rată de dezvoltare mai rapidă în comparație cu Solaris.
Există puține alte diferențe tehnice între cele două, dar aici ne limităm comparația doar la performanță.
MacOS vs Linux
MacOS este un sistem de operare Unix certificat. Are propriul nucleu numit XNU. Este utilizat în computerele Apple, care sunt considerate drept cele mai fiabile computere.
MacOS este relativ ușor de configurat. Pe de altă parte, Linux este mai ieftin și are o mulțime de software open source disponibil față de soluțiile proprietare Apple. De asemenea, Linux este mai flexibil, deoarece poate fi executat pe aproape orice hardware, în timp ce MacOS poate rula doar pe hardware-ul Apple. De exemplu , iPhone.
MacOS folosește HFS + ca sistem de fișiere implicit, în timp ce Linux folosește ext4.
Concluzie
Unix este foarte vechi și se spune că este mama tuturor sistemelor de operare. Kernel-ul Linux este, de asemenea, derivat din Unix. Diferența majoră între sistemele de operare bazate pe Unix și Linux nu constă în partea de prezentare, ci în modul în care funcționează intern, adică în principal în partea kernel.
Diferența dintre cele două va depinde și de versiunile exacte ale Linux și Unix pe care le comparați.
De asemenea, este esențial să se afirme că Linux (și multe alte sisteme de operare similare Unix) sunt libere să obțină și să modifice, în timp ce sistemele de operare Unix nu. Costul este întotdeauna o preocupare majoră în timp ce decideți ce tehnologie să utilizați, iar Linux are un avantaj în acest sens.
Linux este mai flexibil și mai liber în comparație cu sistemele Unix adevărate și de aceea Linux a câștigat mai multă popularitate. În timp ce discutați comenzile în Unix și Linux, acestea nu sunt la fel, dar sunt foarte asemănătoare. De fapt, comenzile din fiecare distribuție a aceleiași sisteme de operare ale familiei variază, de asemenea.
întrebări de testare manuală pentru interviu pentru 3 ani de experiență
Solaris, HP, Intel etc. utilizează servere de internet Unix, stații de lucru și computer personal. În timp ce, Linux este utilizat pe scară largă pentru software și hardware, jocuri, tablete, mainfram-uri etc.
Există studii care spun că Linux crește rapid decât orice alt sistem de operare din ultimii ani. Prin urmare, în viitor, Linux ar putea tinde să lase instalările UNIX cu mult în urmă.
Referințe: Linux, Unix, Distribuție Linux, Carte: Mediul de programare Unix
Sper că v-a plăcut acest articol informativ despre diferențele Unix și Linux !!
=> Faceți clic aici pentru seria Unix Tutorial complet
Lectură recomandată
- Ce este Unix: o scurtă introducere în Unix
- Comenzi Unix: Comenzi Unix de bază și avansate cu exemple
- Comenzi de procesare a textelor Unix: filtre Unix cu exemple
- Tutorial Unix Pipes: Pipe în programarea Unix
- Diferența dintre Linux și Windows: Care este cel mai bun sistem de operare?
- Mai multe comenzi Unix Filter și Awk, Sed în procesarea textului
- Tutorial UNIX pentru începători (peste 20 de videoclipuri de instruire aprofundate Unix)
- Cum se compară două fișiere în Unix: comenzi de comparare a fișierelor