stringtranslate.com

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

Система разделения времени Дартмута ( DTSS ) — это прекратившая свое существование операционная система, впервые разработанная в Дартмутском колледже в период с 1963 по 1964 год. [1] Это была первая успешно реализованная крупномасштабная система разделения времени , а также система, для которой был разработан язык BASIC . DTSS непрерывно развивалась в течение следующего десятилетия, была повторно реализована на нескольких поколениях компьютеров и, наконец, закрыта в 1999 году.

General Electric разработала похожую систему на основе промежуточной версии DTSS, которую они назвали Mark II. Mark II и более усовершенствованная Mark III широко использовались на их мэйнфреймах серии GE-600 и легли в основу их онлайн-сервисов . Это были крупнейшие подобные сервисы в мире на некоторое время, в конечном итоге превратившись в ориентированный на потребителя онлайн-сервис GEnie .

Ранняя история

Схема оборудования DTSS, октябрь 1964 г.
GE-235 Мы поем Тебе хвалу

Профессора Джон Кемени и Томас Курц из Дартмутского колледжа приобрели компьютер Royal McBee LGP-30 примерно в 1959 году, который был запрограммирован студентами на языке ассемблера. Курц и четыре студента запрограммировали компилятор Dartmouth ALGOL 30 , реализацию языка программирования ALGOL 58 , который двое студентов, Стивен Гарланд и Энтони Кнапп, затем развили в язык SCALP (Self Contained ALgol Processor) между 1962 и 1964 годами. Кемени и первокурсник Сидни Маршалл объединились, чтобы создать DOPE (Dartmouth Oversimplified Programming Experiment) , который использовался в больших курсах для первокурсников. [2]

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

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

Ее реализация началась в 1963 году студенческой группой [7] под руководством Кемени и Курца с целью предоставления всем членам колледжа легкого доступа к вычислительным мощностям. [8] Компьютеры GE-225 и DATANET-30 прибыли в феврале 1964 года. Двое студентов, Джон Макгичи и Майкл Буш, написали операционные системы для DATANET-30 и GE-225; Кемени внес свой вклад в компилятор BASIC . Система была введена в эксплуатацию в середине марта, а 1 мая 1964 года в 4:00 утра она начала работу. [9] Осенью 1964 года сотни студентов-первокурсников начали использовать систему через 20 телетайпов , с доступом в средней школе Ганновера через один дополнительный телетайп; [10] позже той осенью компьютер GE-225 был заменен на более быстрый компьютер GE-235 с минимальными проблемами. К лету 1965 года система могла поддерживать сорок пользователей одновременно. [11]

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

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

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

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

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

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

Пользователи часто считали эти команды частью языка BASIC, но на самом деле они были частью системы разделения времени и также использовались при подготовке программ на ALGOL [14] или FORTRAN через терминалы DTSS.

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

Кемени и Курц изначально надеялись, что GE вступит в исследовательское партнерство, и с этой целью Курц и студент Энтони Кнапп написали документ о предлагаемой ими конструкции системы, который они представили в офис GE в Фениксе в 1962 году. [16] Однако GE отклонила партнерство, и ее предложение Дартмуту от октября 1962 года было оформлено исключительно как коммерческая продажа. [17] Тем не менее, GE и Дартмут представили действующую систему разделения времени Дартмута в октябре 1964 года на Осенней совместной компьютерной конференции в Сан-Франциско, с тремя телетайпами, подключенными к системе Дартмута в Ганновере. [18]

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

В коллекции корпоративных историй Музея компьютерной истории история Mark I компании GE описывается следующим образом: [22]

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

Система разделения времени Дартмута, версия 2

Архитектура аппаратного обеспечения компьютера Honeywell GE 635 в Кивите, начало 1971 г.

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

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

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

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

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

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

Сеть Кивита

Сеть Kiewit, начало 1971 г.

Как упоминалось выше, Hanover High School была подключена к DTSS с самого начала системы. В течение следующего десятилетия многие другие средние школы и колледжи были подключены к DTSS через сеть Kiewit, названную в честь Питера Кивита, донора фондов для Kiewit Computation Center, в котором размещались компьютеры и персонал DTSS. Эти школы подключались к DTSS через один или несколько телетайпов, модемов и коммутируемых телефонных линий. [30] Учащиеся Дартмута имели бесплатный, неограниченный доступ к DTSS, но у учащихся старших классов были квоты от 40 до 72 часов терминального доступа каждую неделю, а пользователи колледжей платили за использование компьютера. [31] Дартмут проводил активные программы по вовлечению и обучению учителей старших классов использованию вычислений в своих курсах.

К 1967 году к сети Kiewit присоединились следующие средние школы: Hanover High School, The Holderness School , Mascoma Valley Regional High School , Kimball Union Academy , Mount Hermon School , Phillips Andover Academy , Phillips Exeter Academy , St. Paul's School и Vermont Academy . [32] Эта группа расширилась в рамках проекта Dartmouth Secondary School Project, финансируемого NSF в 1967–1968 годах, в который вошли следующие средние школы Новой Англии: Cape Elizabeth High School , Concord High School , Hartford High School (Vermont), Keene High School , Lebanon High School , Loomis School , Manchester Central High School , Rutland High School , St. Johnsbury Academy , South Portland High School и Timberlane High School . [33]

С 1968 по 1970 год Дартмут добавил несколько колледжей в сеть Kiewit через свой региональный консорциум колледжей. Они включали: Bates College, Berkshire Community College , Bowdoin College , Colby Junior College , Middlebury College , Mount Holyoke College , New England College , Norwich University , the University of Vermont и Vermont Technical College . [34]

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

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

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

—  Кемени, 1971 [15]

По состоянию на 1971 год 57% использования DTSS приходилось на курсы и 16% на исследования. [15] Кемени и Курц намеревались использовать DTSS для студентов технических и нетехнических специальностей. Они организовали второй триместр занятий по математике для первокурсников, чтобы включить требование по написанию и отладке четырех программ Dartmouth BASIC. К 1968 году более 80% студентов Дартмута имели опыт программирования. 80 занятий включали «официальное» использование компьютера, в том числе по инженерии, классике, географии, социологии и испанскому языку; [13] то, что студенты Школы бизнеса Tuck и социальных наук, а не математики или инженерии, были самыми активными пользователями, удивило Кемени. К 1972 году 90% студентов имели опыт работы с компьютером; поскольку преподаватели знали, что студенты знакомы с DTSS, его использование стало обычной частью многих курсов. [37] Опрос 1975 года показал, что 29% преподавателей использовали компьютер на курсах, и 73% студентов были зачислены на них, 43% преподавателей использовали его в исследованиях, и 45% преподавателей написали компьютерную программу. К тому году администрация университета использовала 28% ресурсов разделения времени, а студенты — 20%, с регистратором и офисом по размещению среди пользователей. [38]

27% использования DTSS по состоянию на 1971 год приходилось на повседневное использование и развлечения, что, по заявлению университета, «ни в коем случае не считается легкомысленным», поскольку это был приятный способ для пользователей познакомиться с компьютером и не бояться его. [15] [37] Библиотека из сотен программ включала, как сообщали Кемени и Курц, « множество игр ». [13] [37] Они были довольны широким распространением DTSS среди преподавателей и тем, что многие студенты продолжали использовать систему после того, как в этом отпала необходимость. Кемени — к тому времени президент университета — написал в брошюре 1971 года, описывая систему, что так же, как студент может войти в Мемориальную библиотеку Бейкера и взять книгу, не спрашивая разрешения или не объясняя своей цели, «любой студент может зайти в Вычислительный центр Кивита, сесть за консоль и использовать систему разделения времени. Никто не спросит, решает ли он серьезную исследовательскую задачу, делает ли свою домашнюю работу простым способом, играет ли в футбол или пишет письмо своей девушке». [15] [39] [37] К 1972 году футбольная симуляция поддерживала одновременную игру лицом к лицу в качестве многопользовательской видеоигры . [37] Расположение Кивита рядом с Дартмутским колледжем Греческие организации сделали его популярным местом для общения; [31] студенты часто приводили с собой друзей в Вычислительный центр, как для игр, так и для демонстрации собственных программ. [37]

К 1967–68 учебному году, в дополнение к 2600 пользователям Дартмута, 5550 человек в десяти университетах и ​​23 средних школах получили доступ к DTSS. [13] У Кемени был терминал дома, и как президент он установил один в своем офисе. [40] К началу 1970-х годов в кампусе было более 150 терминалов в 25 зданиях, [37] включая переносные устройства для пациентов в лазарете кампуса. Около 2000 пользователей входили в DTSS каждый день; 80% студентов и 70% преподавателей использовали систему каждый год. Дартмутская образовательная сеть с разделением времени за пределами кампуса включала пользователей с 79 терминалами в 30 средних школах и 20 университетах, включая Middlebury College , Phillips Andover , Mount Holyoke College , Goddard College , United States Merchant Marine Academy , United States Naval Academy , Bates College , Dartmouth Club of New York и филиал Dartmouth в Джерси-Сити, штат Нью-Джерси , которые делились DTSS с жителями Дартмута. [15] Система позволяла пользователям обмениваться сообщениями типа электронной почты и общаться в режиме реального времени с помощью предшественника программы Unix Talk .

Хотя в DTSS было доступно несколько языков, по состоянию на 1972 год 98% программ были написаны на Dartmouth BASIC. [37] Поскольку BASIC не менялся, система оставалась совместимой со старыми приложениями; Кемени сообщил в 1974 году, что программы, написанные им в 1964 году, по-прежнему будут работать. [14] К 1980 году поддерживаемые языки и системы включали: [41]

ДТС сегодня

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

Смотрите также

Ссылки

  1. ^ Рэнкин, Джой Лиси (2018). Народная история вычислений в Соединенных Штатах . Кембридж, Массачусетс: Издательство Гарвардского университета. ISBN 9780674970977.
  2. Заявление в Национальный научный фонд , Курц, Ризер и Мек, цитируется в Ранкин, страницы 20-21
  3. ^ Рэнкин, страницы 22-23
  4. ^ ab "The 1960s". Computing at Dartmouth . Архивировано из оригинала 25 апреля 2015 г.
  5. ^ Рэнкин, страницы 24-25
  6. ^ Партнерство GE-Dartmouth Computer , Джон Г. Кемени, История DTSS. Рождение 1967-1970. Папка 2, Коробка 4, Документы Гарленда, Библиотека Дартмутского колледжа.
  7. ^ "Kemeny's Kids". Архивировано из оригинала 9 октября 2007 г.
  8. Дартмутская система разделения времени — краткое описание (PDF) . Октябрь 1964 г.
  9. ^ Гордон М. Булл (1980). Дартмутская система разделения времени (PDF) . Ellis Horwood Ltd. и John Wiley & Sons.Описание DTSS ок. 1977 г.
  10. ^ Рэнкин, страницы 33-34
  11. ^ Булл, стр. 13
  12. ^ «Дартмутская система разделения времени. Краткое описание», 19 октября 1964 г., с изменениями, внесенными сотрудниками GE в 1965 г.
  13. ^ abcd Кемени, Джон Г.; Курц, Томас Э. (11 октября 1968 г.). «Dartmouth Time-Sharing». Science . 162 (3850): 223–228. Bibcode :1968Sci...162..223K. doi :10.1126/science.162.3850.223. PMID  5675464.
  14. ^ abc "Транскрипты сессии Дня пионера Национальной компьютерной конференции 1974 года". Система разделения времени Дартмута . Дартмутский колледж. 1974.
  15. ^ abcdef Вычислительный центр Кивита и Дартмутская система разделения времени. Дартмутский колледж. 1971 г.
  16. ^ Джон Г. Кемени, "The GE-Dartmouth Computer Partnership", История DTSS, рождение 1967-1970, папка 2, ящик 4, документы Гарленда, библиотека Дартмутского колледжа. Цитируется в Rankin, страницы 25-26
  17. ^ General Electric Computer Department, "Предварительное предложение для Дартмутского колледжа, 15 октября 1962 г.", вставка 1, документы Курца, библиотека Дартмутского колледжа. Цитируется в Rankin, стр. 26
  18. ^ Курц, «Прогресс-отчет по проекту улучшения содержания курса от 15 декабря 1964 г.». Цитируется в Rankin, стр. 118
  19. ^ JAN Lee (зима 1995 г.). «Взлет и падение компьютерного отдела корпорации General Electric». IEEE Annals of the History of Computing . 17 (4): 24–25. doi :10.1109/85.477434.Цитируется в Rankin, стр. 120.
  20. ^ abc Bull, стр. 14
  21. ^ General Electric Information Systems Group, "Разделение времени работы за компьютером в кампусе: новые возможности обучения для студентов", май 1968 г., папка 3 из 6, DA-29 (7841) DTSS Разделение времени, библиотека Раунера, Дартмутский колледж. Цитируется в Rankin, стр. 121
  22. ^ "Коллекция корпоративных историй Музея компьютерной истории: сведения о компании - General Electric Information Services (GEIS)". Архивировано из оригинала 24 марта 2009 г.
  23. ^ ab Роберт Ф. Харгрейвс-младший; Эндрю Г. Стивенсон. Проектные соображения для образовательной системы разделения времени . Весенняя совместная компьютерная конференция AFIPS 1969. стр. 657–664. doi :10.1145/1476793.1476904.
  24. ^ Булл, стр. 9
  25. Булл, страницы 15, 19
  26. ^ «Хронология — DTSS — Дартмутская система разделения времени».
  27. ^ М. Дуглас Макилрой (февраль 2017 г.). «Файлы связи: межпроцессный ввод-вывод до конвейеров» (PDF) . Дартмутский колледж .
  28. ^ Макилрой, стр. 4
  29. ^ Джон Макгичи (1973). «Несколько терминалов под управлением пользовательской программы в среде с разделением времени». Communications of the ACM . 16 (10): 587–590. doi :10.1145/362375.362376.
  30. ^ Роберт Харгрейвс; Томас Курц (1973). "Сеть разделения времени Дартмута". В Норман Абрамсон ; Франклин Ф. Куо (ред.). Компьютерно-коммуникационные сети . Prentice-Hall . ISBN 978-0-13-165431-0.
  31. ^ ab Rankin, Joy Lisi (1 ноября 2018 г.). «Культура Tech-Bro была прописана в коде». Slate . Получено 18 февраля 2023 г. .
  32. ^ Джон Г. Кемени; Томас Э. Курц (июнь 1967 г.). Дартмутская вычислительная система с разделением времени (PDF) (технический отчет). стр. 25. Заключительный отчет, грант NSF GE-3854.
  33. ^ Томас Э. Курц (октябрь 1968 г.). Демонстрация и экспериментирование в обучении и использовании компьютеров в средних школах (PDF) (технический отчет). Промежуточный отчет, грант GW-2246, «Деятельность и достижения первого года».
  34. Томас Э. Курц. Промежуточный отчет за июль 1969 г. о региональном консорциуме колледжей Дартмутского колледжа (технический отчет).Цитируется в Rankin, стр. 92
  35. ^ ab Dartmouth College Office of Information Services, 6 апреля 1971 г., пресс-релиз. Цитируется в Rankin, стр. 94
  36. Карта Дартмутской образовательной сети с разделением времени, 1973 г. Цитируется в Rankin, стр. 63.
  37. ^ abcdefgh Кемени, Джон Г. (1972). Человек и компьютер. Нью-Йорк: Charles Scribner's Sons. стр. 32–37, 41. ISBN 978-0-684-13009-5. LCCN  72-1176.
  38. ^ "1970-е". Дартмутская вычислительная хронология . Получено 18 февраля 2023 г.
  39. ^ Маккракен, Гарри (29 апреля 2014 г.). «Пятьдесят лет BASIC, языка программирования, который сделал компьютеры персональными». Time . Получено 19 марта 2016 г.
  40. Farber, MA (24 января 1970 г.). «Дартмут выбирает нового президента». The New York Times . ISSN  0362-4331 . Получено 18 февраля 2023 г.
  41. Булл, страницы 166-167
  42. ^ "Возрожденный сайт DTSS".