Компьютер PDP-10¶
PDP-10 — это серия 36-битных миникомпьютеров, выпускавшаяся компанией Digital Equipment Corporation (DEC) с 1966 по 1983 год. Машины этой серии, также известные как DECsystem-10, стали одними из первых коммерчески успешных компьютеров, поддерживающих многопользовательскую работу в режиме разделения времени (time-sharing), и оказали значительное влияние на развитие операционных систем, языков программирования и компьютерных сетей, в частности, сети ARPANET — предшественницы современного Интернета.
¶История
¶Предпосылки и разработка
В середине 1960-х годов компания DEC уже имела успешный опыт производства 12-битных машин PDP-5 и PDP-8, а также 18-битных PDP-1, PDP-4 и PDP-7. Однако для задач, требующих большей разрядности и объёмов адресуемой памяти, требовалась новая архитектура. В 1963 году в DEC началась работа над проектом «Programmed Data Processor — 10» (PDP-10), который должен был стать 36-битной машиной. Выбор 36-битного слова был обусловлен, в частности, влиянием архитектуры IBM 7090 и других мейнфреймов того времени, а также удобством представления чисел с плавающей запятой и адресации памяти.
¶Модели и хронология
Первая модель, PDP-10 KA10, была анонсирована в 1966 году и начала поставляться в 1968 году. Она использовала дискретные транзисторы и диоды, а также магнитную память на ферритовых сердечниках. В 1970 году вышла модель KI10, построенная на интегральных схемах (IC) с использованием технологии TTL. KI10 была более компактной и надёжной, чем KA10.
В 1972 году DEC представила модель KL10, которая стала основой для серии DECsystem-10. KL10 использовала микропрограммное управление (микрокод) и была значительно быстрее предшественниц. В 1975 году вышла модель KS10 — младшая, более дешёвая версия, ориентированная на образовательные учреждения и небольшие организации. Последней моделью стала KL10-B (также известная как DECsystem-1090), выпущенная в 1977 году и остававшаяся в производстве до 1983 года.
¶Закат эпохи
К началу 1980-х годов архитектура PDP-10 начала устаревать. 36-битная архитектура уступала 32-битным системам, таким как VAX от самой DEC, а также растущему рынку микрокомпьютеров. DEC прекратила производство PDP-10 в 1983 году, сосредоточившись на семействе VAX. Тем не менее, многие системы PDP-10 продолжали эксплуатироваться в университетах и исследовательских центрах до середины 1990-х годов.
¶Архитектура и характеристики
¶36-битное слово
Ключевой особенностью PDP-10 была 36-битная разрядность слова. Это позволяло:
- Адресовать до 2^18 (262 144) 36-битных слов памяти (или 1 048 576 байт, если рассматривать 8-битные байты, хотя байтовая адресация была реализована не на всех моделях).
- Представлять целые числа в диапазоне от -2^35 до 2^35-1 (около ±34 миллиардов).
- Хранить два 18-битных адреса или четыре 9-битных символа в одном слове, что было удобно для работы с текстом.
¶Система команд
Система команд PDP-10 была относительно простой и ортогональной. Она включала:
- Арифметические операции (сложение, вычитание, умножение, деление) над целыми числами и числами с плавающей запятой.
- Логические операции (И, ИЛИ, исключающее ИЛИ, сдвиги).
- Команды пересылки данных.
- Команды управления (условные и безусловные переходы, вызов подпрограмм).
- Команды ввода-вывода, которые выполнялись через специальные регистры и шину.
Особенностью архитектуры была поддержка стековой организации памяти и эффективная работа с массивами.
¶Регистры
PDP-10 имел 16 регистров общего назначения (R0–R15), каждый из которых был 36-битным. Регистр R0 часто использовался как аккумулятор, а R15 — как указатель стека. Кроме того, имелись регистры состояния (Program Status Word, PSW) и регистры управления памятью.
¶Память и адресация
Память PDP-10 была организована как массив 36-битных слов. Адресация была 18-битной, что позволяло адресовать до 262 144 слов. Для расширения памяти использовалась страничная организация (paging), которая позволяла отображать виртуальные адреса на физические. В моделях KL10 и KS10 была реализована виртуальная память, что позволяло запускать программы, размер которых превышал объём физической памяти.
¶Операционные системы
¶TOPS-10
Основной операционной системой для PDP-10 была TOPS-10 (Timesharing Operating System for PDP-10), разработанная DEC. Она была одной из первых многопользовательских ОС с разделением времени. TOPS-10 предоставляла:
- Многозадачность и многопользовательский режим.
- Файловую систему с иерархической структурой (каталоги).
- Мощные средства командной строки (командный интерпретатор DCL — Digital Command Language).
- Поддержку удалённого доступа через терминалы.
- Систему управления памятью (виртуальная память).
- Развитые средства отладки и профилирования.
TOPS-10 была очень популярна в академической среде и исследовательских центрах, таких как Массачусетский технологический институт (MIT) и Стэнфордский университет.
¶ITS (Incompatible Timesharing System)
В MIT была разработана альтернативная операционная система ITS (Incompatible Timesharing System), которая использовалась на PDP-10 в лаборатории искусственного интеллекта (AI Lab). ITS отличалась от TOPS-10 более гибкой архитектурой, поддержкой множества пользователей и развитыми средствами для разработки программного обеспечения. Она стала платформой для многих инноваций, включая первые реализации языка Lisp и системы Emacs.
¶TENEX
В 1972 году в Bolt, Beranek and Newman (BBN) была разработана операционная система TENEX (Tenex Executive), которая позже была адаптирована DEC как TOPS-20. TENEX/TOPS-20 была известна своим удобным интерфейсом командной строки, поддержкой виртуальной памяти и развитыми средствами работы с сетью. Она стала основой для многих систем ARPANET.
¶Применение и значение
¶Научные и исследовательские центры
PDP-10 широко использовались в университетах, исследовательских лабораториях и государственных учреждениях. Они были основой для:
- Разработки операционных систем (TOPS-10, ITS, TENEX).
- Создания языков программирования (Lisp, Maclisp, Interlisp, Pascal, C).
- Развития компьютерных сетей (ARPANET).
- Вычислительных задач в физике, химии, биологии и других науках.
¶ARPANET и Интернет
PDP-10 сыграли ключевую роль в создании сети ARPANET. Многие узлы ARPANET были построены на PDP-10, работающих под управлением TOPS-10 или TENEX. Именно на PDP-10 были реализованы первые протоколы TCP/IP, а также такие приложения, как электронная почта, файловый обмен (FTP) и удалённый доступ (Telnet). В 1971 году на PDP-10 была отправлена первая электронная почта по сети ARPANET.
¶Развитие программного обеспечения
На PDP-10 были созданы многие важные программные продукты:
- Emacs — один из первых и наиболее влиятельных текстовых редакторов, разработанный Ричардом Столлманом в MIT AI Lab на базе ITS.
- Maclisp — диалект языка Lisp, ставший основой для многих систем искусственного интеллекта.
- Interlisp — ещё один диалект Lisp, разработанный в BBN.
- Pascal — компилятор языка Pascal, разработанный Никлаусом Виртом и его командой.
- C — язык программирования C, разработанный Деннисом Ритчи и Кеном Томпсоном, хотя его первоначальная реализация была на PDP-11, но на PDP-10 были созданы первые компиляторы C для Unix.
¶Игры и развлечения
На PDP-10 были созданы одни из первых компьютерных игр, включая:
- Spacewar! — одна из первых видеоигр, портированная на PDP-10.
- Adventure (Colossal Cave Adventure) — текстовая приключенческая игра, разработанная Уильямом Кроутером и Доном Вудсом на PDP-10.
- Zork — текстовая игра, созданная в MIT AI Lab на PDP-10 под управлением ITS.
¶Интересные факты
- Название «PDP» расшифровывалось как «Programmed Data Processor», что было маркетинговым ходом: DEC избегала слова «компьютер», чтобы не конкурировать напрямую с IBM, которая доминировала на рынке мейнфреймов.
- Эмуляция: В настоящее время существуют эмуляторы PDP-10, такие как SIMH, которые позволяют запускать TOPS-10, ITS и другое программное обеспечение на современных компьютерах.
- Культурное влияние: PDP-10 и его операционные системы стали культовыми в сообществе хакеров (в первоначальном, положительном смысле этого слова) и оказали огромное влияние на философию открытого программного обеспечения и движения за свободное ПО.
- Последняя система: Одна из последних работающих систем PDP-10, известная как «PDP-10 at the Computer History Museum», была выключена в 2000 году.
¶Критика
Несмотря на свои достоинства, PDP-10 подвергалась критике за:
- Высокую стоимость: Системы PDP-10 были дорогими, что ограничивало их распространение.
- Сложность обслуживания: Требовались квалифицированные инженеры для настройки и ремонта.
- Устаревшую архитектуру: К концу 1970-х годов 36-битная архитектура стала неэффективной по сравнению с 32-битными системами, которые предлагали лучшую производительность на единицу стоимости.
- Отсутствие совместимости: Разные модели PDP-10 не всегда были полностью совместимы друг с другом, что создавало проблемы при переносе программного обеспечения.
¶Источники
- Bell, C. Gordon; Mudge, J. Craig; McNamara, John E. (1978). Computer Engineering: A DEC View of Hardware Systems Design. Digital Press.
- Levy, Steven (1984). Hackers: Heroes of the Computer Revolution. Doubleday.
- Ritchie, Dennis M. (1984). The Evolution of the Unix Time-sharing System. AT&T Bell Laboratories Technical Journal.
- Salus, Peter H. (1994). A Quarter Century of UNIX. Addison-Wesley.
- Документация DEC: PDP-10 System Reference Manual, TOPS-10 User's Guide.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →


