Как запустить Unix, 1-е издание (выпущено в 1972 г.)
Сегодня мы собираемся запустить первую редакцию Unix, выпущенную в 1972 году. Да! вы правильно прочитали. Мы собираемся попробовать Unix в том виде, в каком он был в 1972 году. Вам не нужно покупать старое оборудование для его работы или собирать его из исходных кодов. Специалист по Unix по имени Брайан Беннетт создал образ Docker, основанный на исходном репозитории Unix 1st Edition, выпущенном в июне 1972 года. Итак, мы можем легко запустить старую добрую первую редакцию Unix, какой она была в 1972 году, за несколько минут.
В этом кратком руководстве я покажу вам, как запустить Unix 1-й редакции с помощью Docker в любой Unix-подобной операционной системе.
Запустите Unix 1-е издание (1972 г.) с помощью Docker
Сначала вам необходимо установить Docker в вашей системе. Обратитесь к следующим руководствам по установке Docker в системах на базе RPM и DEB.
- Установить Docker в CentOS
- Установить Docker в Ubuntu
После установки Docker выполните следующую команду, чтобы загрузить и запустить образ Docker.
docker run --rm -it bahamat/unix-1st-ed
Приведенная выше команда извлечет образ Docker, который будет запускать UNIX 1-й редакции на симуляторе PDP-11. Для тех, кому интересно: PDP-11 представлял собой 16-битный миникомпьютер, продававшийся компанией Digital Equipment Corporation (DEC) с 1970-х по 1990-е годы. Вот изображение мини-компьютера PDP-11.
Источник изображения: Википедия
На изображении выше Деннис Ритчи и Кен Томпсон (сидят) работают вместе за мини-компьютером PDP-11. Несмотря на то, что его называли мини-компьютером, фактический вес этого компьютера составлял около 45 кг.
Через несколько минут вы перейдете к приглашению :login:. В приглашении для входа введите "root" без кавычек и нажмите Enter.
Unable to find image 'bahamat/unix-1st-ed:latest' locally
latest: Pulling from bahamat/unix-1st-ed
bbe1c4256df3: Pull complete
911d09728ffd: Pull complete
615765bc0d9f: Pull complete
a3ed95caeb02: Pull complete
c3fdfa5622d0: Pull complete
Digest: sha256:ea44c2f898c3a35cb31fec9f6ebe3caf15ca51ae156b38ec6d68cbd703d40d0e
Status: Downloaded newer image for bahamat/unix-1st-ed:latest
PDP-11 simulator V3.9-0
./simh.cfg> #!tools/pdp11
Unknown command
Disabling CR
Disabling XQ
RF: buffering file in memory
TC: creating new file
TC0: 16b format, buffering file in memory
Listening on port 5555 (socket 7)
:login: root
root
#
Сделанный! Сейчас мы находимся в операционной системе Unix 1972 года. Круто, да? Теперь вы можете изучить некоторые старые команды Unix. Обратите внимание, что BASH был изобретен только в 1989 году, поэтому в нем нет BASH или каких-либо других современных оболочек. Таким образом, некоторые функции BASH не будут работать в первой редакции Unix. Например, автозаполнение команды нажатием клавиши TAB не будет работать. Вы также не можете использовать клавишу Backspace для удаления неправильно набранных команд или клавиши со стрелками для просмотра предыдущих команд.
Однако некоторые команды, которые мы используем сегодня, будут работать. Например, мы можем использовать ls, date, find, chmod, du, echo, mail, rm, rmdir и другие. Чтобы узнать список доступных команд на тот момент, введите:
ls bin
Введите ls -l, чтобы просмотреть список доступных каталогов в этой редакции.
Чтобы перейти в каталог, используйте команду chdir.
chdir /bin
Кроме того, обратитесь к руководству Unix, 1-е издание, по ссылке в конце этого руководства, чтобы узнать больше о командах Unix.
Чтобы остановить симуляцию, введите CTRL+E. Затем введите "q", чтобы вернуться обратно на терминал операционной системы хоста.
Simulation stopped, PC: 007332 (MOV (SP)+,25244)
sim> q
Goodbye
RF: writing buffer to file
И это все на данный момент. Надеюсь, это было полезно. Впереди еще больше хороших вещей. Следите за обновлениями!
Ваше здоровье!
Ресурсы:
- Репозиторий GitHub docker-unix-1st-ed
- Руководство по Unix, 1-е издание
- Запустите первую редакцию Unix (1972 г.) с помощью Docker
- ПРП-11