TENEX (операционная система) - TENEX (operating system)
Разработчик | BBN |
---|---|
Рабочее состояние | Исторический |
изначальный выпуск | 1969 |
Платформы | PDP-10 |
Дефолт пользовательский интерфейс | Интерфейс командной строки |
Лицензия | Проприетарный |
Техас был Операционная система разработан в 1969 г. BBN для PDP-10, которые впоследствии легли в основу Корпорация цифрового оборудования с ТОП-20 Операционная система.
Фон
В 1960-е гг. BBN участвовал в ряде LISP -основан искусственный интеллект проекты для DARPA, многие из которых имели очень большие (для той эпохи) потребности в памяти. Одним из решений этой проблемы было добавление пейджинг программное обеспечение для LISP язык, позволяющий записывать неиспользуемые части памяти на диск для последующего вызова при необходимости. Одна такая система была разработана для PDP-1 в Массачусетский технологический институт к Дэниел Мерфи до того, как он присоединился к BBN. Рано DEC машины были основаны на 18-битный слово, позволяющее кодировать адреса для памяти объемом 256 килобайт. Машины базировались на дорогих основная память и не входит ни в какую сумму. Пейджер использовал старшие биты адреса для индексации таблицы блоков на магнитный барабан это действовало как пейджер вспомогательный магазин. Программа при необходимости извлекает страницы, а затем разрешает адрес в нужную область баран.
В 1964 году DEC объявил PDP-6. DEC по-прежнему активно участвовала в работе лаборатории искусственного интеллекта Массачусетского технологического института, и многие запросы функций от хакеров LISP были перенесены на эту машину. 36-битные вычисления были особенно полезны для программирования LISP, потому что с 18-битным адресным пространством одно слово в этих системах содержало два адреса, что идеально соответствовало распространенному LISP. CAR и CDR операции. BBN заинтересовались покупкой одного из них для работы с ИИ, когда они стали доступны, но хотели, чтобы DEC добавила аппаратную версию пейджера Мерфи прямо в систему. С таким дополнением каждая программа в системе будет иметь невидимую поддержку пейджинга, что значительно упростит выполнение любого вида программирования на машине. Первоначально компания DEC была заинтересована, но вскоре (1966) объявила, что фактически отказывается от PDP-6 и концентрируется исключительно на своих меньших 18-битных и новых 16-битных линиях. PDP-6 был дорогим и сложным, и по этим причинам не продавался хорошо.
Вскоре стало ясно, что DEC снова входит в 36-битный бизнес с тем, что станет PDP-10. BBN начала переговоры с DEC, чтобы получить подсистему пейджинга на новой машине, которая тогда называлась ЦП KA-10. DEC не сильно заинтересовался. Однако одним из этапов этих переговоров была поддержка второго сегмента виртуальной памяти, что позволило отображать половину адресного пространства пользователя в отдельную (потенциально доступную только для чтения) область физической памяти. Кроме того, DEC твердо придерживалась минимально возможной стоимости машины, например, поддерживая простые системы с ядром не менее 16К слов и исключая быстрые полупроводники. регистр вариант (замена ядра) ценой значительного снижения производительности.
BBN и PDP-10
Тем не менее BBN продолжила закупку нескольких PDP-10 и решила создать собственный аппаратный пейджер. В этот период начались дебаты о том, какую операционную систему использовать на новых машинах. Были приведены веские аргументы в пользу продолжения использования TOPS-10, чтобы их существующее программное обеспечение работало с минимальными усилиями. Это потребовало бы перезаписи TOPS для поддержки системы подкачки, и это казалось серьезной проблемой. В то же время TOPS не поддерживал ряд функций, которые хотели разработчики. В конце концов они решили создать новую систему, но с библиотекой эмуляции, которая позволила бы запускать существующее программное обеспечение TOPS-10 с минимальными усилиями.
Команда разработчиков - среди них Дэниел Мерфи и Дэниел Г. Боброу - выберите название TENEX (TEN-EXtended) для новой системы. Он включал полный виртуальная память система - то есть программы могли не только получить доступ к полному 18-битному адресному пространству из 262144 слов виртуальной памяти, каждый программа могла сделать это одновременно. Система пейджера будет обрабатывать отображение, как и всегда, копируя данные в резервное хранилище и из него по мере необходимости. Единственное изменение, которое потребовалось, заключалось в том, чтобы пейджер мог хранить несколько наборов сопоставлений между ОЗУ и хранилищем, по одному для каждой программы, использующей систему. Пейджер также содержал информацию о времени доступа для настройки производительности. Получившийся пейджер оказался довольно сложным и занимал полную высоту 19-дюймового стоечного шасси.
Одной из примечательных особенностей TENEX была его ориентированность на пользователя. интерпретатор командной строки. В отличие от типичных систем того времени, TENEX намеренно использовал длинные имена команд и даже включал незначительные шумные слова для дальнейшего расширения команд для ясности. Например, Unix использует ls
для печати списка файлов в каталоге, тогда как TENEX использовал КАТАЛОГ (ФАЙЛОВ)
. "СПРАВОЧНИК
"было командным словом"(ИЗ ФАЙЛОВ)
"был добавлен шум, чтобы прояснить цель команды. Чтобы избавить пользователей от необходимости вводить эти длинные команды, TENEX использовал завершение команды система, которая понимала однозначно сокращенные командные слова и преобразовывала частичные командные слова в полные слова или фразы. Например, пользователь мог ввести DIR
и клавишу выхода, после чего TENEX заменит DIR
с полной командой. Функция завершения также работала с именами файлов, что потребовало некоторых усилий со стороны интерпретатора, а система позволяла использовать длинные имена файлов с понятными для человека описаниями. «Техснабэкспорт» также включает распознавание команд справочная система: ввод вопросительного знака (?
), распечатал список возможных совпадающих команд, а затем вернул пользователя в командную строку с удаленным знаком вопроса. Завершение командной строки и помощь продолжают существовать в текущих интерфейсах командной строки, таких как tcsh.
От Техэкс к ТОПС-20
Техснабэкспорт стал довольно популярным на рынке небольших PDP-10, а оборудование внешнего пейджера превратилось в отдельный небольшой бизнес. В начале 1970 года DEC начала работы по модернизации процессора PDP-10, KI-10. BBN в очередной раз попыталась заставить DEC поддерживать сложный пейджер с косвенными таблицами страниц, но вместо этого DEC решила использовать гораздо более простую одноуровневую систему отображения страниц. Этот компромисс повлиял на продажи системы; к этому моменту TENEX был самой популярной операционной системой для PDP-10, написанной заказчиком, но она не могла работать на новых, более быстрых KI-10.
Чтобы решить эту проблему, менеджер по продажам DEC PDP-10 приобрел права на TENEX у BBN и настроил проект по его переносу на новую машину. Примерно в это же время Мерфи тоже перешел из BBN в DEC, помогая в проекте портирования. Большая часть работы была сосредоточена на эмуляции оборудования пейджера BBN в сочетании программного обеспечения и более простого оборудования KI-10. Скорость КИ-10 по сравнению с PDP-6 сделала это возможным. Кроме того, для переноса потребовалось несколько новых драйверы устройств для поддержки новых используемых устройств резервного хранилища.
Как раз перед отправкой нового TENEX, DEC начала работу над KL-10, который должен был стать недорогой версией KI-10. Пока это происходило, Стэндфордский Университет Программисты ИИ, многие из них Выпускники MIT, работали над собственным проектом по созданию PDP-10, который был в десять раз быстрее, чем оригинальный KA-10. Проект превратился в Foonly линейка компьютеров. DEC посетила их, и многие из их идей были воплощены в проекте KL-10. В том же году IBM также анонсировала собственную машину с виртуальной памятью, сделав ее стандартным требованием для любого компьютера. В конце концов, KL внесла в систему ряд серьезных изменений, но не стала дешевле. С самого начала новый ДЕКСИСТЕМА-20 будет использовать версию TENEX в качестве операционной системы по умолчанию.
Функциональные обновления для архитектуры процессора KL-10 были ограничены. Самая важная новая функция (называемая расширенная адресация) был изменен микрокод пейджера, работающий на Модель B аппаратная версия для увеличения виртуального адресного пространства пользователя. Некоторые эффективные вычисления адреса с помощью инструкций, расположенных за пределами исходного 18-битного адресного пространства, выполнялись для 30 значащих битов, хотя поддерживалось только 23-битное виртуальное адресное пространство. Программный код, расположенный в исходном 18-битном адресном пространстве, имел неизменную семантику, для Обратная совместимость.
Первым внутренним кодовым названием операционной системы было VIROS (операционная система виртуальной памяти); когда клиенты начали задавать вопросы, название было изменено на SNARK, чтобы DEC могла честно отрицать существование какого-либо проекта под названием VIROS. Когда стало известно имя СНАРК, оно на короткое время изменилось на КРАНС; от этого быстро отказались, когда кто-то возразил "краны "означало" похоронный венок "в Шведский (хотя это просто означает «венок»; эта часть истории может быть апокрифической).
В конечном итоге DEC выбрала TOPS-20 в качестве названия операционной системы, и именно как TOPS-20 она продавалась. В хакерское сообщество помня о своем происхождении, быстро окрестили его TWENEX ( чемодан «двадцати Технекс»), хотя к этому моменту от исходного кода Техэкс осталось очень мало (аналогично различиям между AT&T V7 Unix и BSD ). Сотрудники DEC съежились, услышав «TWENEX», но этот термин, тем не менее, прижился (также использовалось письменное сокращение «20x»).[1]
TWENEX был успешным и очень популярным; на самом деле, был период в начале 1980-х годов, когда в нем царила столь же пылкая культура партизан, как и Unix или ЕГО - но решение DEC сдать всех внутренних конкурентов в VAX архитектура и ее VMS ОС убила DEC-20 и положила конец короткому периоду популярности TWENEX. DEC пыталась убедить пользователей TOPS-20 перейти на VMS, но вместо этого к концу 1980-х большинство пользователей TOPS-20 перешли на Unix. Верная группа энтузиастов TOPS-20 продолжала работать над различными проектами по сохранению и расширению TOPS-20, в частности Марк Криспин и раздача Panda TOPS-20.
Смотрите также
Рекомендации
- Часть текста в этой статье была взята из статьи "Жаргонный файл" на "TWENEX ", который находится в всеобщее достояние.
дальнейшее чтение
- Дэниел Г. Боброу, Джерри Д. Бурчфил, Дэниел Л. Мерфи, Раймонд С. Томлинсон, "TENEX, страничная система разделения времени для PDP-10 ", Коммуникации ACM, Vol. 15, страницы 135–143, март 1972 г.