Posix có yêu cầu thiết bị nào không? Ví dụ /dev/urandom
, /dev/zero
hay /dev/null
?
Tôi nghi ngờ không phải vì các hệ điều hành không *, nhưng muốn yêu cầu sự hoàn chỉnh.
Posix có yêu cầu thiết bị nào không? Ví dụ /dev/urandom
, /dev/zero
hay /dev/null
?
Tôi nghi ngờ không phải vì các hệ điều hành không *, nhưng muốn yêu cầu sự hoàn chỉnh.
Câu trả lời:
POSIX chung định nghĩa ba tệp đặc biệt:
Ngoài ra, /
và /tmp
cũng được xác định bởi POSIX.
/dev/zero
, /dev/urandom
Hoặc /dev/random
được định nghĩa trong một số tựa UNIX hệ điều hành. Một số hệ điều hành có thể không định nghĩa chúng hoặc thực hiện với các tên khác nhau.
Ghi chú
nul
và console
không liên quan đến Unix /dev/null
và /dev/console
ngoại trừ theo một số cách lịch sử gián tiếp. Tên nul
và console
được kế thừa từ CP / M (không có thư mục); CP / M / DOS / Windows nul
có nghĩa tương tự như unix /dev/null
nhưng console
trong DOS và Windows có nghĩa là một cổng nối tiếp, không phải bàn điều khiển như trên các hệ thống unix. Nếu bạn chạy một ứng dụng trong hệ thống con POSIX của Windows (hoặc trong một thực hiện POSIX trên Windows), bạn sẽ nhận được /dev/null
, /dev/tty
và /dev/console
.
console
UNIX /dev/tty1
hoặc Plan9 /dev/console
. Nhưng trong lịch sử có nghĩa là bàn phím và chuột hoặc stdin. Trong khi các cổng nối tiếp vượt quá COM {1..4} hoặc AUX, và các cổng song song vượt quá LPT {1-4}.
/dev/null /dev/tty
... và ... có lẽ đó là nó. Nó cũng đòi hỏi/tmp
con đường. Tôi biết bởi vì tôi đã từng hỏi một câu hỏi tương tự . Oh, và/dev/console
.