A cosa si riferisce Ken? Esiste un comando "creat"?
A cosa si riferisce Ken? Esiste un comando "creat"?
Risposte:
È una chiamata di sistema Unix che crea un file: al prompt della shell Unix, digita man 2 creat
per saperne di più.
Le pagine man sono anche disponibili online in questi giorni:
Non si riferisce solo alla man 2 creat
chiamata di sistema. Si riferisce anche alle tendenze obsolete di risparmiare su ogni piccolo personaggio, laddove possibile, a volte questo è solo fonte di confusione, specialmente ora, quando si digita e memorizza un altro personaggio raramente è un ostacolo.
fcntl
, ls
, mv
, ecc, in generale.
Si riferisce alla chiamata di sistema UNIX per creare nuovi file. I linker su alcune macchine erano limitati a identificatori di massimo 6 caratteri. Apparentemente, Ken ha dovuto lavorare con un tale linker e quindi la chiamata di creazione del sistema è stata abbreviata in creat per adattarsi a questa limitazione. L'ironia è che crea anche.
Vedi anche: Cosa significa il nono comandamento?
'_'
variabile / funzione precedente all'utente, facendo attenzione a non utilizzarlo '_'
durante la generazione di simboli.
unlink
o umount
potrebbe esistere, tuttavia, che riterrei contemporaneo creat
.
umount
si scontrerebbe con umoun
o umounx
qualsiasi altra cosa, ma il nome sarebbe permesso. Ma questa è pura speculazione :)
Sono in ritardo di sei anni per rispondere, ma credo che le risposte esistenti perdano tutti il punto della citazione di Thompson.
Scriverei creat con una "e".
Ken Thompson non sta lamentando il nome della funzione utilizzata per aprire e possibilmente creare un file. Piuttosto, sta esprimendo che Unix è stato fatto correttamente, cioè non c'è nulla di grave che avrebbe dovuto essere fatto diversamente.
Il punto sottile è che l'architettura Unix è solida e le implementazioni vanno bene. Bisogna andare in bici per trovare qualcosa da migliorare in Unix. Pertanto, l'evidente nitpick sul nome di una chiamata di sistema comune.
creat
è una chiamata di sistema non un comando CLI.
creat
con due e - dopotutto, uno è già presente. Ovviamente, il messaggio implicito è che UNIX ha scoperto il modo in cui doveva essere senza modifiche sostanziali che richiedevano solo di correggere questo [uno] errore di battitura.