8 июня, 2023

bolgrad

Находите самые свежие мировые новости со всего мира в Болграде.

Краткий обзор PDP-11, самого влиятельного микрокомпьютера всех времен

saccade.com

Можно сказать, что историю вычислительной техники можно разделить на три эпохи: история мэйнфреймов, микрокомпьютеров и микрокомпьютеров. Микрокомпьютеры стали важным связующим звеном между первыми универсальными компьютерами и вездесущими сегодня микрокомпьютерами. Это история PDP-11, самого влиятельного и успешного микрокомпьютера всех времен.

В настоящее время микрокомпьютеры используются в различных приложениях. Они служили контроллерами связи, контроллерами приборов, большими системными процессорами, настольными калькуляторами и процессорами сбора данных в реальном времени. Но они также заложили основу для крупных достижений в разработке аппаратного обеспечения и внесли значительный вклад в современные операционные системы, языки программирования и интерактивные вычисления, какими мы их знаем сегодня.

В современном вычислительном мире, где каждый компьютер работает под управлением той или иной версии Windows, Mac или Linux, трудно сказать, какие процессоры находятся под управлением операционной системы. Но было время, когда различия в архитектуре ЦП были серьезной проблемой. PDP-11 помогает объяснить, почему это так.

PDP-11 был представлен в 1970 году, когда большая часть вычислений выполнялась на дорогих компьютерах GE, CDC и IBM, к которым мало кто имел доступ. Не было ни ноутбуков, ни настольных компьютеров, ни персональных компьютеров. Программирование выполнялось несколькими компаниями, в основном на ассемблере, COBOL и Фортран. Запись производилась на перфокартах, а программы запускались неинтерактивными группами.

Хотя первый PDP-11 был скромным, он заложил основу для завоевания микрокомпьютеров, которые сделали компьютеры нового поколения более доступными, что по сути произвело революцию в вычислительной технике. PDP-11 помог родить Операционная система ЮНИКС И язык программирования С. Это также сильно повлияет на следующее поколение компьютерных архитектур. За 22-летний срок службы PDP-11 — неслыханный по сегодняшним меркам период — было продано более 600 000 PDP-11.

READ  Для Apple WWDC 2022 посвящен дополненной реальности

Ранние прототипы PDP-11 не слишком впечатляли. Первый PDP-11 11/20 стоит 20 000 долларов, но поставляется только с 4 КБ ОЗУ. Я использовал бумажную ленту для хранения и имел контроллер принтера телетайпа ASR-33, который печатал 10 символов в секунду. Но у него также была впечатляющая 16-битная ортогональная архитектура, восемь регистров, 65 КБ адресного пространства, время цикла 1,25 МГц и гибкая аппаратная шина UNIBUS, которая будет поддерживать будущие периферийные устройства. Это было удачным сочетанием для его создателя, Digital Equipment Corporation.

Первоначальная реализация PDP-11 включала контроль приборов в реальном времени, автоматизацию производства и обработку данных. Поскольку PDP-11 завоевал репутацию гибкости, программируемости и доступности, он нашел свое применение в системах управления светофорами, системе противоракетной обороны Nike, управлении воздушным движением, атомных электростанциях, а также в системах обучения и связи морских пилотов. Он также стал пионером в обработке текстов и данных, которые мы сейчас воспринимаем как должное.

Эффект PDP-11 ярко проявляется в программировании сборки устройства.

Основы программирования на ассемблере

До изобретения языков высокого уровня, таких как Python, Java и Fortran, программирование выполнялось на языке ассемблера. Программирование на языке ассемблера можно выполнять с очень небольшим объемом оперативной памяти и дискового пространства, что идеально подходит для среды на заре вычислительной техники.

Язык ассемблера — это промежуточный формат низкого уровня, который преобразуется в машинный язык, который затем может запускаться непосредственно на компьютере. Это сдержанно, потому что вы напрямую манипулируете аспектами компьютерной архитектуры. Проще говоря, программирование на ассемблере перемещает ваши данные байт за байтом через аппаратные регистры и регистры памяти. Что отличало программирование PDP-11, так это элегантный дизайн микрокомпьютера. У каждой инструкции есть свое место, и каждая инструкция имеет смысл.

READ  Приготовьтесь к пополнению запасов PS5 сегодня в Walmart здесь

16-битное адресное пространство означает, что каждый регистр может обрабатывать до 64 КБ ОЗУ, причем самые высокие 4 КБ зарезервированы для ввода и вывода с отображением памяти. PDP-11 могут обрабатывать в общей сложности 128 КБ ОЗУ с использованием сегментов реестра (подробнее об этом чуть позже). Таким образом, даже несмотря на то, что системы PDP-11 поставлялись только с 4 КБ ОЗУ, они все еще были производительными благодаря умному использованию ранних методов программирования.

программа на ассемблере

Легче всего понять эту концепцию на примере простой программы на языке ассемблера PDP-11, которую мы обсудим ниже. Ключевые слова, начинающиеся с «.» Это направления к собранию. .globl Экспортируйте метку в виде значка в ссылку для использования операционной системой. .text Задает начало сегмента кода. .data Задает начало отдельного сегмента данных. Ключевые слова, оканчивающиеся на «:», являются таксономиями. Программирование на ассемблере использует метки для символического управления памятью. (Примечание: с терминологией PDP-11 и кодировкой текст после/комментариев отсутствует.)

Ключевые слова Перевод
.globl_main Экспортируйте метку _main в качестве точки входа для использования операционной системой.
.текст Начало блока инструкций, в котором находится код только для чтения
_main: ДВИГАТЕЛЬ ЗНАЧ1, R0 Скопируйте значение слова в ячейку памяти VAL1 в регистре 0.
Добавьте 10 долл. США, 0 руб. Добавьте 10 к значению в регистре 0
ДВИГАТЕЛЬ R0, ЗНАЧ1 Скопируйте значение из регистра 0 в ячейку памяти VAL1.
_.данные Начало сегмента данных, где данные считываются/записываются
VAL1: .слово $100 Оставьте 2 байта памяти для хранения Val1, настроенного на 100

Хотя для адресов памяти можно использовать числовые значения, использование меток вместо закодированных адресов облегчает программирование и позволяет перемещать код в памяти. Это дает операционной системе гибкость при выполнении кода, гарантируя, что каждая программа будет быстрой и эффективной.

READ  macOS Monterey появится на вашем Mac рядом с вами 25 октября

Директива сборщика данных помещает данные в сегмент памяти, доступный для чтения и записи. Часть памяти кода доступна только для чтения, чтобы ошибки программирования не могли повредить программу и вызвать сбои. Такое разделение инструкций и данных на PDP-11 называется «разделением инструкций и данных». Помимо повышения стабильности, эта функция также удваивает адресное пространство, позволяя использовать 64 КБ для кода и 64 КБ для данных — в то время это считалось серьезным нововведением. Соответственно, микрокомпьютеры X86 от Intel широко использовали секторы.