Добро пожаловать в репозиторий UNIX 1-го издания. Здесь вы найдете исходный код ядра и двоичные файлы пользовательского пространства, которые позволят вам запустить 1e UNIX на симуляторе PDP-11.
Если не указано иное, имена файлов и каталогов относятся к этому репозиторию.
Загрузите исходный код симулятора Simh здесь: http://simh.trailing-edge.com/. Убедитесь, что вы загружаете версию 3.8-0 или новее; более ранние версии нуждаются в исправлениях для работы.
Распакуйте Симху куда-нибудь. Создайте каталог BIN/ в Simh на верхнем уровне. Сделайте pdp11, чтобы создать симулятор pdp11 в каталоге BIN/. Скопируйте исполняемый файл BIN/pdp11 в каталог Tools/.
Вернитесь в каталог верхнего уровня 1-го издания. Сделайте мейк. Это позволит сделать несколько вещей. Он соберет инструменты/mkfs, инструменты/ml и инструменты/apout/apout. Эти инструменты необходимы для сборки файловых систем для 1e UNIX и ядра. Он создаст исходные коды ядра с некоторыми необходимыми патчами, соберет ядро и создаст загрузочный образ памяти Simh, который будет установлен в каталог images. Наконец, make создаст образы rf0.dsk, rk0.dsk и Tape и установит их в каталог images. Вы также можете выполнить команду make clean, чтобы очистить каталоги images/ и build/. «make clobber» очистит каталоги images/, build/ иtools/.
Запустите ./simh.cfg, который запустит симулятор pdp11. Вы должны увидеть это:
Симулятор PDP-11 V3.8-0 ./simh2.cfg> #!tools/pdp11 Неизвестная команда Отключение CR Отключение XQ RF: буферизация файла в памяти TC0: формат 16b, буферизация файла в памяти Прослушивание порта 5555 (сокет 7)
Вы получите логин: подсказка:
Введите root, а затем . Вы должны получить приглашение #.
Введите команду ls -l. Вы должны увидеть что-то вроде этого:
всего 6 43 sdrwr- 2 root 620 1 января 00:00:00 bin 42 sdrwr- 2 root 250 1 января 00:00:00 dev 104 sdrwr- 2 root 110 1 января 00:00:00 и т. д. 114 sdrwr- 2 root 50 1 января 00:00:00 tmp 41 sdrwr- 7 root 70 1 января 00:00:00 usr
Для смены каталогов используйте chdir, например, chdir /usr. Единственный установленный редактор — «ed». Вы можете найти учебное пособие по edtut.txt.
Чтобы войти в систему несколько раз, подключите Telnet к порту локального хоста 5555. Система настроена на разрешение 8 удаленных входов в систему.
Чтобы выключить систему, введите Ctrl-E, чтобы остановить симулятор, и q, чтобы выйти. Вам не нужно синхронизировать систему перед выключением.
Руководства для UNIX 1-го издания доступны здесь: https://www.bell-labs.com/usr/dmr/www/1stEdman.html и http://www.bitsavers.org/pdf/bellLabs/unix/UNIX_ProgrammersManual_Nov71. .pdf
Некоторая документация по внутреннему устройству UNIX 1-го издания доступна здесь: http://www.bitsavers.org/pdf/bellLabs/unix/PreliminaryUnixImplementationDocument_Jun72.pdf.
Подробную информацию об архитектуре PDP-11/20 и ее периферийных устройствах можно найти по адресу: http://www.bitsavers.org/pdf/dec/pdp11/handbooks/PDP1120_Handbook_1972.pdf http://www.bitsavers.org/pdf/ dec/pdp11/handbooks/PDP11_PeripheralsHbk_1972.pdf
Компилятор C из 2-го издания UNIX также установлен и работает, но этот язык представляет собой очень ранний диалект C. Ближайшая ссылка на язык на данный момент такая, но, вероятно, уже на 2 года позже: https:/ /www.bell-labs.com/usr/dmr/www/cman74.pdf
Бинарные файлы пользовательского пространства относятся к периоду где-то между 1-м и 2-м изданием UNIX. Вы также можете найти полезные руководства по 2e: http://www.bitsavers.org/pdf/bellLabs/unix/Unix_2nd_Edition_Manual_Jun72.pdf
Pages/ — страницы, обработанные OCR, из документа PreliminaryUnixImplementation, перестроенные/ — исходный код ядра, перестроенный из страниц, обработанных OCR, в виде asm-файлов. patches/ — исправления для перестроенных файлов, чтобы заставить ядро запускать fs/ — двоичные файлы и файлы пользовательского пространства, используемые для make rf0.dsk и rk0.dsk src/ - исходный код для пользовательского пространства: доступных инструментов не так много/ - инструменты и скрипты для сборки ядра и сборки файловой системы/ - область сборки: исправленные файлы ядра, исправленные образы файловых систем/ - окончательные образы дисков и лент, которые будут использоваться симулятором Simh, разное/ - разное. файлы, например, патч Simh для поддержки KE11A. примечания/ - примечания о работе, проделанной для повторного запуска 1e UNIX. diffs/ - Различия между страницами/* и высококачественным распознаванием текста, выполненным Джеймсом Маркевичем. Включает верхние и нижние колонтитулы.