V celé specifikaci POSIX existuje ustanovení (1, 2, 3…), které umožňuje implementacím zpracovávat cestu začínající dvěma /
speciálně.
Aplikace POSIX (aplikace napsaná podle specifikace POSIX, která má být přenosná do všech systémů kompatibilních s POSIX) nemůže předpokládat, že //foo/bar
je stejný jako /foo/bar
(ačkoli mohou předpokládat, že ///foo/bar
je stejný jako /foo/bar
).
Co jsou ty systémy POSIX (historické a stále udržované), které zacházejí s //foo
speciálně? Věřil jsem (teď se ukázalo, že jsem se mýlil), že ustanovení POSIX bylo vyvinuto společností Microsoft pro jejich Unixovou variantu (XENIX) a možná i Windows POSIX vrstvu (může to někdo potvrdit?).
Používá ji Cygwin, což je také vrstva podobná POSIXu pro Microsoft Windows. Existují nějaké jiné systémy než Microsoft Windows? OpenVMS?
Na systémech, kde je //foo/bar
je speciální, k čemu se používá? //host/path
pro přístup k síťovým souborovým systémům? Virtuální souborové systémy?
Proveďte nějaké aplikace běžící na Unixových systémech – pokud nejde o systémové API – zacházet s //foo/bar
cesty speciálně (v kontextech, kde jinak zacházejí s /foo/bar
jako cestu k souborovému systému)?
Upravit , od té doby jsem na mailing listu austin-group položil otázku o původu //foo/bar
zpracování ve specifikaci a diskuse je zajímavé čtení (alespoň z hlediska archeologie).
Přijatá odpověď:
Toto je kompilace a rejstřík dosud uvedených odpovědí. Tento příspěvek je wiki komunity , může to upravovat kdokoli s reputací 100+ a nikdo z toho reputaci nezíská. Neváhejte a napište svou vlastní odpověď a přidejte na ni odkaz sem (nebo počkejte, až to udělám). V ideálním případě by tato odpověď měla být pouze souhrnem (s krátkými záznamy, zatímco jednotlivé ostatní odpovědi by měly podrobnosti).
Aktuálně aktivně udržované systémy:
- Cygwin . Vrstva POSIX pro Microsoft Windows. Používá se pro cesty Windows UNC.
- UWIN od 1.3. Další vrstva POSIX pro Windows. Používá se alespoň pro
//host/file
cesty pro sdílení souborů v síti. - IBM z/OS jak je uvedeno v nástroji pro sledování chyb POSIX, z/OS řeší
//pathname
požadavky na datové sady MVS , nikoli do síťových souborů. Příklad.
Zaniklé systémy
-
Doména/OS Apollo (potvrzeno). Také zmíněn v oficiálním popisu UNC (Universal Naming Convention) jako možný původ
//host/path
notace (viz také strana 2-15).Podle Donna Terryho to byla společnost HP (která získala Apollo Computers), kdo prosazoval zahrnutí tohoto ustanovení do specifikace POSIX pro doménu/OS.
-
Tektronix Utek (potvrzeno), kde
//host/path
je cesta k distribuovanému systému souborů . -
QNX 4 se systémem distribuovaného zpracování FLEET, kde
//123/path
je/path
na uzlu 123. (Zmíněno v dokumentaci QNX 6.) -
AT&T SysV Release 3 (neověřeno).
//host/path
v systému vzdáleného sdílení souborů RFS (ukončeno v SVR4). -
SEL/Gould UTX-32 (neověřeno). Používá se pro
//host/path
.
Aplikace, které zacházejí s //foo/bar
speciálně pro cesty
- Perforce kde
//depot/A/B/C/D
odkazuje na cestu v depu . - Blender . V jeho konfiguraci použijete
//
prefix pro relativní cesty (na směs přidruženou k datovému bloku). - Bazel sestavení systém používá
//
prefix pro popisky cílů v grafu sestavení Bazel.