Sepanjang spesifikasi POSIX, ada ketentuan (1, 2, 3…) untuk memungkinkan implementasi memperlakukan jalur yang dimulai dengan dua /
khusus.
Aplikasi POSIX (aplikasi yang ditulis dengan spesifikasi POSIX agar portabel untuk semua sistem yang mendukung POSIX) tidak dapat mengasumsikan bahwa //foo/bar
sama dengan /foo/bar
(meskipun mereka dapat berasumsi bahwa ///foo/bar
sama dengan /foo/bar
).
Sekarang apa saja sistem POSIX (bersejarah dan masih dipertahankan) yang memperlakukan //foo
khususnya? Saya percaya (sekarang saya telah terbukti salah) bahwa ketentuan POSIX didorong oleh Microsoft untuk varian Unix mereka (XENIX) dan mungkin lapisan Windows POSIX (ada yang bisa memastikannya?).
Ini digunakan oleh Cygwin yang juga merupakan lapisan seperti POSIX untuk Microsoft Windows. Apakah ada sistem Windows non-Microsoft? OpenVMS?
Pada sistem di mana //foo/bar
khusus, untuk apa itu digunakan? //host/path
untuk akses sistem file jaringan? Sistem file virtual?
Lakukan beberapa aplikasi berjalan di Unix-likes —jika bukan API sistem— perlakukan //foo/bar
jalur secara khusus (dalam konteks di mana mereka memperlakukan /foo/bar
sebagai jalur pada sistem file)?
Sunting , saya telah mengajukan pertanyaan di milis grup austin tentang asal //foo/bar
penanganan dalam spesifikasi, dan diskusi adalah bacaan yang menarik (setidaknya dari sudut pandang arkeologi).
Jawaban yang Diterima:
Ini adalah kompilasi dan indeks dari jawaban yang diberikan sejauh ini. Pos ini adalah wiki komunitas , itu dapat diedit oleh siapa saja dengan 100+ reputasi dan tidak ada yang mendapatkan reputasi darinya. Jangan ragu untuk memposting jawaban Anda sendiri dan menambahkan tautan ke sini (atau tunggu saya melakukannya). Idealnya, jawaban ini hanya berupa ringkasan (dengan entri pendek sementara jawaban lain individu memiliki detailnya).
Sistem yang saat ini dipelihara secara aktif:
- Cygwin . Lapisan POSIX untuk Microsoft Windows. Digunakan untuk jalur UNC Windows.
- UWIN sejak 1.3. Lapisan POSIX lain untuk Windows. Digunakan setidaknya untuk
//host/file
jalur berbagi file jaringan. - IBM z/OS seperti yang disebutkan dalam pelacak bug POSIX, z/OS menyelesaikan
//pathname
permintaan ke kumpulan data MVS , bukan ke file jaringan. Contoh.
Sistem mati
-
Domain/OS Apollo (dikonfirmasi). Juga disebutkan di Deskripsi Resmi UNC (Konvensi Penamaan Universal) sebagai kemungkinan asal
//host/path
notasi (lihat juga, halaman 2-15).Menurut Donn Terry, HP (yang mengakuisisi Apollo Computers)-lah yang mendorong dimasukkannya ketentuan tersebut dalam spesifikasi POSIX untuk Domain/OS.
-
Tektronix Utek (dikonfirmasi), di mana
//host/path
adalah jalur pada sistem file terdistribusi . -
QNX 4 dengan sistem pemrosesan terdistribusi FLEET, di mana
//123/path
adalah/path
pada node 123. (Disebutkan dalam dokumentasi QNX 6.) -
AT&T SysV Rilis 3 (tidak diverifikasi).
//host/path
di (dihentikan di SVR4) sistem Berbagi File Jarak Jauh RFS. -
SEL/Gould UTX-32 (tidak diverifikasi). Digunakan untuk
//host/path
.
Aplikasi yang menangani //foo/bar
khusus untuk jalur
- Paksa dimana
//depot/A/B/C/D
mengacu pada jalur di depot . - Blender . Dalam konfigurasinya Anda menggunakan
//
awalan untuk jalur relatif (ke campuran yang terkait dengan blok data). - Bazel membangun sistem menggunakan
//
awalan untuk label target dalam grafik build Bazel.