ДЕКСИСТЕМА-20 В КОЛУМБИЙСКОМ УНИВЕРСИТЕТЕ (1977–1988 гг.)

Original article: http://www.columbia.edu/cu/computinghistory/dec20.html

 

Фрэнк да Круз и Кристин Джаноне

Проект Кермита

Колумбийский университет, Нью-Йорк, 29 декабря 1988 г.; Copyright © 1988, 2021,

Франк да Круз и Кристин М. Джаноне.

Все права защищены.

Посмотрите недавно обнаруженное видео вывода из эксплуатации одного из самолетов DEC-20 Колумбийского университета в 1986 году:

Видео Галерея скриншотов

Нетехническое воспоминание, написанное в 1988 году (по случаю отключения последней системы DECSYSTEM-20 Колумбийского университета) для книги Digital Press, которая должна была увековечить 36-битные машины DEC серией статей, но так и не была опубликована. Незначительные изменения, примечания, глоссарий, ссылки и форматирование HTML добавлены в январе 2001 г. (плюс небольшие обновления время от времени в дальнейшем). Чтобы узнать больше об истории вычислений в Колумбийском университете, НАЖМИТЕ ЗДЕСЬ .

ПРИМЕЧАНИЕ. Эта статья была « вычеркнута» 18 января 2001 г., и ее прочитали многие люди, понятия не имеющие, о чем она. Пожалуйста, имейте в виду, что это не претендует на введение или объяснение влиятельных 36-битных компьютеров Digital Equipment Corporation (DEC) 1964-1988 годов; скорее, это должно было быть одно эссе в книге, в которой другие эссе объясняли бы архитектуру и историю технологии. Вы можете найти некоторые тематические веб-сайты в разделе ССЫЛКИ в конце.

Для тех, кому концепция 36-битного компьютера кажется странной: самым первым коммерческим двоичным (в отличие от десятичного) компьютером был IBM 701 , который впервые появился в сети в 1952 году. В нем было 36-битное слово. За ним последовал 704 (где в 1953-57 годах был разработан первый язык высокого уровня, Фортран, и чей 6-битный набор символов BCD и 36-битное слово объясняют ограничение в 6 символов на имена переменных Фортрана), 709 , 7090 и 7094 , все 36 бит. 36-битные машины IBM были родиной LISP (*) и ( возможно ) разделения времени (совместимой системы разделения времени MIT, CTSS, около 1962 г.), а также послужили источником вдохновения для36-битный PDP-6 от DEC (1964), который был предшественником PDP-10 и DECSYSTEM-20 , которые просуществовали до 1988 года, года, когда DEC прекратила производство 36-битных машин. Таким образом, 36-битные архитектуры были заметной (и во многих отношениях доминирующей) чертой компьютерного мира с 1952 по 1988 год: 36 лет.

* Язык обработки списков, Джон Маккарти, Стэнфордский университет, 1960 г., до сих пор является основным языком исследований в области искусственного интеллекта. CAR и CDR LISP — это концепции IBM 704: содержимое адресной части регистра и содержимое декрементной части регистра — т. е. левая и правая половины 36-битного слова. 36-битные машины с 18-битными левым и правым полусловами являются идеальными LISP-машинами.

СОДЕРЖАНИЕ

  • ВВЕДЕНИЕ
  • ЯЗЫКИ ПРОГРАММИРОВАНИЯ
  • Борьба с ростом
  • СЕТЬ
  • КЕРМИТ
  • ПРОГРАММНЫЕ ПАКЕТЫ
  • ДРУГИЕ ЗАМЕЧАТЕЛЬНЫЕ ВКЛАДЫ
  • ПЕРЕХОД В UNIX
  • ОСНОВНЫЕ ПРОБЛЕМЫ КОНВЕРСИИ
  • ЗАКЛЮЧИТЕЛЬНЫЕ СЛОВА…
  • ЭПИЛОГ
  • ГЛОССАРИЙ
  • БЛАГОДАРНОСТИ
  • ПРИМЕЧАНИЯ
  • БИБЛИОГРАФИЯ
  • ССЫЛКИ

ВВЕДЕНИЕ

До середины 1970-х годов Колумбийский университет прочно укоренился в пакетном режиме вычислений для мэйнфреймов IBM OS/360. Область « Самообслуживание ввода/вывода » была названа с гордостью, потому что это был огромный шаг вперед по сравнению с теми днями, когда студенты и исследователи смиренно предъявляли свои колоды карт операторам и на следующий рабочий день возвращались за результатами — обычно обнаруживая, что их SYSMSG был полон непонятных жалоб, мучительная расшифровка которых обычно приводила разочарованного пользователя к пропущенной запятой или лишнему пробелу в языке управления заданиями. Или, если JCL пройдет проверку, тогда останется керн толщиной 3 фута, с которым можно будет свернуться калачиком. Зона SSIO представляла собой комнату, наполненную отупляющей какофонией ударов по клавишам и визгом устрашающих принтеров IBM 1403.стаккато устройств для чтения карт , сортировщиков карт и переводчиков ; встревоженные толпы собрались вокруг принтеров, по пояс в выброшенных отпечатках…

IBM 360 Model 91 компании Columbia с интерфейсом 360/75 был одним из самых больших, быстрых, тяжелых и громких компьютеров в мире, когда он был установлен в конце 1960-х годов. Он занимал акры площади, и вы могли смотреть на магнитные сердечники через окна в ящиках памяти сердечников высотой 6 футов , стоящих рядами, которые исчезали в точке схода. Энергия обеспечивалась грохочущим чугунным двигателем-генератором размером с небольшой грузовик, а охлаждение осуществлялось охлажденной дистиллированной водой (доставленной из Дир-парка в больших стеклянных бутылках в деревянных ящиках), прокачиваемой через мили внутренних водопроводов. Панель управления процессоромбыло больше огней, чем на Таймс-сквер. Согласно легенде, среди тысяч переключателей и кнопок была одна, смертоносной миссией которой было «Выброс лампы» — верная смерть любому, кто ее нажмет. Панель управления сейчас [1988] покоится в Компьютерном музее в Бостоне, ее гипнотические лампочки навсегда погасли ( 1 ).

Этот массивный серо-синий Стоунхендж, чьи толстые щупальца доходили до территории SSIO, выполнял для наших инженеров громоздкие «коды» на Фортране: скручивание мостов; бомбардировка несчастных веществ нейтронами; вычисление Пи до миллионов цифр; преобразуя магнитное поле Земли в музыку… Для наших социологов оно из года в год предсказывало исход президентских выборов 1956 года с убийственной точностью. Администраторам он выдавал чеки о зарплате, стенограммы и бухгалтерские отчеты. И, в конце концов, небольшой его уголок был выделен нашим студентам-инженерам, которые применяли их кропотливо созданные циклы DO и GOTO к рядам Тейлора, правилу Симпсона, квадратурам Гаусса и преобразованиям Лапласа. Перед этими студентами стояла относительно простая задача: написать программу, поместите его в бутерброд из волшебных карт JCL, подайте бутерброд в устройство чтения карт и соберите полученный результат. Многие учителя вспоминали эти простые дни с меланхолической нежностью, хотя воспоминания учеников больше преследовались образами скользких пальцев, собирающих стопки упавших перфокарт.

Терминалы начали появляться в начале 1970-х годов, сначала лишь среди теневых системных программистов на Олимпе, которые могли общаться на загадочных языках с «мониторами терминалов», носившими такие имена, как Милтен, Клео, Орвил и Уилбур, а затем и APL. и TSO (первый — «Иртног» компьютерных языков, второй — форма JCL, набираемая на терминале). Взаимодействие с компьютером было привлекательным, но в то же время неудовлетворительным. Команды были неясны, а вычисления (кроме APL) все еще находились в пакете.

В 1975 году появилась наша первая настоящая система разделения времени — DEC PDP-11/50, работающая под управлением операционной системы RSTS/E. Это должен был быть малобюджетный эксперимент по созданию настоящих интерактивных вычислений. Построенный на языке BASIC, RSTS позволял до 32 пользователей одновременно сидеть за DECwriters программировать, отлаживать, общаться друг с другом и вообще плохо себя вести — и все это в реальном времени. RSTS оказался чрезвычайно популярен, и PDP-11 вскоре был захвачен нетерпеливыми студентами.

DEC была выбрана потому, что IBM в то время не предлагала каких-либо средств интерактивного разделения времени общего назначения. По сравнению с другими претендентами предложение DEC было лучше развито, более зрелым и… более увлекательным. И в качестве операционной системы была выбрана RSTS, а не, скажем, UNIX, потому что версия 6 UNIX была мощной доверительной системой, позволяющей любому делать что угодно. У нас была зародыш идеи, что система должна играть определенную роль в защите пользователей друг от друга и от самих себя. Хотя UNIX практически не предлагал возможностей в этой области, у RSTS были свои недостатки. Вскоре пользователи узнали, что они могут назначить все TTY, чтобы никто другой не мог их использовать. Еще лучше, назначив TTY, они могли бы запустить на нем программу, маскирующуюся под процесс входа в систему.

ДОБРО ПОЖАЛОВАТЬ T@\R\~~~~xxx }}}}}~~

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

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

Несмотря на свои проблемы, RSTS оказался довольно популярным и быстро стал перегруженным. Эксперимент был признан успешным, и мы начали искать что-то большее и несколько более сложное — Бейсик не был любимым языком среди ученых-компьютерщиков. Это было примерно тогда, когда DEC впервые анонсировала DECSYSTEM-20 (его логотип, весь в верхнем регистре, в отличие от его старшего кузена DECsystem -10)., было названо ошибкой нажатия клавиши Caps Lock в заявке на регистрацию товарного знака). Прежде чем даже взглянуть на систему, мы заставили маркетологов привлечь некоторую техническую помощь и безжалостно расспросили их о том, могут ли пользователи назначить все устройства, заполнить диск, исключить Control-C из процесса входа в систему, бомбардировать друг друга глупые сообщения, даже если файл был «очищен» при удалении. Когда все нас устроило, мы взглянули на систему.

Удивление и изумление: этот компьютер знает, что вы собираетесь напечатать, и печатает это за вас! Ну, почти. Но его привлекательность была очевидна с первого взгляда. Если вы не знаете, что печатать, введите вопросительный знак, и вам будут показаны возможные варианты. Внезапно «заполнить пробелы» стало больше похоже на «множественный выбор». Ну конечно он может вам рассказать! Он знает, какие есть варианты, так почему бы ему не сказать вам??? Вопрос, который можно было бы задать с пользой десять или пятнадцать лет назад (видения опытных системных программистов, копающихся в руководстве за руководством в поисках того, что ввести в следующем поле какой-то непонятной команды… обычное явление на некоторых машинах даже для этот день). И это «?» не была очень привилегированной функцией (как и владение ручным набором) — ее могли использовать даже ОБЫЧНЫЕ ПОЛЬЗОВАТЕЛИ. С удивлением мы обнаружили, что сообщения об ошибках выводятся в виде простого, понятного текста, а не 17-значных шестнадцатеричных чисел, так что их можно понять без книги «сообщений и кодов».

Мы сразу же были очарованы дружелюбием, непринужденным отношением и юмором. Мы только позже узнали, что COOKIE (который сохранился сегодня в UNIX как «состояние») не был стандартной частью системы, а затем появился TECO ( 2 ):

@заниматься любовью

не война?

DEC-20 была настоящей универсальной системой с разделением времени. Он не был построен вокруг определенного языка, так как RSTS был основан на BASIC. Он предлагал широкий спектр компиляторов, интерпретаторов, текстовых редакторов и утилит, отражающих многолетнюю разработку программного обеспечения ТОПС-10 и ТЕНЕКС. Он мог бы поглотить не только наших пользователей RSTS, но и многих наших пользователей мэйнфреймов IBM Fortran и APL, а его простота использования также привлекла бы многих начинающих пользователей.

Наш новый DEC-20 прибыл 29 июня 1977 года с TOPS-20 версии 1B. Монтаж был завершен к 26 июля. По сравнению с IBM 360/91 и даже с DEC PDP-11 он был разочаровывающе безликим — ни о каком освещении, ни переключателях для ввода данных, ни циферблатах, ни моторах, ни насосах… И все же DEC-20 был бесконечно более мощный, чем слабый PDP-11. Он был оснащен четырьмя современными дисководами RP06 ( 3 ), которые никогда не заполнялись, и невероятными 256 КБ оперативной памяти — слов, а не байтов! Такая машина будет отвечать нашим требованиям к учебным вычислениям на долгие годы вперед.

Всякий раз, когда компьютерное предприятие получает компьютер нового типа, программисты немедленно начинают бурную деятельность по превращению новой системы в свою любимую старую систему. На момент поставки единственным редактором DEC-20 (помимо неофициальной копии TECO) был загадочный, линейно-ориентированный редактор EDIT, произошедший от TOPS-10 SOS. Наши пользователи привыкли к Wylbur, гораздо менее загадочному редактору строк на нашем IBM 360/91, поэтому мы немедленно приступили к написанию версии Wylbur для DEC-20, чтобы наши пользователи IBM чувствовали себя как дома.

Мы начали изучать ассемблер DEC-20 и читать Справочное руководство по вызовам монитора. Вскоре мы обнаружили, что это действительно замечательная машина. Набор инструкций и репертуар вызовов монитора (JSYS) были поразительно богатыми. Среди вызовов монитора был специальный набор, непохожий ни на что, что мы когда-либо видели: в саму операционную систему были встроены стандартные функции для преобразования между внутренними и внешними представлениями всех различных типов данных, значимых для системы: чисел в разных системах счисления, символы, строки, имена файлов, имена каталогов, даты и время. Программисты прежних времен знали, что самой сложной и утомительной частью написания интерактивной программы было запрашивание, принятие и проверка данных, вводимых пользователем.

Лучше всего то, что эти функции преобразования были собраны в единый пакет под названием COMND JSYS, разработанный Дэном Мерфи , который позволял программистам использовать в своих программах тот же «пользовательский интерфейс», что и в TOPS-20 Exec: полный подсказка, редактирование, помощь по всем направлениям; сокращение и распознавание ключевых слов и переключателей; завершение имен файлов; прощение, когда пользователь делает опечатку и т.д.

Программы, написанные с помощью COMND JSYS, имели множество достоинств. Они были дружелюбны, полезны и последовательны. Все программы, написанные с использованием COMND, работали одинаково: введите «?» чтобы узнать, что это за команды или параметры, введите ESC, чтобы заполнить текущее поле (если возможно) и получить приглашение для следующего поля. Люди могли использовать знак «?» и функции ESC позволяют освоить новую программу, а позже можно вводить краткие сокращенные команды для повышения скорости. Этот подход, называемый «меню по требованию», не дает преимущества новичку перед экспертом (как это делают системы, ориентированные на меню), а также эксперту перед новичком (как это делают загадочные, краткие наборы команд APL или UNIX).

Наш новый редактор, похожий на Wylbur, под названием «Otto», был написан с учетом всех преимуществ COMND JSYS. Несмотря на все свои упрямые ограничения, Otto сразу же добился успеха, потому что он позволил пользователям мейнфреймов IBM безболезненно перейти в новую среду, одновременно обучая их методам DEC-20. Его скрытой целью было зацепить их, а затем настолько расстроить, чтобы они нашли время на изучение «настоящего» редактора.

[ Вверх ] [ Далее ]

ЯЗЫКИ ПРОГРАММИРОВАНИЯ

Шли месяцы, и мы установили контакты с другими 36-битными сайтами DEC, многие из них — Стэнфорд, CMU, MIT, Rutgers, BBN, SRI — с многолетним опытом работы в TOPS-10, TENEX, WAITS или ITS, и получили от них программы, которые должны были занять нас на долгие годы. Некоторые из них были фальстартом, но другие будут процветать в той или иной форме и в следующем столетии, наследие DEC-10 и -20. Из этого опыта мы узнали о преимуществах совместного использования и знали, что если мы когда-нибудь создадим что-то общеполезное, мы поделимся этим с другими в том же духе, в каком эти учреждения делились с нами своей работой.

Нашей главной целью при посещении этих сайтов было выяснить, что они делают с программированием. В замысле пользовательский и системный интерфейсы DEC-20 были настолько близки к совершенству, насколько кто-либо в то время (за исключением Xerox PARC) мог себе представить, но на практике концепция была реализована не полностью. Большинство языков программирования произошли непосредственно из TOPS-10 и не обеспечивали доступа к вызовам монитора TOPS-20 или его файловой системе. И все же мы были полны решимости, что в эпоху структурного программирования мы не будем писать код системного уровня на языке ассемблера. После недолгих заигрываний с Bliss-10, BCPL, Simula и даже ранним Portable C (который плохо подходил для 36-битной архитектуры) мы остановились на Sail Стэнфордского университета как на нашем «официальном языке». Но несколько лет преданности Парусу в конце концов привели к разочарованию. Было слишком много ошибок, слишком большая зависимость от системы выполнения и знания того, где она находится, слишком много преобразований, необходимых для новых выпусков Sail или TOPS-20, слишком много гротескных обходных путей для достижения того, что было бы естественным в ассемблере — единственный язык, который действительно понимал машину и операционную систему. И с этого дня все наше системное программирование выполнялось на ассемблере. Но несколько лет преданности Парусу в конце концов привели к разочарованию. Было слишком много ошибок, слишком большая зависимость от системы выполнения и знания того, где она находится, слишком много преобразований, необходимых для новых выпусков Sail или TOPS-20, слишком много гротескных обходных путей для достижения того, что было бы естественным в ассемблере — единственный язык, который действительно понимал машину и операционную систему. И с этого дня все наше системное программирование выполнялось на ассемблере.

Как и многие вещи, зависимость от ассемблера – это хорошо и плохо. Это было хорошо, потому что затрагивало творческие нервы — программисты были свободны, не ограничены бюрократическими требованиями и авторитарными ограничениями языков высокого уровня, и у них был полный доступ к набору команд машины и репертуару вызовов мониторинга, которые, в DEC- 20, было приятно смотреть. Программировать на ассемблере было просто весело, и наши программисты с радостью писали миллионы строк кода, но с мучительным ощущением, что в этом есть что-то грешное. Это произошло из-за плохой стороны: программы на языке ассемблера специфичны для базовой машины и операционной системы. Что происходит с этими программами, когда машина исчезает?

Тем не менее, MACRO был неотразим (MACRO используется здесь как общий термин, охватывающий MACRO-10 и -20 DEC, а также Midas MIT и FAIL Ральфа Горина). В отличие от FORTRAN, BASIC или любого другого языка в DEC-20 (за исключением Sail, для которого мы написали пакет интерфейса COMND JSYS).), MACRO позволяет писать настоящие программы DEC-20 — программы, которые будут полезны, нежны и прощают пользователю. Для программистов на языке ассемблера, имеющих опыт работы с IBM 360, архитектура машины и набор команд были восхитительны. Линейное адресное пространство в 256 тысяч слов (больше никаких BALR и USING!), сотни экзотических инструкций… А сам ассемблер позволял создавать относительно чистые, даже «структурированные» программы. Например, встроенные литералы MACRO почти эквивалентны блокам «начало… конец» Алгола или Паскаля, что позволяет избежать ужасающей спагетти-логики, от которой страдает большинство программ на языке ассемблера. Например, вот конструкция IF-THEN-ELSE с несколькими операторами в каждой части, без GOTO или меток (извините за ошибки, это по памяти):

КЕЙЛ Б, ФУ ; ЕСЛИ (b >= foo) ТО

ПУШЬ П, [ ; НАЧИНАТЬ

HRROI A, [ASCIZ/.LT./] ; сообщение = «.LT»;

СЕТОМ МЕНЬШЕ ; меньше = -1;

АОС (П) ; КОНЕЦ (пропустить ELSE-часть)

POPJ P, ] ; ЕЩЕ

ПУШЬ П, [ ; НАЧИНАТЬ

HRROI A, [ASCIZ/.GE./] ; сообщение = «.GE.»;

УСТАНОВКА МЕНЬШЕ ; меньше = 0;

POPJ P, ] ; КОНЕЦ;

PSOUT ; ПЕЧАТЬ сообщения;

Все, что находится в квадратных скобках, является литералом; ассемблер находит место для его размещения и заменяет литерал адресом этого места. Таким образом, (почти) любой объем данных или кода может быть размещен «в строке», а не в отдельной области данных. Как видно из примера, литералы могут быть вложенными. Другие распространенные структуры управления также можно моделировать с помощью литералов, например оператор CASE:

MOVEM B, @[EXP FOO, BAR, BAZ](A)

В этом примере B сохраняется в FOO, BAR или BAZ, в зависимости от значения A. Такая операция потребует много строк кода на большинстве других языков ассемблера и на большинстве языков высокого уровня.

В довершение всего, программы на языке ассемблера можно отлаживать в интерактивном режиме на символическом уровне с использованием «ДДТ» — не дихлор-дифенил-трихлорэтана, а «инструмента динамической отладки», предназначенного для устранения ошибок так же эффективно, как и в реальном случае, с помощью меньше нежелательных побочных эффектов (другие средства отладки носили такие же инсектицидные названия, как RAID). С ДДТ ( 4) больше не нужно копаться в толстых распечатках шестнадцатеричного дампа, больше не нужно вставлять операторы печати, выполнять повторную сборку и т. д. и т. п. Синтаксис его команды немного заумен и состоит в основном из загадочных одиночных букв, знаков препинания, табуляции и свободного использования ESC. («Альтернативный режим») символ, часто дублируемый. Но ДДТ может все. Фактически, поскольку он может выполнять все компьютерные инструкции и системные службы, создатели «Несовместимой системы разделения времени» (ITS) MIT для PDP-10 использовали его в качестве интерпретатора команд верхнего уровня. Поговорим об удобстве использования…

Набор инструкций DEC-10/20, вызовы монитора, ассемблер и отладчик заманили многих разумных программистов на длительные сеансы кодирования или «хакерские атаки». Возникла субкультура программистов DEC-10/20, говорящих странные слова и фразы, этимология которых в основном восходит к Справочному руководству по оборудованию PDP-10. Добавленным хакерами ингредиентом (в те времена не уничижительный термин) стало произнесение мнемоник, никогда не предназначавшихся для органов речи человека (AOS, BLT, JRST, ILDB, HRROI), и распространение их значений на другие сферы жизни (AOS, BLT, JRST, ILDB, HRROI). в основном ем). В конце концов, этот словарь был собран и систематизирован Гаем Стилом из CMU и другими как «Хакерский жаргон», первоначально опубликован в виде файла, а затем расширен в книгу (см. Библиографию).

Поначалу хакеры DEC-10/20 представляли собой небольшую группу, в основном из-за нехватки полезной документации. Чтобы написать работающую программу, можно обратиться к Справочному руководству по аппаратному обеспечению, Справочному руководству по вызовам монитора и Справочному руководству по ассемблеру MACRO. Но эти руководства представляли собой всего лишь списки инструкций, вызовов мониторинга и псевдоопераций и не давали ни малейшего представления о том, как составить программу. В 1981 году ситуация резко изменилась с публикацией книги Ральфа Горина по программированию на языке ассемблера DEC-20, и вскоре мир был перенаселен студентами-программистами DEC-20.

Крис Райланд и Фрэнк работали над руководством по программированию на языке ассемблера DEC-20 в 1979-80 годах, которое могло бы стать книгой, если бы Ральф не опередил нас 🙂 НАЖМИТЕ ЗДЕСЬ, чтобы просмотреть его текстовую версию : недавно обнаруженный (сентябрь 2002 г.), около 220 страниц.

Тем не менее, отсутствие связного набора языков программирования высокого уровня, полностью интегрированного с операционной системой и файловой системой, было одним из фатальных недостатков DEC-20. Эта слабость была устранена DEC в VAX/VMS, где программы, написанные на разных языках, могут требовать общей или совместимой поддержки времени выполнения, а системные программы могут быть написаны практически на любом языке — даже на BASIC или FORTRAN.

Многие остатки TOPS-10 работали — и будут работать до последнего вздоха последнего DEC-20 — в «режиме совместимости». Это означало, что программы, написанные на этих языках, могли обращаться к файлам только в соответствии с правилами TOPS-10: никаких длинных имен файлов, никаких забавных символов в именах файлов, никаких явных ссылок на каталоги или номера поколений. В частности, исходные программы для большинства языков программирования имели это ограничение: большинство компиляторов не были преобразованы в TOPS-20, и даже если бы они были, LINK не был. В конечном итоге это означало, что пользователь должен был знать о TOPS-10, чтобы использовать TOPS-20, и что программистам на языках высокого уровня было отказано в доступе ко многим функциям TOPS-20.

Инструменты разработчика

(Этот раздел добавлен в январе 2019 года.) Спустя десятилетия настоящие DECSYSTEM-20 трудно найти, но эмуляторы существуют; поищите в Google , чтобы найти их. Использование эмулятора DEC-20 аналогично использованию настоящего DEC-20. Например, вы можете писать и выполнять программы на языке ассемблера. Для этого вам понадобятся руководства. Вот несколько копий из локального архива:

Заголовок Предмет Дата Формат Размер
Справочное руководство по процессору DECsystem-10 DECSYSTEM-20 Архитектура и набор инструкций июнь 1982 г. PDF 29 МБ
Справочное руководство по макроассемблеру DECSYSTEM-20 Руководство по ассемблеру апрель 1978 г. PDF 5 МБ
Справочное руководство по мониторингу вызовов TOPS-20 также известное как руководство JSYS (системные службы) декабрь 1982 г. PDF 26 МБ
ТОПС-20 ДДТ Руководство Инструмент динамической отладки май 1985 г. PDF 5 МБ
ПЛЫТЬ Стэнфордский язык искусственного интеллекта август 1976 г. PDF 5 МБ

См. программу Kermit DEC-20 как пример кодирования на языке ассемблера.

SAIL (язык программирования высокого уровня из Стэнфорда) обычно не устанавливается на DEC-20, поэтому, если руководство вас заинтриговало, вам придется поискать его для загрузки.

[ Вверх ] [ Далее ] [ Предыдущий ]

Борьба с ростом

Уже через год наш DEC-20 оказался безнадежно перегружен, средняя нагрузка зашкаливала, а диски регулярно заполнялись. В таком состоянии он оставался еще год, пока мы не нашли возможность купить вторую машину. Вскоре он тоже был заполнен, а в последующие годы появились третий и четвертый, а также DEC-20 на факультете компьютерных наук Колумбийского университета и еще один в Колумбийском педагогическом колледже. Системы компьютерного центра были модернизированы путем добавления памяти и дисков и, в конечном итоге, путем их соединения с помощью CFS и установки дисковых накопителей RA-81 и HSC-50. В конце концов, все процессоры были обновлены до 2065 с максимальным объемом памяти, и мы больше ничего не могли сделать, чтобы добиться от них большей производительности. Как и другие сторонники DEC-20, мы заполнили наше машинное отделение до отказа DEC-20, и у нас не было места для большего. Нашим единственным вариантом расширения была бы новая модель, обладающая большей мощностью на меньшей площади. В течение нескольких лет мы периодически ездили в Мальборо, чтобы обсудить будущую машину. На самом деле было 2 проекта.

DOLPHIN начинался как высокопроизводительная система, предлагающая действительно распределенную 36-битную архитектуру. Большие DOLPHINS будут располагаться среди маленьких однопользовательских MINNOWS в сети с высокой пропускной способностью. И DOLPHIN, и MINNOW столкнулись с технологическими проблемами. В DOLPHIN использовались специально разработанные чипы Motorola, у которых были проблемы с надежностью. Плотная упаковка MINNOW, предназначенная для размещения в корпусе терминала VT52 , в сочетании с необходимостью локального подключения дисковода RP06 (!), стала причиной его падения. Коммерческое использование Ethernet оставалось еще долгие годы, а проблемы с сетью также оставались. [2]

Проект ЮПИТЕР появился через несколько месяцев после закрытия ДЕЛЬФИН. Его конструкция не включала распределенные MINNOW, но поддерживала требования к быстрому централизованному процессору. Это должно было быть 10+ MIPS и дешево. Длительный и трудный процесс проектирования не привел к достижению ни одной из этих целей, и в 1983 году проект был отменен, хотя некоторые его части в конечном итоге достигли рынка — CI, HSC-50 и т. д. [2]

Руководство и инженеры LCG всегда уверяли нас при каждом посещении Мальборо (Массачусетс) (иногда включая поездки на вертолете и лимузине, а также проживание в «тематических» отелях), что до анонса новой системы осталось всего «18 месяцев», независимо от ее кодового названия. . Стоимость владения любой системой была бы значительно ниже, чем эквивалентное количество КЛ.

В ожидании появления Юпитера нам все еще нужны были способы справедливого распределения наших существующих ресурсов DEC-20 между пользователями. Это вызывало беспокойство с самого начала. DEC-20 в первоначальном виде позволял обычным пользователям управлять машиной различными способами, делая ее непригодной для использования всеми остальными. Пользователи писали программы для бесконечного создания самовоспроизводящихся вилок, они назначали все PTY и использовали их для написания похитителей паролей, они запускали программы в бесконечных циклах, которые потребляли все доступные циклы ЦП, они монополизировали дефицитные терминальные линии на долгие часы, они заполняли пакетные очереди, они бомбардировали операторов тысячами ложных запросов на монтирование ленты, печатали миллионы страниц ерунды и т. д. и т. п.

В качестве исходного сайта для мониторинга и исполнения Columbia могла вносить изменения, чтобы ограничить доступ к определенным ресурсам для определенных классов пользователей на основе идентификатора пользователя или строки учетной записи или путем принятия «неиспользуемых» битов в слове возможностей. Но еще во времена OS/360 мы усвоили болезненный урок о том, что локальные модификации операционных систем возвращаются, чтобы преследовать нас, когда появляются новые выпуски: потребовались годы, чтобы обновить нашу сильно модифицированную IBM OS/360 21.0 до 21.8. Поэтому мы чувствовали себя обязанными убедить DEC в том, что наши требования применимы повсеместно. Для этого мы прошлись по всем каналам: сначала отправили формы отчета о производительности программного обеспечения, затем написали письма и, наконец, провели серию встреч с группой мониторинга в Мальборо.

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

Но ACJ не позволял нам регулировать текущее потребление ресурсов. Для этого нам нужно было создать программу мониторинга для сбора статистики по каждому пользователю по процессору и времени соединения. Студентам был предоставлен недельный бюджет на подключение и процессорное время, и они получали периодические предупреждения по мере приближения к отсечке. Даже после отключения им разрешалось вернуться в нерабочее время, чтобы завершить свою работу. ACJ и Omega позволили нашим DEC-20 разместить более 6000 активных студентов на четырех машинах на пике эры DEC-20.

Одна область представляла для нас особый интерес. Терминалы не были подключены напрямую к нашим DEC-20, а переключались через УАТС для передачи данных. Следовательно, DEC-20 не знал, что TTY37 (например) был терминалом номер X в комнате Y здания Z. По соображениям безопасности и удобства это знание было необходимо. Если пользователя подозревали в неправомерном поведении, персонал должен был знать его физическое местонахождение. А при создании задания руководителю необходимо было знать тип и скорость терминала, чтобы пользователя не сбивали с толку разбитые и перемешанные экраны. К счастью, в АТС имелся консольный терминал, который вел журнал соединений. Он был подключен через кабель RS-232 «осьминог» к портам на каждом из DEC-20, который хранил базу данных портов УАТС, местоположений, типов терминалов и скоростей.

Журналы, которые ведут ACJ и Omega, включали физическое местоположение задания. Эти журналы позволили нам отследить немало потенциальных и реальных нарушителей безопасности системы и конфиденциальности других пользователей.

[ Вверх ] [ Далее ] [ Предыдущий ]

СЕТЬ

Наш первый DEC-20 был подключен к IBM 360/91 с помощью продукта DEC HASP/RJE, для которого требовался собственный выделенный внешний интерфейс DN20. Этот метод связи был довольно болезненным: DEC-20 маскировался под устройство чтения карт и построчный принтер для системы IBM. Мы написали серию программ Sail, которые создавали «волшебный сэндвич JCL» для наших пользователей, которые хотели отправлять файлы или отправлять задания в систему IBM.

Как только мы получили второй DEC-20, мы подключили его к первому с помощью DECnet [1980], а затем соединили эту небольшую сеть с другими системами DEC на территории кампуса. DECnet также использовался на машинах компьютерного центра Университета Карнеги-Меллона, и поэтому мы объединили две наши сети DECnet в одну с выделенной телефонной линией между Нью-Йорком и Питтсбургом, назвав расширенную сеть CCnet [1982] (CC означает компьютерный центр, или, может быть, Карнеги-Колумбия). Вскоре к сети присоединились и другие учреждения — Технологический институт Стивенса, Университет Кейс Вестерн Резерв, Нью-Йоркский университет, Университет Толедо и другие. Основным преимуществом было совместное использование программного обеспечения и программирования специалистами по управлению компьютерами на этих объектах, включая DEC-20, DEC-10, VAX, PDP-11 и другие системы DEC. На протяжении многих лет, Columbia и CMU использовали общую систему DEC-20 Galaxy, разработанную совместно, которая позволяла осуществлять прозрачную печать через DECnet и наматывать ленты для печати на принтере Xerox 9700. Один из DEC-20 Колумбии служил почтовым шлюзом между CCnet и BITNET, крупной академической сетью, основанной на протоколах RSCS мэйнфреймов IBM.

Самым важным вкладом DEC-20 в создание сетей стала поддержка протоколов ARPANET, сначала NCP, а затем TCP/IP. В течение многих лет DEC была единственным крупным поставщиком компьютеров, поддерживавшим эти протоколы, которые в основном были разработаны на 36-битных машинах DEC под управлением TENEX, TOPS-10 и TOPS-20 (а позже и на VAX для Berkeley UNIX). В конце 70-х и начале 80-х годов, когда ARPAnet росла и процветала за пределами своих первоначальных крошечных исследовательских задач, в ней доминировали 36-битные машины DEC, и многие базовые интернет-протоколы и процедуры были разработаны в этой среде. Сама DEC имела DEC-20 в сети ARPANET, которая позволяла крупным академическим и исследовательским центрам DEC-20 напрямую общаться с инженерами TOPS-20, отправлять отчеты об ошибках или исправления по электронной почте, передавать файлы и т. д. Список рассылки ARPANET для менеджеров TOPS-20 был создан Марком Криспином в Стэнфорде. В список рассылки входили разработчики TOPS-20 из DEC, и было много полезного, что позволило обойти громоздкую процедуру SPR.

На местном уровне наши собственные DEC-20 получили интерфейсы Ethernet NIA20 для замены неуклюжих и негабаритных внешних устройств DN20. Ethernet позволил нам использовать TCP/IP вместе с DECnet, и вскоре [около 1982 года] появился большой Ethernet по всему кампусу, соединяющий компьютерный центр DEC-20 с системами факультета по всему кампусу и за его пределами, благодаря Интернету факультета компьютерных наук. членство [1982?], а позже [1984?], наше собственное членство в других глобальных сетях на основе TCP/IP, таких как NYSERNET и JVNCNET. Ethernet и TCP/IP даже позволили нам отказаться от соединения HASP RJE с мэйнфреймами IBM, которые к тому времени находились в Ethernet и выполняли код TCP/IP из Университета Висконсина (позже включенный IBM в свою собственную линейку продуктов).

[ Вверх ] [ Далее ] [ Предыдущий ]

КЕРМИТ

На пике популярности DEC-20 спрос на идентификаторы пользователей среди студентов и преподавателей был настолько велик, что мы больше не могли позволить себе выдавать вечные идентификаторы. Вместо этого идентификаторы инструкций присваивались каждому курсу, а затем удалялись в конце каждого семестра. Несмотря на то, что файлы тщательно копировались на ленту, студентам не разрешалось запрашивать восстановление файлов предыдущего семестра из-за ограниченной емкости ленточного накопителя и возможности оператора. И даже в течение семестра дисковой квоты студентки (35 КБ — K, а не M или G!) часто не хватало, чтобы одновременно хранить все ее файлы в сети.

Если бы у пользователей DEC-20 были какие-то съемные носители, они могли бы взять на себя ответственность за управление и архивирование своих собственных файлов. Наши первые усилия в этой области включали малоизвестный продукт под названием DN200, удаленную станцию ​​DECnet, которая изначально была разработана для подключения 32 терминалов и линейного принтера к DEC-20 (этот продукт так и не дозрел). DN200 представлял собой PDP-11/34, на котором работала какая-то производная от RSX. Наш — единственный в своем роде — включал в себя 8-дюймовый дисковод для гибких дисков. Наш план состоял в том, чтобы написать программное обеспечение DN200 для копирования файлов между дискетами и файловой системой DEC-20. Пользователи просто вставляли свои дискеты и вводили команды COPY для сохранения или восстановления своих файлов. К счастью, этот проект так и не сдвинулся с мертвой точки.

Но идея съемных носителей казалась правильной. Пользователи компьютеров годами имели его в виде карточек, бумажной ленты или даже собственных неотразимых маленьких DEC-лент, вращающихся взад-вперед, таких приспособлений на PDP-8, -9, -10, -11, — 12 и т. д., и его очень не хватает в -20. Ряд сумасшедших схем был рассмотрен и отвергнут: разрешить пользователям отправлять файлы на перфокарту мэйнфрейма IBM, разместить 9-дорожечный ленточный накопитель самообслуживания в публичном месте, написать программу, которая преобразует данные пользователя в штрих-коды для печать на наших принтерах Printronix…

Примерно в это же время (1980 г.) на сцене появились 8-битные микрокомпьютеры CP/M. Даже если они ни на что не годились, они могли общаться, читать и записывать дискеты. Разместите несколько из них в общественных местах, подключите их к DEC-20, и студенты получат съемные носители — маленькие диски, которые они смогут взять с собой, хранить и использовать повторно, не полагаясь на персонал компьютерного центра. Большой вопрос заключался в том, как переместить файл с большого мэйнфрейма с разделением времени на небольшой персональный компьютер.

Мы посмотрели на рынок и увидели, что существует несколько коммерческих пакетов связи RS-232 для микросхем, но ни одного для DEC-20. И нам приходилось беспокоиться не только о DEC-20 и микросхемах, но и о мейнфреймах IBM. Если бы мы купили программное обеспечение для передачи файлов между DEC-20 и Intertec Superbrain(Это был микро, который мы выбрали, в первую очередь из-за его конструкции, напоминающей резервуар, защищенной от пользователя, и, несмотря на его глупое название), если он будет доступен, нам придется купить еще один пакет программного обеспечения для наших пользователей мэйнфреймов IBM, чтобы сделать то же самое. Нам также пришлось принять во внимание, что Superbrain может быть не всем по вкусу. Колумбия, будучи в высшей степени децентрализованной и разнообразной организацией, скорее всего, имела столько разных типов компьютеров, сколько было мест для их размещения. Если бы для соединения каждой уникальной пары систем требовался отдельный пакет программного обеспечения, то нам потребовались бы почти n -квадратные отдельные пакеты, где n — количество различных типов компьютерных систем, с достаточным количеством копий для покрытия каждого экземпляра каждой из них. система.

Гораздо лучше иметь на каждом компьютере один пакет программного обеспечения, пакет, который способен обмениваться данными со всеми остальными компьютерами. Это уменьшает количество необходимых программ до n , что в свою очередь облегчает нагрузку на бюджет и немного облегчает жизнь пользователю.

Все эти вопросы привели к решению инвестировать в наших собственных программистов, а не в компании-разработчики программного обеспечения. Таким образом, мы могли бы иметь программное обеспечение, специально разработанное для наших собственных нужд. Конечным результатом стал протокол передачи файлов Kermit. Наши первые программы Kermit были написаны для DEC-20 и Superbrain. Superbrains были размещены в общественных местах, чтобы студенты могли копировать свои файлы на дискеты и позже восстанавливать их на DEC-20.

На протокол Кермита во многом повлияли ограничения DEC-20. DEC-20 с его интерфейсом PDP-11/40 был разработан с учетом того, что ввод с терминала поступает непосредственно от людей, сидящих за клавиатурой и печатающих пальцами с относительно медленной скоростью — максимум 10 символов в секунду — в то время как большие объемы непрерывного вывода могут быть отправлены с компьютера на экран. Поэтому RSX20F, операционная система внешнего интерфейса, выделяет небольшие буферы для ввода и большие — для вывода. Мы узнали об этом на собственном горьком опыте, когда купили наши первые терминалы с функцией «экран передачи» (HDS Concept-100s). Как только кто-то попробовал, передняя часть развалилась. Подобные явления наблюдались и с клавишами автоповтора (как когда один из наших программистов заснул на клавиатуре)( 5), и снова, когда DEC впервые выпустила свой терминал VT100 : при плавной прокрутке со скоростью 9600 бит/с терминал перегрузил бедный интерфейс XOFF и XON. Более поздние выпуски RSX20F решали эти проблемы драконовским способом — если входные буферы не могли быть выделены достаточно быстро, внешний интерфейс устанавливал скорость линии на ноль на секунду или две! Урок? Не отправляйте в DEC-20 продолжительные потоки данных с терминала — это все равно что пытаться заставить воробья съесть героя-фрикадельку. Поэтому обычные пакеты Кермита довольно короткие, максимум 96 символов — семена, насекомые и черви, которых может переварить воробей.

Еще одной особенностью DEC-20 является его чувствительность к управляющим символам. Во время обычного диалога терминала 17 из 33 управляющих символов ASCII используются для специальных целей — редактирование, прерывание программы, управление потоком, отчет о состоянии, сигнализация конца файла и т. д. — вместо того, чтобы приниматься в качестве данных. Несмотря на то, что программа DEC-20 может открыть терминал в «бинарном режиме», чтобы обойти специальную обработку этих символов, делать это не обязательно, поскольку некоторые из этих функций могут быть полезны во время передачи данных. Урок здесь: не отправляйте управляющие символы «голыми» при передаче данных. Фактически протокол Kermit (в его самой базовой конфигурации) отправляет пакеты, которые представляют собой строго короткие строки текста.

Мэйнфрейм IBM (к этому времени 360/91 был заменен на 4341 под управлением операционной системы VM/CMS) имел свой набор особенностей. В отличие от DEC-20, он использовал полудуплексную связь и использовал 7 бит данных с четностью при обмене данными с внешним миром ASCII. Это означало, что наш протокол передачи файлов тоже должен был быть полудуплексным и требовал специального механизма для передачи 8-битных двоичных данных через 7-битный канал связи. Кроме того, поскольку вся связь осуществлялась либо через внешний интерфейс 3705 (линейный режим), либо через преобразователь протоколов IBM Series/1 (или эквивалент, например 7171 или 4994) 3270, оба из которых рассматривали многие управляющие символы как команды, которые должны быть выполнены немедленно, был усилен запрет на использование голых управляющих символов в данных. Сведение протокола к наименьшему общему знаменателю позволило ему работать во всех случаях, но за счет эффективности и элегантности. Некоторые из возникших недостатков были устранены в последующие годы путем добавления в протокол длинных пакетов и полнодуплексной транспортировки пакетов со скользящим окном, а также опции «отмены префикса» управляющих символов.

По счастливому совпадению, объединение особенностей DEC-20, мэйнфрейма IBM и микрокомпьютера CP/M привело к созданию конструкции, которую можно было адаптировать практически к любому компьютеру, способному к асинхронной связи. Файл был впервые передан по протоколу Kermit 29 апреля 1981 года двумя экземплярами Kermit-20, работающими на одном DEC-20, с использованием двух последовательных портов, соединенных между собой нуль-модемным кабелем.

Идея поделиться нашими программами Kermit и раздать исходный код стала естественным результатом нашего опыта работы с сообществом сайтов DEC-10/20. Мы получили так много собственного программного обеспечения с других сайтов, что это было справедливо. Мы включили Кермита в наши экспортные записи и отправили их в DECUS. DEC была первой компанией, которая признала Kermit как инструмент широко распространенной ценности и опубликовала его в своих листовках и информационных бюллетенях по крупным системам (например, Copy-N-Mail , Large Systems News и EDU) .). И DEC была первой организацией, которая перенесла Kermit на новую платформу — микро VT-180 CP/M. Поскольку мы хотели, чтобы программное обеспечение Kermit распространялось открыто, мы не размещали наши программы Kermit в открытом доступе. Хотя это может показаться противоречивым, мы чувствовали, что, защитив программы авторским правом, мы могли бы предотвратить их использование предпринимателями и продажу в качестве коммерческих продуктов, что казалось необходимым, поскольку мы слышали истории о других университетах, которым было запрещено использовать программы, которые они сами были написаны фирмами, которые взяли их работы, являющиеся общественным достоянием, и сохранили на них авторские права.

Из-за широкого распространения ранних программ Kermit, а также исходного кода и спецификации протокола, сайты с другими типами компьютеров начали писать собственные программы Kermit и присылать их нам. Одними из первых вкладов в этом направлении были программы DECsystem-10 и VAX/VMS Kermit от Технологического института Стивенса (написанные на Common Bliss, чтобы код мог использоваться совместно TOPS-10, VMS и P/OS), PDP-11. Кермит из Университета Толедо и первый простой UNIX Кермит на языке C из нашего собственного факультета компьютерных наук. Этот процесс продолжался в течение многих лет, в результате чего появилась большая коллекция программ Kermit, которую вы можете найти сегодня на веб-сайте проекта Kermit .

Проект Кермит в Колумбии использовал DEC-20, нашу систему CU20B, в качестве испытательного стенда, библиотекаря и сетевого дома с самого начала до тех пор, пока CU20B (наш последний оставшийся DEC-20) не был отключен в сентябре 1988 года. Был выпущен электронный информационный бюллетень Info-Kermit. и рассылается людям в академических и корпоративных сетях по всему миру из DEC-20 с использованием MM, программы электронной почты DEC-20. Те же самые пользователи могут использовать MM и другие почтовые клиенты для запросов и информации, а также получать доступ к программам, исходному коду и документации через файловые серверы DECnet и TCP/IP DEC-20. Даже наши дистрибутивные ленты изначально поставлялись с наших DEC-20 в форматах DUMPER, BACKUP и ANSI.

Примерно до 1985 года Кермит DEC-20 был «эталоном», по которому нужно было проверять совместимость всех остальных Кермитов. Многие новые функции Kermit были сначала добавлены в Kermit DEC-20 (режим сервера, макросы и т. д.). Пользовательский интерфейс DEC-20 стал образцом для большинства программ Kermit, поэтому сегодня миллионы людей используют (замечательную симуляцию) COMND JSYS DEC-20, даже не подозревая об этом. Спустя долгое время после того, как DEC-20 исчез со сцены, программы Kermit для Windows, UNIX, VMS, MS-DOS и многих других платформ продолжают «хранить веру».

Вскоре после первого появления Кермита микрокомпьютеры стали важной силой с появлением IBM PC . Персональные компьютеры внезапно стали сами по себе полезными компьютерами общего назначения. В ответ на настоятельные просьбы преподавателей Колумбийского университета, получивших первые IBM PC, мы спешно выпустили версию 1.0 IBM PC Kermit и обнаружили, что Kermit используется так, как мы не ожидали. Вместо того, чтобы использовать дискеты ПК для хранения файлов мэйнфрейма, пользователи выполняли большую часть создания файлов и манипуляций с ними на ПК, а результаты отправляли на мэйнфрейм для архивирования и совместного использования. Кермит стал ранней моделью распределенной обработки.

[ Домашняя страница проекта Kermit ] [ Выпуски новостей Kermit ] [ Архивы списков рассылки Kermit ] [ Архивы групп новостей Kermit ]

[ Вверх ] [ Далее ] [ Предыдущий ]

ПРОГРАММНЫЕ ПАКЕТЫ

36-битные большие системы DEC стали источником некоторых из самых влиятельных и устойчивых программных пакетов, когда-либо написанных. Здесь мы произвольно упоминаем некоторых из наших фаворитов, принося извинения сотням, которыми мы пренебрегли.

Редакторы

Важнейшим среди программ, созданных в этих системах, является текстовый редактор EMACS, созданный Ричардом М. Столлманом в ITS, «Несовместимой системе разделения времени» Массачусетского технологического института для PDP-10. EMACS воплотила революционную концепцию, согласно которой экран терминала должен действовать как окно для редактируемого текста и что любые изменения в тексте должны немедленно отражаться на экране. После многих лет линейного редактирования (а до этого и набора текста с клавиатуры) нам поначалу было трудно осознать мощь и удобство экранного редактора. Была даже дискуссия о том, следует ли разрешить это в нашей системе, как будто это подрывное воздействие… «Зачем нам это нужно? Каждое нажатие клавиши приводит к 37 переключениям контекста!» и т. д. и т. п. Но вскоре даже скептики начали ценить EMACS за ее огромное повышение производительности труда человека, и он быстро стал предпочтительным редактором как для сотрудников, так и для студентов и преподавателей. В Колумбии возникла кустарная промышленность по добавлению новых типов терминалов и операций в базу данных TECO (DEC-10/20 EMACS была написана на TECO), а также новых библиотек для самой EMACS.

Хотя некоторые сегодня могут считать EMACS, его потомков и родственников «устаревшими» по сравнению с редакторами с графическим интерфейсом и текстовыми процессорами, у них есть одно большое преимущество перед новыми редакторами: они полностью основаны на обычных символах ASCII (6) .) (в отличие от функциональных клавиш или клавиш со стрелками, мыши и т. д.), поэтому машинистам, печатающим вслепую, никогда не придется покидать домашние клавиши, а опытные пользователи EMACS могут вводить текст и манипулировать им быстрее, чем это могут делать эксперты, работающие с другими редакторами, особенно с современными, но трудоемкими редакторами с графическим интерфейсом. . А за счет ограничения набора команд обычными символами ASCII EMACS можно использовать на любой платформе, независимо от способа доступа к ней (собственная клавиатура и экран рабочей станции, окно xterm, telnet, Dialin, rlogin, ssh и т. д.). Еще одним преимуществом EMACS, конечно же, является ее настраиваемость и программируемость, но только старшие поколения пользователей компьютеров знают или интересуются такими вещами.

Форматёры текста

EMACS — это редактор обычного текста, а это означает, что сам по себе он обычно не может создавать специальные эффекты печати, такие как жирный шрифт, курсив, подчеркивание, математические обозначения, различные размеры точек, графику и т. д. Для этого нам нужны — по крайней мере, в мире символов терминалы — форматировщик текста. EMACS был одним из нескольких экранных редакторов для DEC-20 (TV и TVEDIT были другими первыми претендентами), а также существовало несколько форматировщиков текста. Разумеется, DEC-20 поставляется с RUNOFF, стандартным форматтером DEC. RUNOFF — простая, не слишком мощная программа, но ее преимущество состоит в том, что файлы RUNOFF в основном переносимы между PDP-11, VAX, DEC-10 и DEC-20. Однако RUNOFF является собственностью компании и поэтому недоступен в системах сторонних производителей. RUNOFF также имеет три основных недостатка. Во-первых, он строго процедурный, а это значит, что автор должен вести себя как программист. инструктируя RUNOFF в мельчайших деталях. Во-вторых, он не может заниматься математикой. И в-третьих, он не поддерживает широкий спектр устройств вывода.

Эти недостатки устраняются с помощью нескольких форматировщиков текста, разработанных пользователями больших систем DEC, а также, в этом отношении, некоторых из ее более мелких систем (например, UNIX изначально был написан для PDP-7, а затем перенесен на PDP-11). ; UNIX nroff и troff, вероятно, являются ответвлениями RUNOFF). Ранние попытки создания 36-битных систем включали R и Pub.

Брайан Рид, работая над DECsystem-10 для своей докторской диссертации в CMU, разработал язык создания документов под названием Scribe, который учитывал процедурный элемент. Там, где в RUNOFF нужно сказать: «Отцентрируйте и подчеркните это слово, оставьте 7 пустых строк, сделайте отступ 4 пробела и т. д.», в Scribe нужно сказать: «Это статья, вот заголовок, вот раздел, вот сноска. , вот библиографическая цитата, поместите это в указатель, вставьте сюда фотографию и масштабируйте ее вот так и т. д.», а стилистические решения и детали остаются на усмотрение Scribe, который включает в себя обширную базу данных типов документов и стилей публикации. Например, если вы написали статью для CACM, вы можете попросить Scribe отформатировать ее в требуемом стиле CACM. Когда CACM отклоняет его, вы просто говорите Scribe переделать его в компьютерном формате IEEE.7 ).

Во время разработки Scribe свободно распространялся среди других университетов, и между Брайаном и пользователями было много компромиссов. Однако, когда Брайан покинул CMU, права на Scribe были проданы частной компании Unilogic Ltd, которая продавала его как коммерческий продукт ( 8 ). Scribe был неотъемлемой частью многих сайтов DEC-10 и -20 и был преобразован из оригинального Bliss в другие языки для использования в таких системах, как UNIX, VMS и даже мэйнфреймах IBM.

Тем временем в Стэнфорде Дональд Кнут планировал новые издания своего многотомного труда « Искусство компьютерного программирования» . Но вскоре он обнаружил, что за время, прошедшее с момента публикации его первых изданий, искусство математического набора, как и искусство архитектурной резьбы по камню, умерло: он не мог найти наборщика, способного справиться с этой задачей. Поэтому он приступил к работе над компьютерной программой для математического набора текста и набором гармоничных шрифтов, пригодных для компьютерной загрузки на лазерный принтер. Работа велась на PDP-10 в Стэнфорде под управлением собственной операционной системы WAITS («Она ждет вас по рукам и ногам») на языке Sail. В результате появилась система под названием T EX (tau epsilon chi) и METAFONT, сопутствующий ему конструктор шрифтов, привлекли множество поклонников, и оригинальная программа Sail вскоре была переведена на другие языки для обеспечения переносимости. Сейчас он работает на многих различных платформах и отвечает за выпуск множества книг и статей непревзойденной типографской красоты.

И TeX, и Scribe поддерживают широкий спектр устройств вывода и являются одними из первых форматировщиков текста, поддерживающих это. Когда в начале 70-х годов Xerox позволила нескольким своим принтерам XGP (экспериментальному ксерографическому принтеру со шрифтами, загруженными с хоста) проникнуть в лаборатории Стэнфорда, Массачусетского технологического института и университета КМУ, они были быстро подключены к PDP-10, чтобы управлять ими. форматтеры, такие как R и Pub. Их гибкость побудила таких людей, как Дон и Брайан, включить в свои проекты полноценные концепции набора текста, и благодаря этому позже появилась возможность добавить поддержку TeX и Scribe для таких принтеров, как GSI CAT-4 (тогда широко использовавшийся в Bell). Labs с Троффом), Xerox Dover, Imagen и сегодняшними принтерами PostScript (и, если мы не ошибаемся, Брайан также был руководящей силой PostScript).

В новом тысячелетии Scribe практически исчез, и это досадно. Но в каком-то смысле он продолжает жить в LaTE X , языке, похожем на Scribe, построенном на основе T E X. Как и многие инструменты 1970-х и 80-х годов, Scribe, T E X и LaT E X (и, для в любом случае, EMACS) потребуется немало времени для начала, но оно того стоит, потому что, как только вы освоитесь с ними, вы сможете превзойти всех по производительности!

Электронная почта

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

Хотя электронная почта была доступна для использования в компьютере с начала 1960-х годов (например, в системе разделения времени CTSS Массачусетского технологического института), электронная почта между компьютерами зародилась на DEC-20 (или, строго говоря, на KL-10 под управлением TENEX, «proto-TOPS-20») в BBN в Кембридже, штат Массачусетс, в 1972 году, когда Рэй Томлинсон из BBN адаптировал свою программу электронной почты TENEX для отправки сообщений на другие узлы ARPANET. Это включало не только новое программное обеспечение и протоколы, но и новую систему обозначений: ныне повсеместный формат адреса пользователя @ хоста .

Если бы вы выполнили SYSTAT на любом DEC-20 в Колумбии в период с 1978 по 1988 год, вы бы увидели, что около половины пользователей используют EMACS, а другая половина — MM, с лишь редкими перерывами для форматирования текста, компиляции программ, передачи файлов и других видов деятельности. «настоящей работы». MM — это почтовый менеджер, первоначально написанный Майком МакМахоном, а позже перенятый Марком Криспином. Это «пользовательский агент» почтовой системы. MM — это обычная программа непривилегированного пользователя, которая позволяет вам читать почту, составлять и отправлять почту другим пользователям, пересылать почту и управлять своим почтовым файлом. ММ позволяет перемещать сообщения в разные файлы, распечатывать сообщения, удалять их, помечать их для дальнейшего рассмотрения и т. д.

Любая операция, которую MM может выполнить с одним сообщением, также может применяться к последовательности сообщений. Это одна из самых мощных функций ММ. Функции выбора сообщений MM позволяют вам обращаться с вашим почтовым файлом почти как с базой данных и выдавать сложные запросы, такие как «показать мне (или ответить, или удалить, или переслать, или пометить, или распечатать) все сообщения от того-то, отправленного между такими-то датами, которые длиннее такого-то количества символов и включают в тему слово «foo».

MM — это чрезвычайно мощный инструмент, но его также легко использовать, поскольку он полностью использует COMND JSYS. Пользователи могут узнать, что ожидается в любой момент, набрав вопросительный знак (кроме случаев, когда составляется текст сообщения, и в этом случае вопросительный знак становится частью текста). Существует команда SET, которая позволяет настраивать многие операции MM, а также изменять ее действия по умолчанию. Пользователи могут сохранить эти настройки в файле инициализации, чтобы они выполнялись автоматически при каждом запуске MM.

MM был быстро принят в пользу DEC-20 MAIL и RDMAIL и первоначально использовался программистами. Его использование быстро распространилось среди студентов и преподавателей до такой степени, что несколько курсов стали полностью зависеть от него. Были заданы домашние задания и чтения, проведены конференции, сданы задания, заданы вопросы и даны ответы, и все это с ММ. ММ также используется для размещения сообщений на публичных «досках объявлений», которые использовались для всего: от продажи подержанных мотоциклов до викторин и яростных споров на политические темы.

В Колумбийском университете многие факультеты разбросаны по разным зданиям, как на территории кампуса, так и за его пределами. Эти отделы были идеальными кандидатами на использование электронной почты, и многие из них вели свою повседневную деятельность с использованием ММ. И ММ одинаково хорошо себя чувствует в сетевой среде. При наличии соответствующих сетевых подключений и агента доставки ММ может использоваться — и используется — для передачи электронной почты по всему миру быстрее, чем любое почтовое отделение или служба доставки может доставить бумажную почту. Из Колумбии мы отправляем электронную почту в такие отдаленные места, как Юта, Англия, Норвегия, Австралия, Бразилия, Япония, Китай и СССР, и получаем ответы в течение нескольких минут (при условии, что наши корреспонденты работают в такие же нечетные часы, как и мы). делать!).

Постскриптум от мая 2003 г.: Прошло всего десять лет, прежде чем электронная почта стала скорее проклятием, чем благословением, и каждый пользователь компьютера оказался завален ненужной и/или вредоносной электронной почтой, известной как «спам». DEC-20 также был пионером в этой области: самый первый спам был отправлен 1 мая 1978 года по номеру 1233-EDT от DEC-MARLBORO.ARPA (DEC-20) всем контактам ARPANET (из базы данных WHOIS), рекламируя новые Модели ДЭК-20.

В 2015 году Columbia передала свою электронную почту Google.

[ Вверх ] [ Далее ] [ Предыдущий ]

ДРУГИЕ ЗАМЕЧАТЕЛЬНЫЕ ВКЛАДЫ

Архитектура DEC-20 фактически восходит к середине 1960-х годов, к PDP-6 от DEC, который был разработан с учетом LISP — полуслова и соответствующие инструкции идеально подходят для CAR и CDR (это разговор о LISP, произошедший от набора команд IBM 704, где впервые был разработан LISP). Большинство крупных реализаций LISP было сделано для 36-битных машин DEC — MACLISP, INTERLISP — и среди приложений, основанных на них, MACSYMA MIT выделяется как веха. MACSYMA используется учеными и инженерами для манипулирования математическими выражениями произвольной сложности на символическом, а не числовом уровне. Есть одна известная (возможно, апокрифическая) история об астрономе-математике XIX века, посвятившем свою жизнь формулированию точного уравнения движения Луны. Результатом стала книга на 300 страниц.

В 1971 году Ральф Горин из Стэнфордского университета написал первую известную компьютерную программу проверки правописания текста — SPELL for TOPS-10. Позже он был адаптирован к DEC-20 и «сопряжен» с такими пакетами, как EMACS и MM. Потомков SPELL легион: ни одна уважающая себя программа обработки текстов для ПК не появится на публике без корректора орфографии.

[ Вверх ] [ Далее ] [ Предыдущий ]

ПЕРЕХОД В UNIX

[Помните: этот документ был написан в 1988 году.]

« Плавное плавание по 80-м….» К концу 80-х годов спрос на услуги DEC-20 выровнялся, а затем начал падать. DEC-20 был похож на клипер, высшее выражение технологии, которую многие считали устаревшей — большой центральный компьютер с разделением времени. «Студенты теперь были готовы отказаться от удобств DEC-20 ради контроля и предсказуемости собственного ПК. Благодаря членству Колумбии в Консорциуме Apple University, вскоре в руках студентов оказались тысячи компьютеров Macintosh. Специальные соглашения с IBM также установили IBM PC в сотнях офисов и комнат общежитий. Эти системы удовлетворяли потребности студентов в выполнении небольших заданий по программированию на языках Pascal и Basic, а также в скромной обработке текстов и освобождали центральные системы от большой нагрузки. Однако ПК не выполняли потребности отдела компьютерных наук и других инженерных отделов,где более крупные проекты выполнялись на таких языках, как Fortran, C, Prolog и Lisp, которые не были легко и недорого доступны для ПК.

Тем временем UNIX захватила компьютерный мир — на мейнфреймах, мини-компьютерах, рабочих станциях и даже ПК. Наша основная группа обучающихся пользователей — студенты CS — выполняла большую часть своей работы на ведомственных ATT 3B2, но остро нуждалась в централизованной, надежной среде с приемлемой производительностью, резервным копированием, обслуживанием и всем остальным. Мы уже несколько лет использовали UNIX на VAX 750 (для внутренних разработок), а также Amdahl UTS на мэйнфрейме IBM, поэтому накопили некоторый опыт работы с UNIX.

По этим причинам мы решили, что пришло время начать переход с TOPS-20 на UNIX. По финансовым причинам мы выбрали для этой цели VAX 8650. Трейд-ин DEC-20 был привлекательным, и мы смогли оставить себе наши старые диски и ленточные накопители. Фактически, мы подсчитали, что через 3 года покупка VAX обойдется дешевле, чем сохранение DEC-20. И он был более мощным, с большим адресным пространством и меньшим размером, чем DEC-20, который он заменил.

VMS не был выбран по нескольким причинам. Во-первых, мы чувствовали себя несколько преданными из-за отказа DEC от TOPS-20 и не хотели подвергать себя такому же обращению в будущем. UNIX, в отличие от VMS, не привязывает вас к конкретному поставщику. Кроме того, в UNIX есть сети и средства связи для всех наших основных требований: Ethernet, TCP/IP, DECnet (нашей первоначальной UNIX была Ultrix-32), BITNET (UREP), RS-232 и терминалы LAT, Kermit. Да и сама UNIX имеет множество преимуществ: очень мощная среда разработки приложений для опытных программистов, программируемая оболочка, конвейерная обработка программ, простые, но мощные утилиты.

UNIX, однако, общеизвестен своей краткостью, загадочностью и недружелюбностью, особенно по отношению к начинающим пользователям компьютеров. VMS, хотя и не имеет COMND JSYS DEC-20, безусловно, более дружелюбна, чем UNIX, и слишком многословна. Поэтому мы не без некоторых опасений приступили к преобразованию.

Многие из нас, пользователей DEC-20, сопротивлялись переменам. Знакомство, к лучшему или к худшему, часто более привлекательно, чем неопределенность. Но переход на UNIX заставил нас отказаться от некоторых функций, которые изначально привлекли нас к DEC-20.

«Дружественная» оболочка TOPS-20 Exec, которая оказывает помощь тем, кто в ней нуждается, но не наказывает опытных пользователей, вероятно, является той функцией, которую упускали больше всего. В UNIX большинство команд представляют собой программы, которые, как предполагается, имеют в качестве аргументов только параметры или имена файлов. Это означает, что вы не можете иметь «?» для команд и аргументов в оболочке, поскольку программы, которые будут действовать по запросу о помощи, еще даже не начали работать. Это противоположность TOPS-20, где большинство основных функций встроены в exec, но это не позволяет объединять краткие программы из стандартных блоков, как это делает UNIX.

В качестве примера радикального различия между философией TOPS-20 и UNIX предположим, что вы хотите создать процедуру, которая будет создавать список каталогов, сортировать его в обратном порядке по размерам файлов и форматировать список на пронумерованные страницы с тремя столбцами на каждую. страница, пригодная для печати. В TOPS-20 вам придется потратить неделю на написание программы на языке ассемблера, чтобы сделать все это. В UNIX инструменты уже есть, и их нужно только скомбинировать нужным образом:

лс -с | сортировать -r | пр-3

Это делает UNIX довольно привлекательным. Но программа DEC-20, однажды написанная, будет содержать встроенную справку, дополнение команд и имен файлов и т. д., тогда как процедуру UNIX могут использовать только те, кто точно знает, что делает. Если вы набрали «ls -s | sort», но не знаете, какой вариант сортировки подходит, ввод вопросительного знака в этот момент не принесет никакой пользы, поскольку программа сортировки еще не запущена.

DEC-20 (как и большинство распространенных операционных систем) использует команды и имена файлов, независимые от регистра. Однако зависимость от регистра — это особенность UNIX, которую энергично защищают ее сторонники. Это может сбить с толку пользователей других операционных систем. В целом команды UNIX сильно отличаются от команд, используемых в других системах. Даже если бы в DEC-20 не было справочного меню по запросу, средний пользователь, вероятно, догадался бы, какие команды нужно вводить: DELETE для удаления файла, COPY для копирования файла, RENAME для переименования файла и т. д. Как удалить файл в UNIX? УДАЛИТЬ? Нет…. УДАЛИТЬ? Нет, это «рм» (только маленькими буквами!).

Как вы могли это узнать, не имея под рукой руководства? Даже если вы знали о «man -k» (поиск по ключевому слову в онлайн-руководстве), UNIX не окажет вам особой помощи: «man -k delete» не дает ничего значимого, как и «man -k delete». . Но, по крайней мере, «rm» несколько напоминает слово «удалить», и действительно, команда «man -k удалить» раскрыла бы неуловимую команду (в ранних версиях UNIX для этой команды было еще более неуловимое имя: dsw, аббревиатура от «do swedanya», по-русски означает «до свидания», транслитерировано на польский или, возможно, немецкий язык; это не единственное место, где работал цензор… Текущие «стандартные» версии UNIX не имеют команды «помощь», но в более ранние выпуски,

Я (fdc) не могу вспомнить, где я нашел упоминание «до сведаньи», но, очевидно, это городская легенда. Деннис Ричи сказал в сообщении Usenet 1981 года, что настоящая этимология — «удалить из переключателей»; исходная программа dsw для PDP-7 была предшественником «rm -i» (интерактивное удаление), в которой взаимодействие обеспечивали переключатели ЦП.

Особым преимуществом TOPS-20 является сохранение нескольких поколений (версий) каждого файла, что дает возможность вернуться к более ранней версии, если последняя версия пострадала из-за человеческой ошибки, глупости или трагедии. Это, в сочетании с возможностью воскресить файл после его удаления, дает ощущение комфорта и безопасности, которое можно оценить только при переходе на более традиционную и ненадежную файловую систему. Если вы удалите файл в UNIX или создадите новый файл с тем же именем, что и существующий, старый файл просто исчезнет. Команда «rm *» в UNIX слишком мощная и слишком тихая. Да, он сделал то, что вы сказали, но откуда он узнал, что вы имели в виду именно то, что сказали? UNIX не спасает пользователей от самих себя.

Еще одной важной особенностью TOPS-20 является логическое имя устройства, которое может быть задано в бесконечном разнообразии как для системы в целом, так и для каждого отдельного пользователя. Каждое логическое имя может указывать на конкретное устройство и/или каталог или на целый ряд из них, которые необходимо искать по порядку. Они встроены в саму операционную систему, тогда как понятия PATH и CDPATH являются второстепенными, привитыми к оболочке UNIX, недоступными из программ и неприменимыми за пределами их ограниченных сфер работы.

Кроме того, у нас есть языки программирования, которые больше не будут доступны — ALGOL (60 и 68), APL, BASIC, BCPL, BLISS (10, 11 и 36), CPL (и «настоящий» PL/I), ECL, FOCAL. , ППЛ, ПАРУС, СИМУЛА, СНОБОЛ, … И ТЕКО! И MACRO, и Midas, и Fail… На самом деле, мало кто пропустит что-либо из этого, за возможным исключением APL (используется в некоторых классах) и SNOBOL (который все еще можно найти для UNIX на некоторых платформах).

Разумеется, все наши собственные приложения, написанные на ассемблере, пришлось переделывать под UNIX: ввод и управление идентификаторами пользователей (в отличие от редактирования файла passwd), учет, ограничения пользователей (ACJ, Omega). И одна особенность, без которой мы никогда больше не сможем жить, — это MM, мощная система управления почтой, которую одинаково могут использовать как новички, так и эксперты.

Положительным моментом является то, что мы не собираемся отказываться от EMACS, Scribe, TeX, Kermit или утилит TCP/IP Telnet и FTP. Все эти программы в той или иной форме доступны для UNIX. Некоторые из реализаций UNIX являются определенными улучшениями, например GNU EMACS от Free Software Foundation, без ограничений памяти TOPS-20 EMACS. Для наших инженеров также имеется высококачественный язык Fortran от DEC и, конечно же, все среды программирования C и LISP для студентов, изучающих компьютерные науки, и других разработчиков программного обеспечения, а также набор мощных утилит для работы с текстом, таких как sed, grep, awk, lex и yacc. , функции которых должны быть очевидны из их названий.

Установка VAX прошла намного быстрее, чем обычная установка DEC-20. Производительность 8650 была довольно быстрой, а надежность превосходной. Через год 8650 был продан, а второй DEC-2065 был продан DEC на VAX 8700. Модель 8700 примерно такой же мощности, как и 8650, но, в отличие от 8650, совместима с новыми устройствами BI. и возможность обновления до более крупной модели VAX, если она выдохнется.

Однако оказалось, что, когда пришло время расширения, было более рентабельно купить системы Sun UNIX, чем модернизировать 8700 до более крупной системы VAX. Это выбор, которого вы не получите с проприетарной операционной системой, такой как TOPS-20, VMS и т. д. Преобразование с VAX на SUN требует некоторого «отступления» (например, DECnet), но не в такой степени, как переход от DEC. -20 для VAX, а взамен вы получаете очень мощную машину, занимающую небольшую часть площади VAX — такой, какой должен был быть Jupiter, но с UNIX вместо TOPS-20.

[ Вверх ] [ Далее ] [ Предыдущий ]

ОСНОВНЫЕ ПРОБЛЕМЫ КОНВЕРСИИ

[Помните: это было написано в 1988 году.]

Большим вопросом при переходе на UNIX было обучение пользователей. UNIX не помогает пользователям так, как TOPS-20. Нет COMND-стиля? помогите, даже команды «помощь» нет. Сами команды не имеют интуитивно понятных названий: пользователю сложно догадаться, что «mv» — это команда для переименования файла, «cat» — для ввода файла и т. д. Откуда пользователи узнают, как реагировать на отключение звука? «$» (или «%») смотрит им в лицо? Стоит ли нам написать для них удобную оболочку? Или стопки учебных пособий и справочных руководств?

Несмотря на всю свою загадочную краткость, UNIX стала очень популярной. Системы UNIX работают на компьютерах всех типов, от ПК до суперкомпьютеров. Следовательно, компьютерные книжные магазины переполнены книгами типа «Научитесь UNIX». Мы считали, что какой бы загадочной и недружелюбной ни была сама UNIX, ее не следует менять. В противном случае мы потеряем совместимость с другими системами UNIX, книгами и статьями, оставим себя открытыми для кошмара обслуживания и подвергнем наших пользователей неприятному сюрпризу, если они когда-нибудь столкнутся с настоящей системой UNIX.

Еще одна проблема — почтовая система. В качестве почтового агента пользовательского уровня вы можете выбрать почту UNIX или GNU EMACS RMAIL. Почта UNIX примитивна и неинтуитивна, а RMAIL доступен только тем, кто знает EMACS. Преимущество RMAIL заключается в единообразном интерфейсе (нет необходимости входить в редактор и выходить из него), но у него относительно ограниченный набор команд.

Наши пользователи очень привыкли к электронной почте, во многом благодаря мощности, удобству и дружелюбию ММ. Многие из крупнейших пользователей ММ — преподаватели или администраторы, которым не нужно изучать новую почтовую систему. Но такая мощная программа, как MM, требует большого количества команд, а когда у вас много команд, вам нужна встроенная справка, которая предоставляется бесплатно на DEC-20. Подобные комментарии относятся и к другим сложным программам, например (в нашей системе) программам ввода и управления идентификаторами пользователей, интерфейсу оператора (как OPR на DEC-20) и т.д.

По этой причине мы решили «превратить нашу новую систему в нашу любимую старую», написав пакет COMND для UNIX. Этот пакет, CCMD, стартовал как часть проекта Hermit, исследовательской работы Колумбийского университета, финансируемой DEC в 1983-87 годах. Мы пытались разработать сетевую архитектуру, которая позволила бы различным типам ПК — IBM, Rainbow, Pro-380, VAXstation, SUN, Macintosh и т. д. — получать доступ к файлам и сервисам наших мейнфреймов DEC-20 и IBM в согласованном и прозрачный способ. Проект в конечном итоге провалился, потому что технологии прошли мимо нас (дешевые соединения и шлюзы Ethernet и Token Ring, Sun NFS, файловые серверы Macintosh на базе VAX и т. д.).

CCMD, полностью написанный на C, выполняет все функции COMND и многое другое, анализирует данные из терминала, файла, перенаправленного стандартного ввода или строки в памяти. Он не ориентирован на какую-либо конкретную клавиатуру или экран. Это не благоприятствует ни новичку, ни эксперту. Он работает под управлением 4.xBSD, Ultrix, AT&T System V, SunOS и MS-DOS и легко переносится на VAX/VMS и любую другую систему с компилятором C.

CCMD — это полноценная реализация COMND, позволяющая связывать FDB (например, анализировать имя файла, число или дату), перенаправлять ввод команд и т. д. Дополнения к COMND JSYS DEC-20 включают списки помощи «?» для сопоставления имен файлов, частичное завершение имени файла (до первого символа, который не является уникальным), очень гибкий анализатор времени и даты и дополнительные типы данных.

Используя CCMD, программисты Колумбии смогли написать клон DEC-20 MM полностью на C. Он обладает всеми функциями DEC-20 MM, а также некоторыми другими. Он поддерживает различные форматы почтовых файлов, включая DEC-20, Babyl (RMAIL) и mbox (почта UNIX). В качестве системы доставки он использует UNIX sendmail и должен быть адаптирован к службам доставки систем, отличных от UNIX.

Авторы — и удивительное количество других людей во всем мире — до сих пор используют Columbia MM в качестве своего почтового клиента (но, увы, не в Columbia с 2015 года). Его можно собрать и установить (по крайней мере) на Linux, FreeBSD, OpenBSD, NetBSD, Solaris и SunOS. Вы можете найти его ЗДЕСЬ .

[ Вверх ] [ Далее ] [ Предыдущий ]

ЗАКЛЮЧИТЕЛЬНЫЕ СЛОВА…

[Помните: это было написано в 1988 году.]

Колумбия сильно децентрализована и сталкивается с дефицитом бюджета, свойственным всем высшим учебным заведениям. Не существует центрального приказа размещать на каждом столе дорогие рабочие станции, соединенные гигабитными оптоволоконными сетями. Студенты, преподаватели и сотрудники по большей части используют свои собственные или ведомственные средства, чтобы приобрести лучший компьютер, который они могут использовать, обычно IBM PC или Macintosh с интерфейсом RS-232. Большинство пользователей общаются лишь время от времени через коммутируемое соединение или принося дискету в общедоступную компьютерную лабораторию, где компьютеры подключены к сети или лазерному принтеру.

Поскольку ПК становятся дешевле и мощнее, что остается делать централизованно? Есть те, кто утверждает, что все, что может сделать VAX или DEC-20, можно сделать и на ПК. Единственными исключениями могут быть очень большие приложения, общие и/или большие и/или постоянно меняющиеся базы данных и связь в целом — глобальные сети, почта, общие библиотеки программ, доски объявлений, конференции и т. д.

Но массовая децентрализация вычислений означает огромное дублирование усилий и затрат на оборудование, лицензии на программное обеспечение и обслуживание. Каждый становится системным менеджером, выполняющим резервное копирование, устранение неполадок, установку и отладку программного обеспечения, консультирование, обучение, поиск запчастей. Исследователи, которые когда-то горячо искали лекарство от рака или СПИДа, теперь вертят DIP-переключатели, запускают утилиты Norton на своих сломанных жестких дисках и просматривают последние страницы BYTE в поисках выгодных предложений. У каждого человека или группы может быть уникальная коллекция программного и аппаратного обеспечения, что значительно усложняет обучение, совместную работу и выполнение большинства других функций, чем во времена разделения времени. А место для компьютерного оборудования необходимо найти практически в каждом офисе и комнате общежития, а не в одном центральном помещении. Когда-нибудь, бюджетники могут заметить совокупный эффект от всех этих распределенных вычислений, и маятник начнет качнуться в другую сторону. Что означает фраза «экономия за счет масштаба»?

Несколько лет назад, во время топливного кризиса, в газете была статья о возвращении клиперов… Большие системы DEC, клиперы эпохи разделения времени, никогда не вернутся, но они будут жить в программном обеспечении, которое они породили. — EMACS, TeX, Scribe, Spell, MM, Kermit, расширенные диалекты LISP и так далее. Тем временем, пока компьютерная индустрия изо всех сил пытается превратить ПК в многопользовательские системы и заново изобрести многопроцессорность, безопасность и другие забытые концепции, она могла бы с пользой сделать паузу и оглянуться назад на прошлые десятилетия, когда стоимость и ограничения компьютерного оборудования вынудили дизайнеров и программистов будь… ну, умнее.

[ Вверх ] [ Далее ] [ Предыдущий ]

ЭПИЛОГ

(январь 2001 г.)

Сегодня, когда вы можете зайти в обычный розничный магазин и купить компьютер, мощность которого в 10 раз выше (и в 100 раз больше основной памяти, и в 1000 раз больше емкости диска) самого большого и быстрого KL10, когда-либо созданного, менее чем за 1000 долларов, подключите его к обычную настенную розетку и телефонную розетку (или кабельную приставку и т. д.) и через несколько минут оказаться в Интернете с полноцветной графикой, видео, звуком и бог знает чем еще, мы можем легко забыть, как компьютеры развились из больших автономные калькуляторы с хранимой программой в «коммуникаторы». По крайней мере, для нас в Колумбийском университете перемены начались с крупных систем DEC, которые предоставили нам всем одновременно доступ к файлам, электронной почте, локальным и глобальным сетям, открывая возможности сотрудничества и общения в работе и в жизни: внутри компьютера, по всему кампусу и по всему миру.

Вскрытие PDP-10 было долгим и болезненным (кто убил его и почему, как он мог выжить и каким был бы мир сегодня, если бы это произошло), но те, кому все еще хотелось бы заглянуть в захватывающие времена 1970-х годов, и 80-е годы, когда компьютеры впервые стали культурным явлением, и средство коммуникации теперь может сделать это благодаря нескольким проектам программной эмуляции PDP-10, находящимся в стадии разработки. Возможно, величайшим наследием тех дней является сегодняшнее движение за открытое программное обеспечение, в рамках которого разработчики по всему миру сотрудничают в проектах, начиная от операционных систем (Linux, FreeBSD и т. д.) и заканчивая приложениями всех видов, как в оригинальном PDP-10 ARPANET. «хакеры» сделали ( жизнеспособная ли это бизнес-модель — отдельный вопрос 🙂

Между тем, многие из нас, переживших ту эпоху, сохраняют свои старые привычки, по-прежнему используя текстовые приложения, такие как EMACS и MM, вместо их модных, но трудоемких замен с графическим интерфейсом, но на платформах UNIX, таких как Linux, вместо PDP-10. Каждый раз, когда новый компьютерный вирус погружает всю планету в хаос и панику, мы этого почти не замечаем . Есть что сказать по старинке.

[ Вверх ] [ Далее ] [ Предыдущий ]

ГЛОССАРИЙ

3270 Полноэкранный блочный терминал IBM System/370
ACJ Работа по контролю доступа (ТОПС-20)
АОС Добавить один и пропустить (инструкция PDP-10)
АПЛ (Загадочный) язык программирования, Кеннет Э. Айверсон (1966)
ARPANET Сеть агентств перспективных исследовательских проектов, ставшая всемирной сетью Интернет.
АСП Подключенный вспомогательный процессор (монитор терминала IBM 360)
БАЛР Регистр ветвей и каналов (инструкция IBM 360)
БАЗОВЫЙ Базовый универсальный символьный код инструкции
ББН Болт Беранек и Ньюман, разработчики TENEX и большей части ARPANET
БИТНЕТ Сеть «потому что оно есть» (на основе ввода удаленного задания IBM)
БЛТ Блочная передача (инструкция PDP-10)
CACM Сообщения Ассоциации вычислительной техники (журнал)
CCMD Пакет COMND JSYS, написанный на C
CCNET Сеть компьютерных центров (на базе DECnet)
КВПБ Общая файловая система (TOPS-20)
КОМНД Мнемоника команды JSYS (TOPS-20).
КП/М Программа управления/микрокомпьютер (ранняя ОС для 8-битных ПК)
Процессор Центральное процессорное устройство
СТСС Совместимая система разделения времени MIT для IBM 7094
CU20B Второй и самый долгоживущий DEC-20 Колумбийского университета.
ДДТ Инструмент динамической отладки (PDP-10) Первоначально лента отладки DEC (PDP-1)
ДЕК Digital Equipment Corporation, 1957–1998 (куплена в 1998 году Compaq, затем HP в 2001 году)
ДЕКАБРЬ-20 DECSYSTEM-20, PDP-10, специально разработанный для работы с TOPS-20.
ДЕКНЕТ Собственный сетевой пакет DEC для большинства ее ОС.
Ду20 Полнокабинный интерфейс связи PDP-11/34 для DEC-20.
DN200 Терминальный/принтерный концентратор PDP-11/34 в корпусе для DEC-20.
ДЕЛЬФИН Незавершенное продолжение KL10.
ЭМАКС Редактирование макросов: полноэкранный редактор Ричарда Столлмана, изначально основанный на TECO.
ESC Управляющий символ Escape (Altmode) (ASCII 27)
НЕУДАЧА Быстрый ассемблер PDP-10 Ральфа Горина
ФОРТРАН Переводчик формул: первый язык программирования высокого уровня (1957 г.)
FTP Протокол передачи файлов (ARPANET/Интернет)
HASP Хьюстонская программа автоматической намотки
HRROI Половина справа на право сразу (инструкция PDP-10)
IEEE Институт инженеров по электротехнике и электронике
ИЛДБ Указатель приращения и загрузочный байт (инструкция PDP-10)
ЕГО Несовместимая система разделения времени (для PDP-10 в Массачусетском технологическом институте; игра слов на CTSS (см.))
JCL Язык управления заданиями (IBM OS/360)
JRST Переход и восстановление (инструкция PDP-10)
JSYS Переход в систему (инструкция PDP-10)
ЮПИТЕР Еще одно так и не завершенное продолжение KL10.
JVNCNET Сеть суперкомпьютерных центров Джона фон Неймана (Принстон)
КА10 Первая модель PDP-10, работает только с TOPS-10.
КИ10 Вторая модель PDP-10, работает только с TOPS-10.
КЛ10 Третья и самая большая/самая совершенная модель PDP-10, работает на TOPS-10 и -20.
КС10 Четвертая, небольшая модель PDP-10, работает на TOPS-10 и -20.
ЖКГ Большая компьютерная группа DEC, отвечающая за PDP-10.
ЛИСП Язык обработки списков (Джон Маккарти, Стэнфордский университет, 1960)
МАКРО Семейство ассемблеров DEC: MACRO-10, MACRO-11, MACRO-20 и т. д.
МИДАС Ассемблер PDP-10 MIT
ПЕСКАРЬ Настольный PDP-10 (так и не был завершен)
Массачусетский технологический институт Массачусетский Институт Технологий
мм Mail Manager (клиент электронной почты DEC-20 и более поздних версий UNIX)
MS-DOS Дисковая операционная система Microsoft
НКП Программа управления сетью (ранний протокол ARPANET заменен TCP/IP)
NJE Ввод сетевого задания
НАЙСЕРНЕТ Сеть инженеров и исследований штата Нью-Йорк
ПАРК Исследовательский центр Xerox в Пало-Альто
АТС Частная филиальная биржа
ПДП Программируемый процессор данных (PDP-7, PDP-8, PDP-10, PDP-11 и другие)
РА81 Более поздняя модель, больший запечатанный диск (но все еще размером со стиральную машину).
RAID Отладчик PDP-10 Ральфа Горина
РЖЭ Удаленный ввод задания (считыватель карт/имитация линейного принтера)
РП04 Самый распространенный дисковод PDP-10 середины-конца 1970-х годов.
РП06 Самый распространённый дисковод PDP-10 конца 1970-х — начала 80-х годов.
РСКС Подсистема удаленной буферизации связи (протоколы BITNET)
РТС/Э Разделение ресурсов с разделением ресурсов / Расширенная операционная система DEC для PDP-11
RSX11 Руководитель реального времени DEC для PDP-11 (не аббревиатура)
RSX20F Специальная версия RSX11 для внешнего интерфейса PDP-11/40 KL10.
SOS Son Of Stopgap (линейный редактор TOPS-20)
SSIO Зона ввода/вывода самообслуживания Колумбии
TCP/IP Протокол управления передачей/Интернет-протокол
ТЕКО Текстовый редактор и корректор
АО «Техснабэкспорт» Страничная операционная система PDP-10 от BBN, предшественник TOPS-20.
ТОПС-10 Операционная система (PDP-10, DECsystem-10)
ТОПС-20 Операционная система (DECSYSTEM-20)
телетайп Телетайп или телетайп; то есть терминал или порт терминала
UNIX Популярная операционная система родом из Bell Labs (не аббревиатура)
УРЕП Версия RSCS для UNIX, позволяющая UNIX-системам участвовать в BITNET.
ВАКС Virtual Address Extended, 32-битное продолжение DEC PDP-11.
ВМС Система виртуальной памяти, операционная система DEC для VAX.
VT100 Видеотерминал DEC с плавной прокруткой верхнего и нижнего регистра 24×80 (1977)
ЖДЕТ Стэнфордская операционная система PDP-10 («она ЖДЕТ вас по рукам и ногам»)
XOFF Control-S (ASCII 19), используется для управления потоком данных хоста/терминала.
XON Control-Q (ASCII 17), используется для управления потоком данных хоста/терминала.

[ Вверх ] [ Далее ] [ Предыдущий ]

БЛАГОДАРНОСТИ

[1] Боб Клементс, BBN (2001).

[2] Джо Демпстер, Декабрь (1988).

[3] Марк Криспин, Вашингтонский университет (2001).

[ Вверх ] [ Далее ] [ Предыдущий ]

ПРИМЕЧАНИЯ

Компьютерный музей в Бостоне сейчас не существует, как и Digital Equipment Corporation (DEC), его первоначальный спонсор. Его коллекция переехала (надеемся, полностью) в Исторический центр Компьютерного музея в Моффет-Филд, Калифорния*:

Home

где поиск «360/91» выдаёт следующее:
Название артефакта: Консоль оператора System 360 Model 91

Производитель: Международная корпорация Business Machines (IBM)

Номер модели: 360/91 или 91

Категория: Преобразователь: панель управления

Год: около 1968 г.

Центр истории: ID № X01321.1997

  1. Фото нет, но, если память не изменяет, оно было около 4 футов в высоту и 6 футов в ширину, и примерно 16 лампочек на квадратный дюйм. Табличка «IBM 360/91» была украдена, пока он ждал получения. Остальную часть машины распилили бензопилой и бросили в кислотные ванны для извлечения золота.
  2. TECO (текстовый редактор и корректор) был одновременно редактором и языком для написания редакторов. При использовании «голого» командного языка он был разреженным и загадочным, похожим на ДДТ. Если использовать его в качестве основы для продуктов «более высокого уровня», таких как EMACS, его мощь можно легко оценить. «Занимайтесь любовью, а не войной!» было привычным скандированием на демонстрациях против войны во Вьетнаме в 1960-х и 70-х годах .
* А затем переехал в Маунтин-Вью, Калифорния, в 2002 году.
  1. Для тех, кто не помнит, RP06 размером с посудомоечную машину , весит 600 фунтов и использует съемный дисковый блок, вмещающий около 175 мегабайт. В 1977 году это была потрясающая новость, поскольку он удвоил емкость своего предшественника RP04 .
  2. DDT восходит к PDP-1 (где оно означало DEC Debugging Tape, поскольку оно было выполнено с бумажной ленты), примерно в 1960 году, через PDP-6 (который был предшественником PDP-10) и происходит от более раннего средство уничтожения ошибок, FLIT (пленка с допросами на флексописателе) на предшественнике PDP-1, TX-0, на 2-м этаже здания 26 Массачусетского технологического института. И DDT, и TECO изначально создавались в Массачусетском технологическом институте для PDP-1 [1]. DDT продолжает жить в современных отладчиках, таких как GDB, где сохранилось большинство его концепций, если не уникальный пользовательский интерфейс.
  3. Постоянный поток персонажей вызвал сбой; система восстановилась, но устойчивый поток продолжался; система снова дала сбой, и так всю ночь.
  4. 8-битные команды также возможны, но не обязательны. Первоначально они производились с «мета»-клавишей, которая была доступна на некоторых избранных терминалах, таких как Datamedia 2500. Но примерно с 1990 года стала более важной возможность вводить 8-битные символы данных, такие как акцентированные символы. буквы итальянского и испанского языков; специальные буквы немецкого и исландского языков; нелатинские буквы русского, греческого, еврейского и так далее.
  5. Новички в компьютерных технологиях могут не оценить отделение редактирования текста от форматирования текста или преимущество внедрения в текст команд форматирования простого текста по сравнению с ручным выделением этого слова жирным шрифтом, этого слова курсивом и т. д. в текстовом процессоре. Но здесь не место это объяснять.
  6. С тех пор право собственности на Scribe несколько раз переходило из рук в руки, и его уже нелегко закрепить, но, как сообщается, [2001 г.] они все еще занимаются бизнесом.
  7. Это был слоган LCG, призванный убедить своих клиентов в том, что линейка 36-битных компьютеров будет жизнеспособной на протяжении 1980-х годов. Чашки, футболки, наклейки и другие безделушки с этим слоганом и логотипом парусника раздавались в огромных количествах примерно в 1980-82 годах.

[ Вверх ] [ Далее ] [ Предыдущий ]

БИБЛИОГРАФИЯ

  1. Аллен, Джон, Анатомия Лиспа , McGraw-Hill, ISBN 007001115X, 1978.
  2. Боброу, Д.Г., и Дж.Д. Берчфилд, Д.Л. Мерфи, Р.С. Томлинсон, TENEX, Система страничного разделения времени для PDP-10 , CACM, том 15, № 3, март 1972 г.
  3. да Круз, Фрэнк, Кермит, Протокол передачи файлов , Digital Press, 1987.
  4. Справочное руководство по аппаратному обеспечению DECsystem-10/DECSYSTEM-20 , том I, центральный процессор, Digital Equipment Corporation, EK-10/20-HR-001, 1978 г.
  5. Справочное руководство по мониторингу вызовов TOPS-20 , AA-FV52A-TM (например, для TOPS-20 6.1, сентябрь 1985 г.).
  6. Справочное руководство по ассемблеру MACRO , AA-4159B-TM, апрель 1977 г.
  7. Журнал приложений и исследований DECsystem-10 (без даты; вероятно, 1973 или 1974 год и, вероятно, единственный выпуск); предшественник цифрового технического журнала.
  8. Джаноне, Кристина, редактор журнала Kermit News , периодически публикуемого проектом Кермит, Колумбийский университет, 612 West 115th Street, Нью-Йорк, штат Нью-Йорк 10025.
  9. Горин, Ральф, Введение в программирование на языке ассемблера DECSYSTEM-20 , Digital Press, 1981.
  10. Кнут, Дональд Э., Искусство компьютерного программирования , …
  11. Кнут, Дональд Э., TeX и Metafont , Digital Press, 1979 (теперь предмет коллекционирования).
  12. Мерфи, Дэн, Организация и управление складами в АО «Техснабэкспорт» , Материалы конференции AFIPS Vol. 41, 1972.
  13. Петерсон, Джеймс Л., Компьютерные программы для обнаружения и исправления орфографических ошибок , CACM, V23 # 12, декабрь 1980 г.
  14. Столлман, Ричард М., EMACS, расширяемый, настраиваемый, самодокументирующийся редактор дисплеев , Уведомления ACM SIGPLAN, V16 # 6, июнь 1981 г.
  15. Стил, Гай Л., Дон Вудс, Рафаэль Финкель, Марк Криспин, Джефф Гудфеллоу, Ричард Столмен, Словарь хакера , Harper & Row, 1983.
  16. Хафнер, Кэти и Мэтью Лайон, Talking Headers (история электронной почты), журнал Washington Post, 4 августа 1996 г.

[ Вверх ] [ Предыдущий ]

ССЫЛКИ

Все эти ссылки действительны по состоянию на 9 февраля 2019 г.; Еще 14 человек были удалены в тот день, поскольку сайты или страницы исчезли.

Дэн Мерфи

Википедия

Доклады Дэна Мерфи о TECO, TENEX и TOPS-20

http://tenex.opost.com/

«Техснабэкспорт» и ТОПС-20

Дэн Мерфи, IEEE Annals of the History of Computing , том 37, номер 1, январь-март 2015 г., стр. 75–82.

ТЕНЭКС (операционная система) , Википедия.

Обзор непосредственного предшественника TOPS-20.

KLH-10: эмулятор KL10/KS10 Кена Харренстиена (впервые выпущен 10 ноября 2001 г.):

http://klh10.trailing-edge.com ( ОБЪЯВЛЕНИЕ ).

Эмулятор SIMH PDP-1/4/7/8/9/10/11/15 Боба Супника:

http://simh.trailing-edge.com/

Планета PDP Пола Аллена (проект восстановления и сохранения PDP-10, PDP-11, PDP-8)

http://www.pdpplanet.com

История вычислений в Колумбийском университете:

http://www.columbia.edu/cu/computinghistory/

Языки программирования DECSYSTEM-20 (Колумбийский университет):

http://pdp-10.trailing-edge.com/mit_emacs_170_teco_1220/01/info/old-languages.info.html

http://www.columbia.edu/kermit/ftp/dec20/languages.info

DECSYSTEM 20 Руководство по программированию на языке ассемблера (Колумбия U):

http://www.columbia.edu/kermit/ftp/dec20/assembler-guide.txt

Оригинальный веб-сайт проекта Кермит:

http://www.kermitproject.org/

DECsystem-10 Кермит:

Веб-страница Кермита PDP-10

DECSYSTEM-20 Кермит:

Веб-страница Кермита PDP-10

Почтовый клиент MM и CCMD:

СКАЧАТЬ .

Фонд свободного программного обеспечения (он начался с EMACS на PDP-10):

http://www.gnu.org/

Музей истории компьютеров:

Home

Доклады Дэна Мерфи TENEX и TOPS-20:

http://www.opost.com/dlm/tenex/index.html

ITS — несовместимая система разделения времени

http://www.cosmic.com/u/mirian/its/

Страницы истории Джона Маккарти:

http://www-formal.stanford.edu/jmc/history/

Unix для пользователей TOPS-20, Нельсон Биб (1987)

http://www.math.utah.edu/~beebe/publications/1987/t20unix.pdf

Веб-кольцо PDP-10:

http://n.webring.com/hub?ring=pdp10&id=1&hub

Кибермузей Гордона Белла для корпорации цифрового оборудования:

http://research.microsoft.com/~gbell/Digital/DECMuseum.htm

Архив программного обеспечения PDP-10 Тима Шоппы:

http://pdp-10.trailing-edge.com/

36 бит Джо Смита навсегда!:

http://www.inwap.com/pdp10/

Фотографии Tymshare PDP-10 (KA, KI, KL) 1980 года:

http://www.inwap.com/pdp10/tymshare/BubbRoad/

Публичный доступ SDF TWENEX::

http://twenex.org

GCC для PDP-10:

http://pdp10.nocrew.org/gcc/

Дополнительный глоссарий (в основном терминов и сокращений RJE/NJE):

http://publib.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/IEA1M503/ГЛОССАРИЙ

Инфо-Кермит Дайджест

Архивы информационного дайджеста Кермита (1983–1995)

Группа новостей Кермита:

новости:

Архив comp.protocols.kermit.misc (1994-2006 гг.)