Czy Posix wymaga jakichkolwiek urządzeń?


12

Czy Posix wymaga jakichkolwiek urządzeń? Na przykład /dev/urandom, /dev/zerolub /dev/null?

Podejrzewam, że nie z powodu systemów operacyjnych innych niż * nix, ale chciałem poprosić o kompletność.


2
/dev/null /dev/tty... i ... może to jest to. Wymaga również /tmpścieżki. Wiem, bo kiedyś zadałem podobne pytanie . Och, i /dev/console.
mikeserv

Odpowiedzi:


10

POSIX general definiuje trzy pliki specjalne:

  • / dev / tty
  • / dev / console
  • / dev / null

Ponadto, /a /tmptakże są zdefiniowane przez POSIX.

/dev/zero, /dev/urandomCzy /dev/randomzostały określone w niektórych UNIX takich systemów operacyjnych. Niektóre systemy operacyjne mogą ich nie definiować lub implementować pod różnymi nazwami.

Uwaga


Widziałem nuli consolena Windowsie, ale nie sądzę, żebym kiedykolwiek widział tty.

2
@noloader: Windows implementuje tylko pierwszą wersję standardu POSIX. Zobacz: en.wikipedia.org/wiki/Microsoft_POSIX_subsystem
cuonglm

3
@noloader Windows nuli consolenie są powiązane z Uniksem /dev/nulli /dev/consolepoza jakimś pośrednim historycznym sposobem. Nazwy nuli consolezostały odziedziczone po CP / M (które nie miały katalogów); CP / M / DOS / Windows nuloznacza to samo co UNIX, /dev/nullale consolepod DOS, a Windows oznacza port szeregowy, a nie konsolę jak w systemach UNIX. Jeśli uruchomisz aplikację w podsystemie POSIX systemu Windows (lub w innej implementacji POSIX na systemie Windows), otrzymasz /dev/null, /dev/ttyi /dev/console.
Gilles „SO- przestań być zły”

1
Aby dodać do wyjaśnienia @Gilles, w zasadzie system Windows / Dos consolenależy do systemu UNIX /dev/tty1lub Plan9 /dev/console. Ale historycznie oznaczało to klawiaturę i mysz lub standardowe wejście. Podczas gdy porty szeregowe były ponad COM {1..4} lub AUX, a porty równoległe były ponad LPT {1-4}.
Dwight Spencer
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.