Quali caratteristiche ha Darwin che altri Unix non sono ' o viceversa?
Su Febbraio 16, 2021 da adminDarwin ha delle caratteristiche specifiche per esso? Altri Unixe hanno caratteristiche che mancano a Darwin?
Risposta
OS X è lunico sistema operativo rimanente basato sul microkernel Mach , anchesso ancora commercialmente rilevante. Ci sono alcuni progetti di ricerca in corso e sistemi operativi obsoleti che senza dubbio vengono ancora utilizzati nelle impostazioni di produzione su vecchie macchine, ma niente che puoi comprare su una nuova macchina oggi.
OS X ha il solito assortimento di incompatibilità di funzionalità del kernel che qualsiasi * ix ha. Il problema più grave che ho dovuto aggirare di recente è la mancanza di code di messaggi di sistema V . (msgget(2)
e amici.) Abbiamo dovuto sostituire il nostro codice della coda di messaggi —, scritto per una variante “reale” del Sistema V e successive portato su Linux — con TCP / IP per far funzionare il nostro software su OS X. Per la nostra applicazione, le differenze tra questi due metodi IPC erano importanti nel momento in cui abbiamo deciso di andare con code di messaggi, ma a causa di successive modifiche allarchitettura, non è stato un grosso problema passare a TCP / IP.
Risposta
Alla fine, Darwin non è solo un sottile strato BSD sopra Mach 2.0?
Usavo NeXTStep, non so da quanto si discosta lattuale MacOSX NeXTStep, ma …
Mach 2.0 offriva un diverso insieme di astrazioni a livello di kernel:
- Un “compito”: quello “è uno spazio di indirizzi + un insieme di “porte”, possibilmente con un thread in esecuzione.
- Thread. Questa era lunità di esecuzione pianificabile. Unattività (spazio degli indirizzi) ne hai più di 1 in esecuzione. Credo che i file Mach-O (il formato del file eseguibile di Mach) possano specificare più di un thread in fase di esecuzione del processo: nessuna funzione main () che ha avviato più Cthread, il sistema operativo ne avvierebbe uno.
- Porte Non sono come le porte TCP o UDP. Sono stati digitati, flussi ordinati di messaggi. Piuttosto simile a RPC. Hai creato un file di specifiche del protocollo, poi lo hai eseguito attraverso un compilatore per ottenere stub lato server e client, routine di marshalling e unmarshalling, ecc.
- Cercapersone di memoria a livello utente. Potresti impostare unattività + thread per gestire il paging di altri spazi di indirizzi di attività.
La gente originale della CMU Mach usava queste astrazioni per emulare i processi BSD Unix, Processi MS-DOS e, in un favoloso attacco di stranezza, attività VMS. Ogni attività VMS richiedeva 2 attività Mach, più molti thread. Qualcuno vendeva un emulatore Mac OS (pre-OSX) per NeXTStep che utilizzava lo spazio utente- cercapersone con buoni risultati.
La vecchia pagina delle pubblicazioni di CMU Mach: http://www.cs.cmu.edu/afs/cs/project/mach/public/www/doc/documents_top.html
Il documento VMS-on-Mach: http://www.sture.ch/vms/Usenix_VMS-on-Mach.pdf
Commenti
- Mac OS X (e quindi Darwin) utilizza Mach 3.0.
Risposta
Questa non è una vera risposta ma DTrace è un fantastico strumento di debug del sistema che esiste per Solaris, Darwin / OS X e * BSD, ma non Linux.
Commenti
- Oracle ha portato DTrace su Linux nel 2011.
- A partire da ottobre 2011, Oracle ha annunciato il porting di DTrace da Solaris a Linux, ma a partire dal 13 ottobre 2014 rimane ufficialmente non disponibile. ( slideshare.net/brendangregg/from-dtrace-to-linux )
Risposta
Darwin ha un insieme relativamente piccolo di tipi di file system supportati. Oltre a speciali come devfs e tipi di rete come webdav, lelenco è:
- HFS / HFS +
- UFS / FFS
- ISO-9660 / UDF / CDDA
- NTFS
- FAT
Di questo elenco, solo UFS è stato progettato per Unix, sebbene HFS + sia stato aggiornato per supportare tutte le funzionalità Unix necessarie. A partire da Mac OS X 10.6, UFS non può essere utilizzato per la partizione root, sebbene questa restrizione probabilmente non si applica a Darwin. Per impostazione predefinita, HFS + non fa distinzione tra maiuscole e minuscole, sebbene sia possibile richiedere la distinzione tra maiuscole e minuscole al momento della creazione. verrà eseguito su una partizione che fa distinzione tra maiuscole e minuscole, molte applicazioni Mac di alto profilo non lo faranno (ad esempio Adobe CS).
Per un po , Apple aveva in programma di sostituire HFS con ZFS e ha persino fornito ZFS con alcune versioni di Mac OS X, ma purtroppo questo esperimento alla fine non è riuscito a causa di problemi di licenza irrisolvibili .
Commenti
- Credo che OS X ‘ s / macOS ‘ è segnalato per essere ancora difettoso, poiché rimane sperimentale e non è mai stato stabilizzato, come ricordo.
Risposta
Penso che sia meglio descrivere Darwin come un altro sapore di UNIX . Solaris è uno. HP / UX è un altro. Ce ne sono molti in più , forse non così “high- profilo “ma ci sono”. E con ogni gusto arrivano le sue specifiche. Ecco perché ci sono i sapori in primo luogo. Alcune aziende escogitano qualcosa che potrebbe aiutare a venderlo (o semplicemente lavorarci o anche amministrarlo) e lo crea e gli dà il proprio nome.
Commenti
- UNIX (in tutto maiuscolo) è un marchio registrato di The Open Group in molti paesi; per qualcosa da essere ” UNIX ” (tutto in maiuscolo), la certificazione è obbligatoria . Darwin non è ‘ t un altro ” versione di UNIX ” – ma Mac OS X 10.10 su Intel x86-64 è certificato come un altro UNIX.
Risposta
Se “ho sentito bene Darwin, come rilasciato da Apple, non funziona più come indipendente sistema operativo, quindi vorrei sottolineare che la più grande differenza che ha è OS X su di esso.: D
Sebbene lintegrazione tra il vecchio Mac OS, il nuovo Mac OS X e le cose di NeXT a volte è ridicolo, piccole utilità come diskutil e hdiutil sono fantastici. Forse sono stati alcuni vecchi architetti del kernel Mach lasciati da NeXT che usano queste piccole cose e si prendono cura di loro che hanno fatto in modo che XCode sia anche uno strumento così buono.
Risposta
Darwin è basato su FreeBSD. Una caratteristica interessante che non è presente in altri sistemi operativi Unix (nella mia esperienza) è il Berkeley Packet Filter , noto anche come /dev/bpf
. Questo è un dispositivo molto versatile che puoi utilizzare per lacquisizione di pacchetti.
Commenti
- Darwin non è ‘ è veramente basato su FreeBSD, anche se da esso prende in prestito alcune cose userland. Altri commenti qui lo spiegano meglio. bpf (4) non è ‘ solo Darwin e FreeBSD / NetBSD / OpenBSD, e io ‘ ho la sensazione che qualcuno potrebbe avere anche implementato per i kernel Linux precedenti. SCO (ins) notoriamente lo aveva nella sua offerta Unixware.
Risposta
Primo che mi viene in mente sono tutti gli strumenti che OSX ha nella console .. ci sono un sacco di comandi più utili che unix ha. Diskutil è come la magia delle partizioni nella shell, questo strumento ha così tante opzioni per le operazioni del disco che fdisk è davvero solo il 10% di ciò che ha questa bestia … btw osx supporta davvero un ottimo supporto Software Raid puoi avere JBOD, Strip e Mirror tipi di raid software .. unix ha davvero questo? nei tuoi sogni !!; D
SystemProfiler – ottimo strumento che mostra tutti gli ID hardware, nomi, modelli, sn “se cose del genere in un Modo MOLTO comodo.
Il kernel di darwin non è totalmente trasparente come in unix.
darwin ha killall util = P unix don “t, only abilità
anche diversi file system .. HFS, HFS +
forse questultimo me lo ricorderò di più =)
Commenti
- Vuoi dire che Darwin ha ‘ killall ‘ e altre varianti di Unix don ‘ t? Questo ‘ non è vero.
- questa risposta è sospetta di trolling. Non è necessario essere così diffamatori nelle tue affermazioni su * nix oltre a os X. Inoltre, lultima volta che HO MAI USATO * NIX killall era assolutamente presente nel mio PATH. Inoltre, linux ha i profilatori di sistema. Fai i tuoi compiti. Non ‘ essere un é uche. modifica: uso e amo molto OS X.
- Ho killall su Linux, quindi ‘ non è esclusivo di darwin
- Questa risposta è vaga e imprecisa. Quali caratteristiche utili manca a fdisk? Linux RAID (mdadm) ha concatenazione (LINEAR), striping (RAID0) e mirroring (RAID1), tra gli altri. Linux supporta anche HFS e HFS +.
- BTW: Linux-killall e Solaris-killall sono abbastanza diversi
Lascia un commento