Program wymiany urządzeń peryferyjnych — Peripheral Interchange Program

Program wymiany urządzeń peryferyjnych (PIP)
Pierwotny(e) autor(zy) Digital Equipment Corporation / Harrison „Dit” Morse
Deweloper(zy) Badania cyfrowe / Gary Kildall , Heath Company
Pierwsze wydanie lata 60. ; 60 lat temu ( 1960 )
System operacyjny PARTIA-11/DOS-11 , RT-11 , RSTS/E , RSX-11 , OS/8 , TOPS-10 , TOPS-20 , CP/M , MP/M , DOS Plus , HDOS
Rodzaj Komenda

Peripheral Interchange Program (PIP) to narzędzie do przesyłania plików na i między urządzeniami na komputerach firmy Digital Equipment Corporation . Został po raz pierwszy zaimplementowany w architekturze PDP-6 przez Harrisona „Dita” Morse'a na początku lat sześćdziesiątych. Został on następnie zaimplementowany w systemach operacyjnych DEC dla architektur PDP-10 , PDP-11 i PDP-8 . W latach 70. i 80. Digital Research wdrożył PIP na CP/M i MP/M .

Historia

Mówi się, że podczas opracowywania nazwano go ATLATL, co jest akronimem od „Wszystko, Pan na wszystko, Panie”. To żartobliwie opisywało zarówno jego cel jako niezależnego od urządzenia narzędzia do kopiowania plików , jak i trudności w bezpiecznym kopiowaniu plików między urządzeniami.

Oryginalna składnia PIP to

PIP destination←source /switches

za pomocą znaku strzałki w lewo z zestawu znaków ASCII -1963, którego używały klawiatury Flexowriter z tamtych czasów. Ponieważ wprowadzono inne terminale, które używały późniejszych wersji ASCII (bez znaku strzałki w lewo), PIP zezwalał na składnię

PIP destination=source

Znak podkreślenia ( _ ), który znajdował się w tej samej pozycji znaku ASCII, co strzałka w lewo, był nadal obsługiwany w celu oddzielenia specyfikacji miejsca docelowego i źródła.

Źródło i miejsce docelowe były ciągami specyfikacji pliku . Składały się one z nazwy urządzenia, zwykle 2 znaki dla typu urządzenia, takiego jak DK (dysk), LP (drukarka wierszowa), MT (taśma magnetyczna) itp. oraz numer jednostki od 0 do 7, dwukropek (:), nazwa pliku i rozszerzenie.

Kopiowanie było generalnie dozwolone między dowolną specyfikacją pliku do dowolnej innej, jeśli miało to sens.

Wczesne wersje VAX/VMS implementowały pewne polecenia DCL , takie jak DIRECTORY i RENAME , uruchamiając RSX-11M PIP w trybie zgodności. To użycie PIP zostało zastąpione przez kod specyficzny dla VAX w VAX/VMS 2.0, ale PIP pozostało częścią warstwowego produktu VAX-11 RSX dla VMS.

Jeszcze w połowie lat 80. PIP był nadal powszechnie używany w systemach TOPS-10 , TOPS-20 i PDP-11 .

PIP w CP/M i MP/M

PIP.CMDw CP/M-86
Przykład użycia PIPpolecenia w DOS Plus do utworzenia pliku tekstowego z CON: wejście konsoli

Gary Kildall , który opracował CP/M i MP/M , oparł znaczną część projektu struktury plików i procesora poleceń na systemach operacyjnych firmy Digital Equipment, takich jak RSTS/E dla PDP-11. Oprócz dostępu do plików na dyskietce polecenie PIP w CP/M może również przesyłać dane do iz następujących „plików specjalnych”:

  • CON:konsola (wejście i wyjście)
  • AUX: — urządzenie pomocnicze. W CP/M 1 i 2, PIP używał PUN: (dziurkacz taśmy papierowej) i RDR: (czytnik taśmy papierowej) zamiast AUX:
  • LST: — lista urządzeń wyjściowych, zwykle drukarki
  • PRN: — jak LST: , ale wiersze zostały ponumerowane, zakładki rozwinięte i co 60 wierszy dodawane są nowe formularze
  • NUL: — urządzenie zerowe, podobne do \Device\Null i /dev/null
  • EOF: — urządzenie wejściowe, które dało znaki końca pliku , ASCII 0x1A
  • INP: — niestandardowe urządzenie wejściowe, domyślnie takie samo jak EOF:
  • PUN: — jednostka kart dziurkowanych:
  • OUT: — niestandardowe urządzenie wyjściowe, domyślnie takie samo jak NUL:

Nie były to jednak prawdziwe pliki urządzeń , ponieważ ich obsługa ograniczała się do PIP. Dwa niestandardowe urządzenia INP: i OUT: zostały zaimplementowane jako połączenia do stacjonarnych lokalizacji na początku programu PIP; intencją było, aby użytkownik lub producent OEM mógł załatać te lokalizacje, aby dodać własne urządzenia wejściowe lub wyjściowe. W programie na ten cel pozostało 246 bajtów wolnego miejsca.

Oprócz zwykłej PIP destination=sourceskładni, PIP pod CP/M nadal zezwalał na starą PIP destination_sourceformę. To zachowanie nie zostało udokumentowane, a CP/M generalnie nie miał standardu, dla którego znaki mogą pojawiać się w nazwach plików; dlatego inne programy mogły tworzyć i tworzyły nazwy plików zawierające znaki podkreślenia, których PIP nie mógł obsłużyć.

Zobacz też

Bibliografia