Ken đang đề cập đến cái gì? Có một lệnh "tạo"?
Ken đang đề cập đến cái gì? Có một lệnh "tạo"?
Câu trả lời:
Đó là một cuộc gọi hệ thống Unix tạo ra một tệp: Tại dấu nhắc shell Unix, nhập man 2 creat
để tìm hiểu thêm.
Trang man cũng có sẵn trực tuyến những ngày này:
Không chỉ ông đề cập đến man 2 creat
cuộc gọi hệ thống. Ông cũng đề cập đến các xu hướng lỗi thời để tiết kiệm cho mọi nhân vật nhỏ bé, khi có thể, đôi khi điều này chỉ gây nhầm lẫn, đặc biệt là bây giờ, khi gõ và lưu trữ một nhân vật khác hiếm khi là một trở ngại.
fcntl
, ls
, mv
, vv, nói chung.
Nó đề cập đến cuộc gọi hệ thống UNIX để tạo các tệp mới. Trình liên kết trên một số máy bị giới hạn ở số nhận dạng tối đa 6 ký tự. Rõ ràng, Ken đã phải làm việc với một mối liên kết như vậy và do đó tạo cuộc gọi hệ thống được rút ngắn xuống còn tạo để phù hợp với hạn chế này. Điều trớ trêu là tạo ra quá.
Xem thêm: Điều răn thứ 9 có nghĩa là gì?
'_'
tên biến / hàm của người dùng và cẩn thận không sử dụng '_'
khi tạo các ký hiệu.
unlink
hoặc umount
có thể tồn tại, tuy nhiên, điều mà tôi nghĩ là hợp thời creat
.
umount
sẽ đụng độ với umoun
hoặc umounx
bất cứ điều gì, nhưng tên sẽ được cho phép. Nhưng đó là suy đoán thuần túy :)
Tôi trễ sáu năm để trả lời, nhưng tôi tin rằng tất cả các câu trả lời còn lại đều bỏ lỡ quan điểm của trích dẫn của Thompson.
Tôi đánh vần người tạo với một 'e'.
Ken Thompson không than vãn tên của hàm được sử dụng để mở và có thể tạo một tệp. Thay vào đó, anh ta đang bày tỏ rằng Unix đã được thực hiện đúng, tức là không có gì quan trọng nên được thực hiện khác đi.
Điểm tinh tế là kiến trúc Unix là âm thanh và việc triển khai vẫn ổn. Người ta sẽ cần phải đạp xe để tìm bất cứ điều gì để cải thiện trong Unix. Do đó, các tiêu đề rõ ràng về tên của một cuộc gọi hệ thống phổ biến.
creat
là một cuộc gọi hệ thống không phải là lệnh CLI.
creat
với hai 'của e - sau khi tất cả, một là đã hiện diện. Tất nhiên, thông điệp ngầm là UNIX hóa ra theo cách nó có nghĩa là không có bất kỳ thay đổi đáng kể nào chỉ yêu cầu sửa lỗi chính tả [một] này.