Commenti
- Questa domanda potrebbe essere risolta dalla risposta a Tutti i comandi Unix sono stati riscritti in Linux? .
Risposta
Questa è una domanda difficile a cui rispondere.
Il primo “Unix Like” o “* nix” di solito significa POSIX. Tutti i sistemi che hai elencato sono sistemi POSIX. POSIX è un insieme di standard da implementare.
Ora per le domande più difficili.
GNU non è realmente un sistema operativo. È più un insieme di regole o filosofie che governano il software libero, che allo stesso tempo ha dato vita a una serie di strumenti durante il tentativo di creare un sistema operativo. Quindi gli strumenti GNU sono fondamentalmente versioni aperte di strumenti che già esistevano ma che sono stati rifatti per conformarsi ai principi del software aperto. GNU / Linux è una rete di questi strumenti e del kernel Linux per formare un sistema operativo completo, ma ci sono altri “GNU”. GNU / Hurd per esempio.
Unix e BSD sono implementazioni “vecchie” di POSIX che sono vari livelli di “closed source”. Unix di solito è totalmente closed source, ma ci sono tante versioni di Unix quante sono Linux se non di più. BSD di solito non è considerato “aperto” da alcune persone, ma in verità è molto più aperto di qualsiasi altra cosa esistente. La licenza è consentita anche per uso commerciale con molte meno restrizioni poiché sono consentite le licenze più “aperte”.
Linux è il nuovo arrivato. A rigor di termini è “solo un kernel”, tuttavia, in generale è pensato come un sistema operativo completo quando combinato con gli strumenti GNU e un sacco di altre cose.
La differenza principale sono gli ideali. Unix, Linux e BSD hanno ideali diversi che implementano. tutti POSIX e sono tutti sostanzialmente intercambiabili. Risolvono alcuni degli stessi problemi in modi diversi. Quindi, a parte gli ideali e il modo in cui scelgono di implementare gli standard POSIX, cè poca differenza.
Per maggiori informazioni, Ti suggerisco di leggere un breve articolo sulla creazione di GNU, OSS, Linux, BSD e UNIX. Saranno orientati verso le loro idee individuali, ma quando lo leggerai, avrai una buona idea delle differenze.
Questo diagramma genealogico di Unix mostra chiaramente la storia di Unix, BSD, GNU e Linux ( da Wikimedia ):
Commenti
- nota: non tutto è POSIX. per esempio. vedere
man unimplemented
(IIRC, potrebbe essereman security
) su un sistema GNU / Linux. - Strugee è corretto. Non sono completamente conformi, ma stanno cercando di esserlo. Non sono sicuro di come trasformarlo nella risposta però. Unix-Like è anche tecnicamente diverso da POSIX ma in generale quando le persone dicono Unix-Like di solito intendono POSIX.
- Alcune informazioni complementari in questo Q & A .
- no, gli sviluppatori del kernel Linux don ' non intendono mai essere conformi a POSIX . Non ricordo dove ho letto questo (ho guardato nelle pagine di manuale ma non sono riuscito a ' trovarlo) ma ci sono alcune chiamate di sistema che non verranno mai implementate per motivi di sicurezza.
- Credo che GNU fosse originariamente concepito per essere un sistema operativo.
Risposta
Linux non è un sistema operativo, è “un kernel. Linux da solo non ha un ambiente” userland “(nessuna app, nessun comando, no … ecc …).
Se vuoi avere un sistema operativo completo, devi aggiungi unarea utente al tuo kernel. Storicamente, per Linux, è GNU. Tutte le (?) Distribuzioni Linux non sono distribuzioni “reali Linux”. Sono distribuzioni GNU / Linux (GNU + Linux).
BSD è un sistema operativo completo “unix-like”, con il suo kernel e il suo territorio utente (nessun kernel Linux né GNU).
GNU / Linux e le famiglie * BSD (FreeBSD, OpenBSD e NetBSD) sono OS “unix-like”, si comportano come Unix.
Ecco un confronto tra (GNU) / Linux e * BSD: http://www.freebsd.org/doc/en/articles/explaining-bsd/comparing-bsd-and-linux.html
Commenti
- il tuo link non funziona
- @Anthon sta funzionando