Дартмутская система разделения времени

редактировать
Дартмутская система разделения времени
Разработчик Дартмутский колледж
Написано на Dartmouth BASIC, АЛГОЛ 60, FORTRAN, COBOL, APL, DXPL, DYNAMO, LISP, MIX, PL / I, SNOBOL
Рабочее состояниеСнято с производства
Первоначальный выпуск1964; 56 лет назад (1964 год)
Платформысерии GE-200, серии GE-635, Honeywell 6000 серии
Пользовательский интерфейс по умолчанию Интерфейс командной строки
Официальный сайтdtss.dartmouth.edu

The Dartmouth Time-Sharing System (DTSS ) была операционной системой, впервые разработанной в Дартмутском колледже в период с 1963 по 1964 год. Это была первая успешная крупномасштабная система с разделением времени, которая была реализована и была также система, для которой был разработан язык BASIC. DTSS непрерывно разрабатывался в течение следующего десятилетия, повторно внедрялся на нескольких поколениях компьютеров и, наконец, был закрыт в 1999 году.

Содержание
  • 1 Ранняя история
  • 2 Дизайн пользовательского интерфейса
  • 3 Взаимоотношения GE и Dartmouth
  • 4 Dartmouth Time Sharing System, версия 2
  • 5 Сеть Kiewit
  • 6 Использование
  • 7 DTSS сегодня
  • 8 См. Также
  • 9 Ссылки
Ранняя история
Схема оборудования DTSS, Октябрь 1964 г. GE-235 Мы поем тебе хвалу

Профессора Джон Кемени и Томас Курц в Дартмутском колледже приобрели Royal McBee Компьютер LGP-30 примерно в 1959 году, который был запрограммирован студентами на ассемблере. Курц и четыре студента запрограммировали компилятор Dartmouth ALGOL 30, реализацию языка программирования ALGOL 58, который двое из студентов затем развили в язык SCALP (Self Conolated ALGOL Processor). 1962-1964 гг. Кемени и первокурсник Сидни Маршалл совместно создали DOPE (Дартмутский чрезмерно упрощенный эксперимент по программированию), который использовался на больших курсах для первокурсников.

Курц обратился к Кемени либо в 1961, либо в 1962 году со следующим предложением: все студенты Дартмута будут иметь доступ к вычислениям, он должен быть бесплатным и открытым, и это может быть достигнуто путем создания системы разделения времени (о которой Курц узнал от коллеги Джона Маккарти в MIT, который предложил: «Почему бы вам, ребята, не использовать разделение времени?»). Хотя было заявлено, что DTSS был вдохновлен системой разделения времени на основе PDP-1 в Bolt, Beranek and Newman, нет никаких доказательств того, что это правда.

В 1962 году Кемени и Курц представили в NSF предложение по разработке новой системы разделения времени (которое в конечном итоге было профинансировано в 1964 году). У них была достаточная уверенность в том, что и Дартмут, и NSF поддержат систему, что они подписали контракт с GE и начали предварительную работу в 1963 году, до того как предложение было профинансировано. В частности, они оценили компьютеры-кандидаты от Bendix, GE и IBM и остановились на системе GE-225 в паре с DATANET-30 коммуникационный процессор. Этот двухпроцессорный подход был неортодоксальным, и Кемени позже вспоминал: «В то время многие эксперты в GE и других странах пытались убедить нас, что путь решения с двумя компьютерами был расточительным и неэффективным». По сути, DATANET-30 предоставлял пользовательский интерфейс и планировщик, в то время как пользовательские программы выполнялись в GE-225.

Его внедрение началось в 1963 году студенческой командой под руководством Кемени и Курца с целью обеспечения легкого доступа к вычислительным средствам для всех членов колледжа. Компьютеры GE-225 и DATANET-30 прибыли в феврале 1964 года, начали работать в середине марта, а 1 мая 1964 года в 4 часа утра система начала работу. Осенью 1964 года сотни студентов-первокурсников начали использовать систему через 20 телетайпов, а в средней школе Ганновера доступ через еще один телетайп; позже той же осенью компьютер GE-225 был заменен на более быстрый компьютер GE-235 с минимальными проблемами. К лету 1965 года система могла поддерживать 40 одновременных пользователей.

Документ Дартмута от октября 1964 года, позже исправленный GE, описывает общую архитектуру DTSS:

«Программа в Datanet-30 разделена на две части: часть реального времени и часть запасного времени. Часть реального времени вводится через прерывание, управляемое часами, 110 раз в секунду для сканирования строк телетайпа. Когда символы завершены, часть реального времени собирает их в сообщения, и, когда встречается символ «возврата», интерпретирует сообщение. Если это строка в программе, ничего не делается. Если сообщение является командой, задача в свободное время для начала выполнения команды настраивается и вставляется в список свободного времени. Если не хватает времени для завершения этой настройки, часть реального времени завершит настройку в течение следующего периода реального времени. Часть свободного времени выполняет задания в свободное время, которые включают, в основном, операции с дисками и определенные операции телетайпа. В GE-235 часть - это резидентная система компилятора, которая действует как транслятор, и резидентная исполнительная процедура для управления операциями ввода-вывода диска и для выполнения других функций. Исполнительная система позволяет одновременно использовать карточное оборудование, ленточные накопители и высокоскоростной принтер во время разделения времени посредством обработки прерываний. Доступны два алгебраических языка, BASIC и ALGOL, а FORTRAN запланирован на сентябрь 1965 года. Эти однопроходные компиляторы довольно быстрые, обычно требуется от 1 до 4 секунд на компиляцию. "

Дизайн пользовательского интерфейса

Кемени и Курц заметил, что «любое время отклика, которое в среднем составляет более 10 секунд, разрушает иллюзию наличия собственного компьютера», поэтому в дизайне DTSS упор делался на немедленную обратную связь. Таким образом, многие из его пользователей полагали, что их терминал был компьютером и что, как писал Кемени, « машина предназначена только для того, чтобы служить ему, и что он имеет полный контроль над всей системой ».

Из-за образовательных целей простота использования была приоритетом в разработке DTSS. В ней реализована первая в мире Интегрированная среда проектирования (IDE). Любая строка, введенная пользователем и начинающаяся с номера строки, была добавлена ​​в программу, заменяя любую ранее сохраненную строку с тем же номером; все остальное принималось как команда и немедленно выполнено. Строки, состоящие из солей Элементы номера строки не были сохранены, но были удалены все ранее сохраненные строки с тем же номером. Этот метод редактирования предоставил простую и удобную услугу, позволяющую использовать большое количество телетайпов в качестве оконечных устройств для системы разделения времени Дартмута.

IDE-команды включены

  • КАТАЛОГ - для вывода списка ранее названных программ в хранилище
  • LIST - для отображения текущей программы в памяти
  • NEW - для наименования и начать запись программы в памяти
  • СТАРЫЙ - чтобы скопировать ранее названную программу из памяти в память
  • ПЕРЕИМЕНОВАТЬ - чтобы изменить имя программы в памяти
  • RUN - на скомпилировать и выполнить текущую программу в памяти
  • SAVE - для копирования текущей программы из памяти в хранилище
  • SCRATCH - для очистки содержимого текущей программы из памяти
  • UNSAVE - для удаления текущей программы из хранилища

Пользователи часто считали эти команды частью языка BASIC, но на самом деле они были частью системы разделения времени и также использовались при подготовке АЛГОЛА или FORTRAN через терминалы DTSS.

Отношения GE и Дартмута

Кемени и Курц изначально надеялись, что GE вступит в исследовательское партнерство, и с этой целью Курц и студент Энтони Кнапп написали документ о предлагаемой ими конструкции системы, который они были представлены в офис GE в Фениксе в 1962 году. Однако GE отклонила партнерство, и ее предложение от октября 1962 года Дартмуту было оформлено исключительно как коммерческая продажа. Тем не менее, GE и Dartmouth продвигали действующую Dartmouth Time Sharing System в октябре 1964 года на Fall Joint Computer Conference в Сан-Франциско, с тремя телетайпами, подключенными к системе Dartmouth в Ганновере.

From С декабря 1964 по январь 1965 года двое студентов из Дартмута установили рабочие копии DTSS и BASIC на компьютерах GE в Фениксе. В начале 1965 года компания GE начала рекламировать услуги разделения времени в своей системе GE-265 (GE 235 + DATANET 30), включая BASIC и Dartmouth Algol, позже переименовав ее в систему разделения времени GE Mark I. В течение следующих нескольких лет GE открыла 25 компьютерных центров в США и других странах, обслуживая более пятидесяти тысяч пользователей.

Коллекция корпоративных историй Музея истории компьютеров описывает историю GE Mark I. таким образом:

Предшественник General Electric Information Services начинался как бизнес-подразделение в General Electric, созданное для продажи избыточного компьютерного времени на компьютерах, используемых для демонстрации клиентам. В 1965 году Warner Sinback рекомендовал им начать продавать услуги с разделением времени с использованием системы разделения времени (Mark 1), разработанной в Дартмуте на компьютере General Electric 265. Услуга мгновенно стала успешной, и к 1968 году GEIS занимала 40% рынка с разделением времени на 70 миллионов долларов. Услуга продолжала расти и со временем перешла на разработанные GE операционные системы Mark II и Mark III, работающие на больших мэйнфреймах.
Dartmouth Time Sharing System, версия 2
Компьютерное оборудование Honeywell GE 635, Киев, начало 1971 г.

С 1966-1968 годов DTSS была повторно реализована на GE 635, все еще используя DATANET-30 для управления терминалом. Система GE 635 была поставлена ​​в ноябре 1966 года. К октябрю 1967 года она предоставляла услуги, основанные на программном обеспечении Фазы I, совместно разработанном Дартмутом и GE, которое GE впоследствии продавало как систему GE Mark II. Параллельно с этой работой Дартмут приступил в 1967 году к разработке фазы II под руководством профессора Джона Кемени, при этом программирование выполнялось студентами и преподавателями. Фаза II Дартмутской системы разделения времени заменила Фазу I 1 апреля 1969 года в Дартмуте.

Как было описано в 1969 году, на новую архитектуру DTSS повлияли три критерия:

  • Опыт работы с системой 265.
  • Опубликованные концепции системы Multics.
  • Осознание ограничений возможностей сотрудников, работающих неполный рабочий день, студентов и преподавателей Дартмута.

Эта новая версия внутренне полностью отличалась от более ранней DTSS, но обеспечивала почти идентичный пользовательский интерфейс для обеспечения плавного перехода для пользователей и материалов курса. Версия 635 обеспечивала интерактивное разделение времени для почти 300 одновременных пользователей в 1970-х, что было очень большим числом в то время, и работала на одиннадцати коммерческих и академических сайтах в США, Канаде и Европе. По мере развития в 1970-х годах более поздние версии перешли на мэйнфреймы серии Honeywell 6000 (1973) и коммуникационные процессоры Honeywell 716 (1974). В 1976 году система GE-635 была заменена компьютером Honeywell 66 / 40A. Он оставался в эксплуатации до конца 1999 года.

DTSS, версия 2, включала новую форму межпроцессного взаимодействия, называемую «файлы связи». Они значительно предшествовали Unix pipe, поскольку их концептуальное происхождение было заложено в проектной документации где-то в 1967 году, и были кратко описаны на конференции 1969 года:

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

Коммуникационные файлы поддерживают операции чтения, записи и закрытия, а также синхронную и асинхронную передачу данных, произвольный доступ, запросы состояния, внеполосную сигнализацию, отчеты об ошибках и управление доступом, с точной семантикой каждого операция определяется главным процессом. Как отмечает Дуглас Макилрой : «В этом [коммуникационные файлы] были больше похожи на протокол 9P плана 9, чем на знакомый IO». Заметным применением файлов связи была поддержка многопользовательских конференций, которые вели себя как конференц-телефонные звонки и были полностью реализованы как прикладные программы пользовательского пространства.

Сеть Kiewit
Сеть Kiewit, в начале 1971

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

К 1967 году к сети Kiewit присоединились следующие средние школы: средняя школа Ганновера, школа Холдернесс, региональная средняя школа долины Маскома, Академия Кимбалл Юнион, школа Маунт-Хермон, Академия Филлипса Андовера, Академия Филлипса Эксетера, Сент-Луис. Школа Пола и Академия Вермонта. Эта группа расширилась в рамках проекта средней школы Дартмута, финансируемого NSF в 1967-1968 годах, который добавил следующие средние школы Новой Англии: Средняя школа Кейп-Элизабет, Средняя школа Конкорда, Средняя школа Хартфорда (Вермонт), Средняя школа Кина, Средняя школа Ливана. Школа, Школа Лумиса, Средняя школа Манчестера, Средняя школа Ратленда, Академия Св. Джонсбери, Средняя школа Южного Портленда и Средняя школа Тимберлейн.

С 1968-1970 гг. Дартмут добавил несколько колледжей в сеть Kiewit Network через Консорциум региональных колледжей. В их числе: Бейтс-колледж, Беркширский муниципальный колледж, Боудойн-колледж, Колби младший колледж, Миддлбери-колледж, колледж Маунт-Холиок, колледж Новой Англии, Норвичский университет, Вермонтский университет и Вермонтский технический колледж.

К 1971 году Сеть Kiewit соединила 30 средних школ и 20 колледжей в Новой Англии, Нью-Йорке и Нью-Джерси. В то время DTSS обслуживала более 30 000 пользователей, из которых только 3 000 были в Дартмутском колледже. К 1973 году сеть Kiewit Network расширилась и включила школы в Иллинойсе, Мичигане, северной части штата Нью-Йорк, Огайо, и Монреале, Канада.

Использование

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

— Кемени, 1971

57% DTSS использовались для курсов и 16% для исследований. Кемени и Курц предназначены для студентов технических и нетехнических специальностей для использования DTSS. Они договорились, что во втором триместре курса математики для первокурсников будут включены требования по написанию и отладке четырех программ Dartmouth BASIC. К 1968 году более 80% студентов Дартмута имели опыт компьютерного программирования. 80 классов включали "официальное" использование компьютера, в том числе инженерное дело, классику, географию, социологию и испанский язык.

27% DTSS использовались для повседневного использования и развлечения, что, по утверждению университета, "ни в коем случае не является считается несерьезным ", поскольку такие действия побуждали пользователей знакомиться с компьютером и не бояться его. По данным Кемени и Курца, библиотека из примерно 500 программ по состоянию на 1968 г. включала «много игр ». Они были рады обнаружить, что 40% всех преподавателей - не только тех, кто работает в технических областях - использовали DTSS, и что многие студенты продолжали использовать систему после того, как от них больше не требовалось. Кемени - к тому времени президент университета - написал в брошюре 1971 года с описанием системы, что так же, как студент может войти в Мемориальную библиотеку Бейкера и взять книгу, не спрашивая разрешения или объясняя свою цель, «любой студент может войти в Вычислительный центр Kiewit, сядьте за консоль и воспользуйтесь системой разделения времени. Никто не спросит, решает ли он серьезную исследовательскую задачу, делает домашнее задание простым способом, играет в футбол или пишет письмо своему подруга ".

К 1967/68 учебному году, помимо 2600 пользователей Дартмута, 5 550 человек в десяти университетах и ​​23 средних школах получили доступ к DTSS. К началу 1970-х в кампусе было более 150 терминалов в 25 зданиях, включая переносные блоки для пациентов в лазарете кампуса. Около 2000 пользователей заходили в DTSS каждый день; 80% студентов и 70% преподавателей использовали систему каждый год. Образовательная сеть разделения времени в Дартмуте включает пользователей с 79 терминалами в 30 средних школах и 20 университетах, включая Middlebury College, Phillips Andover, Mount Holyoke College, Годдард-колледж, Академия торгового флота США, Бейтс-колледж, Дартмутский клуб в Нью-Йорке и филиал Дартмута в Джерси-Сити, Нью-Джерси, обмен DTSS с жителями Дартмута. Поскольку BASIC не изменился, система осталась совместимой со старыми приложениями; В 1974 году Кемени сообщил, что программы, написанные им в 1964 году, все еще будут работать. Система позволяла передавать сообщения электронной почты между пользователями и чатом в реальном времени через предшественник программы Unix talk.

К 1980 году поддерживаемые языки и системы включали:

  • 7MAP - DTSS 716 Программа сборки макросов
  • 8MAP - DTSS PDP-8 Macro Программа сборки
  • 9MAP - DTSS PDP-9 Программа сборки макросов
  • АЛГОЛ - DTSS АЛГОЛ 60
  • АЛГОЛ68 - DTSS АЛГОЛ 68
  • APL - DTSS APL
  • BASIC - BASIC
  • CHESS - Шахматная программа
  • COBOL - DTSS COBOL
  • COURSE - IBM-совместимая авторская программа
  • CPS - «Полная система программирования», разработанная в Bates College
  • CROSREF - Перекрестные ссылки программ
  • DDT - Программа отладки машинного языка Honeywell 600/6000
  • DMAP - DTSS DATANET-30 Программа сборки макросов
  • DTRAC - DTSS Счет и компиляция текста Язык
  • DXPL - DTSS XPL Система записи переводчика
  • DYNAMO - DYNAMO Язык моделирования
  • FORTRAN - DTSS FORTRAN
  • GMAP - Программа сборки макросов Honeywell 600/6000
  • LISP - DTSS LISP
  • MIX - DTSS MIX Assembler
  • PILOT - Автор курса DTSS PILOT
  • PL / I - DTSS PL / I
  • PLOT - Графическая система для использования с BASIC или SBASIC
  • SBASIC - Structured BASIC
  • SIX - FORTRAN 76
  • SNOBOL - DTSS SNOBOL4
DTSS сегодня

В 2000 году проект по воссозданию DTSS системы на симуляторе, и в результате DTSS теперь доступен для систем Microsoft Windows и для компьютера Apple Macintosh.

См. также
Ссылки
Последняя правка сделана 2021-05-16 13:47:48
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте