Właściwie, to on najprawdopodobniej nie znaczy to, co powiedział: pewnie oznaczało, że on pisze creatz dwóch „E-tych - w końcu, jeden jest już obecny. Oczywiście, domyślnym komunikatem jest to, że UNIX okazał się taki, jak powinien być, bez żadnych istotnych zmian wymagających jedynie naprawienia tej [jednej] literówki.
Dietmar Kühl,
Odpowiedzi:
56
Jest to wywołanie systemowe w systemie Unix, które tworzy plik: Po znaku zachęty powłoki Unix wpisz, man 2 creataby dowiedzieć się więcej.
Nie tylko odnosi się do man 2 creatwywołania systemowego. Odwołuje się także do przestarzałych trendów oszczędzania na każdej małej postaci, tam gdzie to możliwe, czasami jest to mylące, szczególnie teraz, gdy pisanie i przechowywanie innej postaci rzadko stanowi przeszkodę.
Myślę, że w kontekście pytania, które odnosiło się tylko do creat (). Chodziło mu o to, że w Uniksie nie było nic, co zrobiłby inaczej, z wyjątkiem tego małego błędu pisowni w wywołaniu systemowym, aby utworzyć plik.
15
@jmucchiello, to nie jest błąd ortograficzny. Jest to celowy (choć niestandardowy) skrót. To pasuje do intensywnego używania skrótów, takich jak fcntl, ls, mvitp, w ogóle.
Matthew Flaschen
6
Zgadzam się, ale uwielbiam te skróty nawet wtedy, gdy mamy TB do przechowywania :)
tgkprog
2
Klawisze telegazety są trudne do naciśnięcia. Korzystne było uratowanie kilku liter. Pierwszymi, które można było wyeliminować, były samogłoski i zbędne spółgłosek.
Erkin Alp Güney
24
Odwołuje się do wywołania systemowego UNIX w celu utworzenia nowych plików. Łączniki na niektórych komputerach były ograniczone do identyfikatorów o maksymalnie 6 znakach. Najwyraźniej Ken musiał pracować z takim łącznikiem i stąd tworzyć połączenia system został skrócony do creat dopasować to ograniczenie. Ironią jest to, że tworzenie też.
Limit 6 znaków przetłumaczony na 5, ponieważ kompilator (aby uniknąć kolizji symboli użytkownika z symbolami generowanymi przez kompilator) wstawił '_'wcześniej nazwy zmiennych / funkcji przed użytkownikami i uważał, aby nie używać go '_'podczas generowania symboli.
vonbrand
3
@vonbrand: Nie wydaje się to jednak wyjaśniać, w jaki sposób unlinklub umountmoże istnieć, ale moim zdaniem są współczesne creat.
Dolda2000,
@ Dolda2000 Cóż, całkiem możliwe, że linker miał to ograniczenie, podczas gdy kompilator nie. Więc umountbędzie kolidować z umounlub umounxczy cokolwiek innego, ale nazwa będzie dozwolone. Ale to czysta spekulacja :)
Luaan,
23
Spóźniłem się z odpowiedzią sześć lat, ale uważam, że wszystkie zachowane odpowiedzi pomijają sens cytatu Thompsona.
Pisałbym „twór” za pomocą „e”.
Ken Thompson nie lamentuje nad nazwą funkcji używanej do otwierania i tworzenia pliku. Wyraża raczej, że Unix został wykonany poprawnie, tzn. Nie ma nic ważniejszego, co należałoby zrobić inaczej.
Subtelny Chodzi o to, że Unix architektura jest dźwięk, a implementacje są w porządku. Trzeba będzie jeździć rowerem, aby znaleźć coś, co można poprawić w Uniksie. Tak więc oczywiste nitpick o nazwie wspólnego wywołania systemowego.
Racja, chce nam powiedzieć, że architekturę UNIX można ulepszyć w bardzo małych aspektach. Ale w zasadzie UNIX zrobił to dobrze. BTW. creatto wywołanie systemowe, a nie polecenie CLI.
creat
z dwóch „E-tych - w końcu, jeden jest już obecny. Oczywiście, domyślnym komunikatem jest to, że UNIX okazał się taki, jak powinien być, bez żadnych istotnych zmian wymagających jedynie naprawienia tej [jednej] literówki.Odpowiedzi:
Jest to wywołanie systemowe w systemie Unix, które tworzy plik: Po znaku zachęty powłoki Unix wpisz,
man 2 creat
aby dowiedzieć się więcej.Strony podręcznika są obecnie dostępne online:
creat(2)
creat(3p)
.źródło
Nie tylko odnosi się do
man 2 creat
wywołania systemowego. Odwołuje się także do przestarzałych trendów oszczędzania na każdej małej postaci, tam gdzie to możliwe, czasami jest to mylące, szczególnie teraz, gdy pisanie i przechowywanie innej postaci rzadko stanowi przeszkodę.źródło
fcntl
,ls
,mv
itp, w ogóle.Odwołuje się do wywołania systemowego UNIX w celu utworzenia nowych plików. Łączniki na niektórych komputerach były ograniczone do identyfikatorów o maksymalnie 6 znakach. Najwyraźniej Ken musiał pracować z takim łącznikiem i stąd tworzyć połączenia system został skrócony do creat dopasować to ograniczenie. Ironią jest to, że tworzenie też.
Zobacz także: Co oznacza 9. przykazanie?
źródło
'_'
wcześniej nazwy zmiennych / funkcji przed użytkownikami i uważał, aby nie używać go'_'
podczas generowania symboli.unlink
lubumount
może istnieć, ale moim zdaniem są współczesnecreat
.umount
będzie kolidować zumoun
lubumounx
czy cokolwiek innego, ale nazwa będzie dozwolone. Ale to czysta spekulacja :)Spóźniłem się z odpowiedzią sześć lat, ale uważam, że wszystkie zachowane odpowiedzi pomijają sens cytatu Thompsona.
Ken Thompson nie lamentuje nad nazwą funkcji używanej do otwierania i tworzenia pliku. Wyraża raczej, że Unix został wykonany poprawnie, tzn. Nie ma nic ważniejszego, co należałoby zrobić inaczej.
Subtelny Chodzi o to, że Unix architektura jest dźwięk, a implementacje są w porządku. Trzeba będzie jeździć rowerem, aby znaleźć coś, co można poprawić w Uniksie. Tak więc oczywiste nitpick o nazwie wspólnego wywołania systemowego.
źródło
creat
to wywołanie systemowe, a nie polecenie CLI.