Программа обмена периферийными устройствами
Эта статья нуждается в дополнительных цитатах для проверки . ( июль 2009 г. ) |
Оригинальный автор(ы) | Digital Equipment Corporation / Харрисон «Дит» Морс |
---|---|
Разработчик(и) | Цифровые исследования / Гэри Килдалл , Heath Company |
Первоначальный выпуск | 1960-е годы |
Операционная система | BATCH-11/DOS-11 , RT-11 , RSTS/E , RSX-11 , OS/8 , TOPS-10 , TOPS-20 , CP/M , MP/M , DOS Plus , HDOS , VMS |
Тип | Команда |
Программа обмена периферийными устройствами ( PIP ) представляла собой утилиту для передачи файлов на устройства и между устройствами на компьютерах Digital Equipment Corporation . Впервые он был реализован на архитектуре PDP-6 Харрисоном «Дитом» Морсом в начале 1960-х годов. Впоследствии он был реализован для операционных систем DEC для PDP-10 , PDP-11 и PDP-8. [ 1 ] архитектуры. В 1970-х и 1980-х годах компания Digital Research внедрила PIP на CP/M. [ 2 ] и МП/М . [ 3 ]
История
[ редактировать ]Говорят, что во время разработки он получил название ATLATL, что является аббревиатурой от «Все, Господи ко всему, Господи». [ 4 ] В нем с юмором описывалось как его предназначение как независимого от устройства инструмента копирования файлов , так и трудности безопасного копирования файлов между устройствами.
Исходный синтаксис PIP был
PIP destination←source /switches
используя символ стрелки влево из набора символов ASCII -1963, который использовался на клавиатурах Flexowriter того времени. Поскольку были представлены другие терминалы, которые использовали более поздние версии ASCII (без символа стрелки влево), PIP допускал синтаксис
PIP destination=source
Символ подчеркивания ( _ ), который находился в той же позиции символа ASCII, что и стрелка влево, по-прежнему поддерживался для разделения спецификаций назначения и источника.
Источником и местом назначения были строки спецификации файла . Они состояли из имени устройства, обычно состоящего из двух символов для типа устройства, такого как DK (диск), LP (линейный принтер), MT (магнитная лента) и т. д., а также номера устройства от 0 до 7, двоеточия (:), имени файла. и расширение.
Копирование обычно разрешалось из любой спецификации файла в любую другую, где это имело смысл.
Ранние версии VAX/VMS реализовали некоторые команды DCL , такие как DIRECTORY и RENAME , путем запуска RSX-11M PIP в режиме совместимости. Такое использование PIP было заменено кодом, специфичным для VAX, в VAX/VMS 2.0. [ 5 ] но PIP остался частью многоуровневого продукта VAX-11 RSX для VMS. [ 6 ]
Еще в середине 1980-х годов PIP все еще широко использовался в системах TOPS-10 , TOPS-20 и PDP-11 .
PIP в CP/M и MP/M
[ редактировать ]Гэри Килдалл , разработавший CP/M и MP/M , большую часть конструкции файловой структуры и командного процессора основывал на операционных системах Digital Equipment, таких как RSTS/E для PDP-11. Помимо доступа к файлам на дискете , команда PIP в CP/M также может передавать данные в следующие «специальные файлы» и из них:
- CON: — консоль (ввод и вывод)
- AUX: — вспомогательное устройство. В CP/M 1 и 2 использовался PIP. каламбур: (перфоратор для бумажной ленты) и RDR: (считыватель бумажной ленты) вместо К:
- LST: — список устройств вывода, обычно принтера.
- ПРН: — как LST: , но строки были пронумерованы, вкладки расширены, а подача формы добавлена каждые 60 строк.
- NUL: — нулевое устройство, аналогично \Device\Null и /dev/null.
- EOF: — устройство ввода, которое выдавало символы конца файла , ASCII. 0x1A
- INP: — пользовательское устройство ввода, по умолчанию такое же, как ЭОФ:
- PUN: — блок перфокарт:
- OUT: — пользовательское устройство вывода, по умолчанию такое же, как НУЛЕВОЙ:
Однако это не были настоящие файлы устройств , поскольку их обработка ограничивалась PIP. Два специальных устройства ИЯФ: и OUT: были реализованы как вызовы фиксированных мест в начале программы PIP; намерение заключалось в том, чтобы пользователь или OEM-производитель мог исправить эти местоположения, чтобы добавить свои собственные устройства ввода или вывода. Для этого в программе было оставлено 246 байт свободного места.
Помимо обычного PIP destination=source
синтаксис, PIP под CP/M по-прежнему позволял использовать старый PIP destination_source
форма. Такое поведение не было документировано, и у CP/M обычно не было стандарта, согласно которому символы могли появляться в именах файлов; поэтому другие программы могли и создавали имена файлов, содержащие символы подчеркивания, с которыми PIP не мог справиться.
Зарезервированные имена файлов в Microsoft Windows
[ редактировать ]Программа PIP является причиной зарезервированных имен файлов в Microsoft Windows: CON
PRN
AUX
NUL
COM0
COM1
COM2
COM3
COM4
COM5
COM6
COM7
COM8
COM9
LPT0
LPT1
LPT2
LPT3
LPT4
LPT5
LPT6
LPT7
LPT8
LPT9
. Это ограничение не учитывает регистр и также применяется к базовым именам. Так, например, Con.txt
недопустимое имя файла.
См. также
[ редактировать ]- копирование (команда) – команда RT-11, RSX-11, OpenVMS, AmigaOS, DOS, OS/2 и Microsoft Windows для копирования данных.
- cp (Unix) – команда Unix для копирования данных.
- Кермит (протокол)