Совместимая система разделения времени
![]() | |
Разработчик | Вычислительный центр Массачусетского технологического института , Проект MAC |
---|---|
Написано в | Сборка ФАП , MAD |
Рабочее состояние | Снято с производства, доступен симулятор |
Исходная модель | Открытый исходный код |
Первоначальный выпуск | 1961 год |
Маркетинговая цель | Колледжи и университеты [1] |
Доступно в | Английский |
Платформы | ИБМ 7090 , ИБМ 7094 |
ядра Тип | Монолитный , защищенный |
По умолчанию пользовательский интерфейс | Интерфейс командной строки |
Лицензия | [ данные отсутствуют ] |
Преемник | Мультикс |
Официальный сайт | www |
История операционных систем для мэйнфреймов IBM |
---|
Совместимая система разделения времени ( CTSS ) была первой общего назначения с разделением времени операционной системой . [2] [3] Совместимое разделение времени относится к разделению времени, совместимому с пакетной обработкой ; он может одновременно предлагать как разделение времени, так и пакетную обработку.
CTSS был разработан в Вычислительном центре Массачусетского технологического института («Комп-центр»). CTSS был впервые продемонстрирован на модифицированном IBM 709 Массачусетского технологического института в ноябре 1961 года. Аппаратное обеспечение было заменено на модифицированный IBM 7090 в 1962 году, а затем на модифицированный IBM 7094, названный «синей машиной», чтобы отличить его от IBM 7094 Project MAC CTSS. Регулярное обслуживание Пользователи MIT Comp Center начались летом 1963 года и действовали там до 1968 года.
Второе развертывание CTSS на отдельном IBM 7094, полученном в октябре 1963 года («красная машина»), использовалось на ранних этапах проекта MAC до 1969 года, когда красная машина была перенесена в Центр обработки информации. [4] и работал до 20 июля 1973 года. CTSS работал только на этих двух машинах; однако были удаленные пользователи CTSS за пределами Массачусетского технологического института, в том числе в Калифорнии, Южной Америке, Эдинбургском университете и Оксфордском университете . [1] [5]
История [ править ]
Джон Бэкус сказал на летней сессии 1954 года в Массачусетском технологическом институте , что «при разделении времени большой компьютер можно использовать как несколько маленьких; для каждого пользователя потребуется станция чтения». [6] Компьютеры того времени, такие как IBM 704 , не были достаточно мощными для реализации такой системы, но в конце 1958 года Вычислительный центр Массачусетского технологического института, тем не менее, добавил в свой 704 ввод для пишущей машинки с намерением, чтобы программист или оператор мог «получить дополнительные ответы от машину на основе разделения времени с другими программами, использующими машину одновременно». [7]
В июне 1959 года Кристофер Стрейчи в Париже статью «Распределение времени в больших быстрых компьютерах» опубликовал на конференции ЮНЕСКО по обработке информации , в которой он представил, как программист отлаживает программу на консоли (например, телетайпе ), подключенной к компьютеру, в то время как другая программа одновременно работал на компьютере. [8] [9] Отладка программ была важной проблемой в то время, поскольку при пакетной обработке от отправки измененного кода до получения результатов часто требовался день. Джон Маккарти написал об этом докладную записку в Массачусетском технологическом институте, после чего в Массачусетском технологическом институте были созданы предварительный учебный комитет и рабочий комитет для развития разделения времени. Комитеты предусмотрели возможность одновременного использования компьютера многими пользователями, определили детали внедрения такой системы в Массачусетском технологическом институте и начали ее разработку.
времени Экспериментальная система разделения
К июлю 1961 г. [10] несколько команд разделения времени начали действовать на IBM 709 Вычислительного центра, а в ноябре 1961 года Фернандо Дж. Корбато продемонстрировал в Массачусетском технологическом институте то, что называлось экспериментальной системой разделения времени . 3 мая 1962 года Ф. Дж. Корбато, М. М. Даггетт и Р. К. Дейли опубликовали статью об этой системе на весенней совместной компьютерной конференции . [11] Роберт С. Дейли, Питер Р. Бос и как минимум 6 других программистов реализовали операционную систему, частично основанную на Fortran Monitor System .
В системе использовалась IBM 7090 , модифицированная Гербертом М. Тигером , с добавлением трех флексорайтеров для пользовательских консолей и, возможно, таймера . У каждого из трех пользователей было по два ленточных накопителя : один для каталога файлов пользователя, а другой для дампа ядра (программы в памяти). Для системных команд также был один ленточный накопитель, дисководов не было. Память составляла 27 тыс. слов (36-битные слова) для пользователей и 5 тыс . слов для супервизора (операционной системы). Ввод с консолей записывался в буферы супервизора посредством прерываний , и при получении символа возврата управление передавалось супервизору, который сбрасывал работающий код на ленту и решал, что запускать дальше. В то время были реализованы следующие консольные команды : вход в систему, выход из системы, ввод, редактирование, fap, mad, madtrn, load, use, start,skippm, listf, printf, xdump и xundump . [ нужна ссылка ]
Это стало начальной версией совместимой системы разделения времени. Очевидно, это была первая публичная демонстрация разделения времени ; Есть и другие утверждения, но они относятся к системам специального назначения или не имеют известных опубликованных статей. «Совместимость» CTSS заключалась в фоновых заданиях, выполняемых на том же компьютере, которые обычно использовали больше вычислительных ресурсов, чем функции разделения времени.
Приложения [ править ]
ДОТСИС и БРАЙЛЕМБОСС [ править ]
Первая версия программного обеспечения для перевода шрифтом Брайля DOTSYS работала на CTSS и могла выводить на принтер страниц Брайля BRAILLEMBOSS. [12] [13] DOTSYS на CTSS был впервые продемонстрирован 18 августа 1966 года в рамках технико-экономического обоснования, в рамках которого лента телетайпа в виде новостей была преобразована в шрифт Брайля 2-го класса. В следующем месяце была успешно продемонстрирована возможность преобразования информации из учебника с ленты телетайпа в безошибочный шрифт Брайля для 2-го класса. [14] Поскольку MIT CTSS был академической системой, исследовательским инструментом, а не системой для коммерческих вычислений, два года спустя версия DOTSYS, лишенная зависимостей CTSS для переносимости программного обеспечения, была использована на IBM 709 в Американской типографии для слепых для печати первое издание книги со шрифтом Брайля, созданное с помощью телетайпа, всего через несколько недель после версии, напечатанной чернилами. [15] В следующем году на CTSS была показана демонстрация печати математических таблиц шрифтом Брайля. Была написана короткая программа FORTRAN II для создания таблицы преобразования дюймов в миллиметры шрифтом Брайля с помощью страничного принтера Брайля BRAILLEMBOSS. [16]
Intrex[editИнтрекс

Поисковая система Intrex работала на базе CTSS. Intrex представлял собой экспериментальную пилотную модель машинно-ориентированной библиографической системы хранения и поиска с базой данных, в которой хранился каталог из примерно 15 000 журнальных статей. Он использовался для разработки и тестирования концепций автоматизации библиотек. [17] [18] [19] Развертывание трех консолей BRISC CRT для тестирования в Инженерной библиотеке Массачусетского технологического института показало, что они предпочтительнее двух других систем, ARDS и DATEL. [20]
Особенности [ править ]
- Оригинальная ELIZA работала на CTSS. [1]
- CTSS была первой компьютерной системой, реализовавшей вход по паролю . [21] [22]
- У CTSS была одна из первых компьютеризированных утилит для редактирования и форматирования текста, называемая TYPSET и RUNOFF (преемники MEMO, MODIFY и DITTO).
- В CTSS была одна из первых реализаций обмена сообщениями между пользователями, новаторская электронная почта . [23]
- У CTSS была одна из первых систем обмена мгновенными сообщениями, аналогичных write . [24]
- Сотрудник вычислительного центра Массачусетского технологического института Луи Пузен создал для CTSS команду под названием RUNCOM , которая выполняла список команд, содержащихся в файле. [1] В РУНКОМе также предусмотрена подмена параметров. [5] Позже он создал дизайн Multics оболочки , который был реализован Глендой Шредер, что, в свою очередь, вдохновило сценарии оболочки Unix . [25] [26]
- CTSS имел реализацию текстового редактора QED , предшественника ed , vi и vim , с регулярными выражениями, добавленными Кеном Томпсоном .
Реализация [ править ]
Ядро [ править ]
CTSS использовал модифицированный мэйнфрейм IBM 7090. [27] по 32 768 (32 КБ) 36-битных слов у которого было два банка основной памяти вместо конфигурации по умолчанию, которая предоставляет только один. [28] [29] Один банк был зарезервирован для программы управления разделением времени, другой — для пользовательских программ. CTSS имел ядро защищенного режима; функции супервизора в A-ядре (банке памяти A) могли быть вызваны только программными прерываниями, как в современных операционных системах. Для программных прерываний использовались прерывания защиты памяти. [8] процессоров выделения Планирование с тактом времени 200 мс контролировалось многоуровневой очередью обратной связи . [28] У него также было специальное оборудование для управления памятью. [30] прерывание часов, [31] и способность перехватывать определенные инструкции. [30]
Подпрограммы супервизора [ править ]
- RDFLXA – прочитать строку ввода с консоли
- WRFLX – запись строки вывода в консоль
- DEAD – перевод пользователя в мертвый статус без программы в памяти.
- DORMNT – перевод пользователя в спящий режим с программой в памяти.
- GETMEM – Получить размер выделенной памяти
- SETMEM – Установить размер выделяемой памяти
- TSSFIL – Получить доступ к системным файлам CTSS на диске.
- USRFIL – вернуться в собственный каталог пользователя.
- GETBRK – Получить счетчик расположения инструкций при выходе
Языки программирования [ править ]
Сначала CTSS имел только ассемблер FAP и компилятор MAD. Кроме того, код Fortran II можно перевести в код MAD с помощью MADTRN. Позже половина системы была написана на MAD. Позже появились и другие языки программирования, включая COMIT II , LISP 1.5 и версию ALGOL .
Файловая система [ править ]
У каждого пользователя был свой каталог , а также существовали общие каталоги для групп людей с одним и тем же «номером проблемы». Каждый файл имел два имени, второе указывало его тип, как и расширение в более поздних системах. Сначала каждый файл мог иметь один из четырех режимов: временный, постоянный, класс 1 только для чтения и класс 2 только для чтения. Класс 1 только для чтения позволял пользователю изменять режим файла. Файлы также могут быть символически связаны между каталогами. Листинг каталога с помощью listf :
10 FILES 20 TRACKS USED DATE NAME MODE NO. TRACKS 5/20/63 MAIN MAD P 15 5/17/63 DPFA SYMTB P 1 5/17/63 DPFA BSS P 1 5/17/63 DPFA FAP P 2
Периферийные устройства [ править ]
Аппаратное обеспечение ввода-вывода в основном представляло собой стандартную периферию IBM . В их число входили шесть каналов передачи данных, подключающихся к:
- Принтеры, считыватели перфокарт и перфораторы
- Ленточные накопители IBM 729 , дисковое хранилище IBM 1301 , позже модернизированное до IBM 1302 , с емкостью 38 миллионов слов.
- Барабанная память IBM 7320 на 186 КБ слов, которая могла загрузить банк памяти на 32 КБ слов за одну секунду (позже была увеличена до 0,25 секунды).
- Два специализированных высокоскоростных дисплея векторной графики [32]
- Блок управления передачей IBM 7750, способный поддерживать до 112 терминалов телетайпа , включая IBM 1050 Selectrics и Model 35 . Некоторые терминалы располагались удаленно, и доступ к системе можно было получить с помощью общедоступных сетей Telex и TWX .
Влияния [ править ]
CTSS был описан в документе, представленном на весенней совместной компьютерной конференции 1962 года , и сильно повлиял на разработку других ранних систем с разделением времени.
Морис Уилкс создание Titan Supervisor . стал свидетелем CTSS, и это вдохновило его на [33] [34]
Деннис Ритчи писал в 1977 году, что UNIX можно рассматривать как «современную реализацию» CTSS. [35] Multics, который также был разработан Project MAC, был запущен в 1960-х годах как преемник CTSS и, в свою очередь, вдохновил на разработку Unix в 1969 году. Одним из технических терминов, унаследованных этими системами от CTSS, является daemon .
Несовместимая система разделения времени (ITS), еще одна ранняя, революционная и влиятельная система разделения времени MIT, была создана людьми, несогласными с направлением, выбранным CTSS, а затем и Multics; это название было пародией на «CTSS», как позже название «Unix» было пародией на «Multics». [36] Файловые системы CTSS и ITS имеют ряд общих элементов дизайна. Оба имеют MFD (основной каталог файлов) и один или несколько UFD (каталоги пользовательских файлов). Ни один из них не имеет вложенных каталогов (подкаталогов). Оба имеют имена файлов, состоящие из двух имен длиной не более шести символов. Оба поддерживают связанные файлы. [5]
См. также [ править ]
Ссылки [ править ]
- ↑ Перейти обратно: Перейти обратно: а б с д Уолден, Дэвид; Ван Флек, Том , ред. (2011). «Совместимая система разделения времени (1961–1973): обзор, посвященный пятидесятой годовщине» (PDF) . Компьютерное общество IEEE . Проверено 20 февраля 2022 г.
- ^ Норен, Аллен (10 апреля 2009 г.). «Интервью с Брайаном Керниганом: разведение маленьких языков» . Сообщество О'Рейли . Архивировано из оригинала 30 июня 2017 года . Проверено 28 июля 2023 г.
Я использовал CTSS, первую систему разделения времени.
- ^ Сингх, Джай П.; Морган, Роберт П. (октябрь 1971 г.). Использование компьютеров и компьютерные коммуникации в образовании (PDF) (Отчет). Сент-Луис, Миссури: Вашингтонский университет. п. 13. Грант Национального управления по аэронавтике и исследованию космического пространства № Y/NGL-26-008-054 . Проверено 8 марта 2022 г.
Большая часть ранних разработок в области разделения времени происходила в университетских кампусах. 8 Ярким примером является CTSS (совместимая система разделения времени) в Массачусетском технологическом институте, которая была первой системой разделения времени общего назначения...
- ^ «Сегодня в Массачусетском технологическом институте откроется новый информационный центр» . Нью-Йорк Таймс . 11 ноября 1968 года.
- ↑ Перейти обратно: Перейти обратно: а б с Крисман, Патрисия А., изд. (31 декабря 1969 г.). Совместимая система разделения времени, Руководство программиста (PDF) (второе изд.). Вычислительный центр Массачусетского технологического института . Проверено 10 марта 2022 г.
- ^ Бэкус, Джон (1954). Передовые методы кодирования цифровых компьютеров (PDF) . Массачусетский технологический институт. стр. 16-2–16-3. Первое известное описание компьютерного разделения времени.
- ^ Отчет № 4 о ходе исследовательской и образовательной деятельности в области машинных вычислений, проводимой сотрудничающими колледжами Новой Англии (Отчет). Декабрь 1958 года.
- ↑ Перейти обратно: Перейти обратно: а б Ф. Дж. Корбато; ММ Даггетт; Р. К. Дейли; Р. Дж. Кризи; Джей Ди Хеллвиг; Р. Х. Оренштейн; Л. К. Корн (1963). Совместимая система разделения времени. Руководство программиста (PDF) . МТИ Пресс. ISBN 978-0-262-03008-3 . Опишите систему и ее команды.
- ^ Джон Маккарти (1983). «Воспоминания об истории разделения времени» . Стэнфордский университет .
- ^ Отчет № 9 о ходе исследовательской и образовательной деятельности в области машинных вычислений, проводимой сотрудничающими колледжами Новой Англии (Отчет). Июль 1961 года.
- ^ Корбато, Фернандо Х.; Мервин Даггетт, Марджори; Дейли, Роберт К. (3 мая 1962 г.). «Экспериментальная система разделения времени» . Архивировано из оригинала 6 сентября 2009 года . Проверено 25 февраля 2022 г.
- ^ Манн, Роберт В. (октябрь 1986 г.). «Избранные перспективы четверти века реабилитационной техники» . Журнал реабилитационных исследований и разработок . 23 (4): 1–6. ПМИД 3820117 . Проверено 13 марта 2022 г.
В разработке находилась модульная программа для перевода Брайля и автоматического управления режимами ввода и вывода, получившая впоследствии название «DOTSYS»...
- ^ Далримпл, Джордж Ф. (26 февраля 1973 г.). «Итоговый отчет о разработке и демонстрации систем связи для слепых и глухих/слепых. Коммуникационные терминалы Брайля и тактильные пейджинговые системы» (PDF) . Центр оценки и развития сенсорных средств Массачусетского технологического института . Проверено 13 марта 2022 г.
- ^ Оценка и разработка сенсорных средств и устройств. Итоговый отчет (PDF) (Отчет). Центр оценки и развития сенсорных вспомогательных средств Массачусетского технологического института. 3 апреля 1967 года . Проверено 13 марта 2022 г.
Демонстрация CTSS телетайпа Брайля 2-го класса
- ^ Итоговый отчет Департаменту здравоохранения, образования и социального обеспечения Управления социальной реабилитации, Вашингтон, округ Колумбия (PDF) (Отчет). Центр оценки и развития сенсорных вспомогательных средств Массачусетского технологического института. 30 апреля 1969 года . Проверено 13 марта 2022 г.
Эти программы, первоначально написанные для работы с системой CTSS в Массачусетском технологическом институте, были модифицированы для 709 в Американской типографии для слепых. Это потребовало переписывания тех частей программ, которые зависели от CTSS.
- ^ Таблица преобразования дюймов в миллиметры в виде математической таблицы Брайля, созданной компьютером (PDF) (отчет). Центр оценки и развития сенсорных вспомогательных средств Массачусетского технологического института. 14 августа 1970 года . Проверено 13 марта 2022 г.
- ^ Overhage, Карл Ф.Дж. (1971). Проект Intrex – Краткое описание (PDF) . ЭРИК (докладывая). Массачусетский технологический институт . Проверено 8 марта 2022 г.
- ^ Кер, Джеймс Э. (сентябрь 1972 г.). Работа и программное обеспечение системы отображения буферного контроллера Intrex (PDF) . ЭРИК (докладывая). Массачусетский технологический институт . Проверено 8 марта 2022 г.
- ^ Херлберт, Чарльз Э. (15 сентября 1971 г.). Программное обеспечение поисковой системы Intrex (PDF) . ЭРИК (докладывая). Массачусетский технологический институт . Проверено 8 марта 2022 г.
- ^ Overhage, Карл Ф.Дж. (15 марта 1972 г.). Проект Интрекс. Полугодовой отчет о деятельности, 15 сентября 1971 г. - 15 марта 1972 г. (PDF) . ЭРИК (докладывая). Массачусетский технологический институт. Интрекс ПР-13 . Проверено 17 марта 2022 г.
С 27 сентября 1971 года БРИСЦ доступен на станции «Инженерная библиотека» два часа в день.
- ^ Макмиллан, Роберт (27 января 2012 г.). «Первый в мире компьютерный пароль? Он тоже был бесполезен» . Проводной журнал . Проверено 22 марта 2019 г.
- ^ Хант, Трой (26 июля 2017 г.). «Пароли эволюционировали: руководство по аутентификации для современной эпохи» . Проверено 22 марта 2019 г.
- ^ Тома Ван Флека Мемуары об истории электронной почты
- ^ Феттер, Мирко (2019). Новые концепции присутствия и доступности в повсеместных и мобильных вычислениях . Университет Бамберга Пресс. п. 38. ISBN 978-3-86309-623-6 .
Основная концепция мгновенной отправки сообщений вошедшим в систему пользователям пришла с... CTSS...
- ^ Пузен, Луи . «Происхождение ракушки» . Мультицианцы . Проверено 17 февраля 2022 г.
- ^ Раймонд, Эрик С. (2003). Искусство программирования UNIX . Бостон: Pearson Education. п. 234. ИСБН 978-0-13-246588-5 .
- ^ «Документы, описывающие специальную аппаратуру для CTSS» .
- ↑ Перейти обратно: Перейти обратно: а б Зильбершац, Авраам; Петерсон, Джеймс Л. (июнь 1988 г.). «13: Историческая перспектива». Концепции операционной системы . Аддисон-Уэсли. п. 514. ИСБН 0-201-18760-4 .
- ^ Дополнительное основное хранилище систем обработки данных IBM 7090 и 7094 — RPO E02120 (7090) Dr RPO E15724 (7094) (PDF) . Бюллетень специальных системных функций. ИБМ. Л22-6636-1.
- ↑ Перейти обратно: Перейти обратно: а б Пакет мультипрограммирования IBM 7090-7094 RPO E07291 (7090) или RPO 880287 (7094) (PDF) . Бюллетень специальных системных функций. ИБМ. L22-6641-3.
- ^ Часы основной памяти и интервальный таймер — RPO FB9349 (PDF) . Бюллетень специальных системных функций. ИБМ. Л22-6554-1.
- ^ Торнхилл, Делавэр; Стоз, Р.Х.; Росс, ТТ; Уорд, Дж. Э. (1968). «Интегрированная аппаратно-программная система для компьютерной графики с разделением времени» (PDF) . Проект MIT MAC. ЭСЛ-Р-356 и МАК-ТР-56 . Проверено 20 февраля 2022 г.
Возможности консоли включают в себя аппаратное проецирование трехмерных линейных рисунков, автоматическое отслеживание световым пером и гибкий набор ручек, переключателей и кнопочных входов. Консоль подключается к совместимой с IBM 7094 системе разделения времени Project MAC напрямую или через компьютер PDP-7.
- ^ Хартли, Дэвид (2004). «Влияние Титана». Компьютерные системы . Спрингер. стр. 103–108. CiteSeerX 10.1.1.14.9546 . ISBN 978-0-387-21821-2 .
Сэр Морис, как его называют сегодня, был вдохновлен CTSS на создание системы разделения времени.
- ^ Фрейзер, Сэнди (2004). «Историческая связь между разделением времени и виртуальными цепями». Компьютерные системы . Спрингер. стр. 85–88. CiteSeerX 10.1.1.14.9546 . ISBN 978-0-387-21821-2 .
Морис Уилкс обнаружил CTSS во время визита в Массачусетский технологический институт примерно в 1965 году и вернулся в Кембридж, чтобы убедить всех нас, что разделение времени — это путь вперед.
- ^ Ричи, Деннис М. (1977). Система разделения времени Unix: ретроспектива (PDF) . Десятая Гавайская международная конференция по системным наукам.
- ^ Леви, Стивен (2010). «Победители и проигравшие». Хакеры: Герои компьютерной революции - издание, посвященное 25-летию (1-е изд.). Севастополь, Калифорния: O'Reilly Media. стр. 85–102. ISBN 978-1-4493-8839-3 .
Дальнейшее чтение [ править ]
- Фано, Роберт М. (1964). «Система MAC: отчет о ходе работы» (PDF) . BitSavers.Informatik.Uni-Stuttgart.de . Проект MIT MAC.
- Зальцер, Джером Х. (1965). «Технические примечания CTSS» (PDF) . BitSavers.Informatik.Uni-Stuttgart.de . Проект MIT MAC.
- Зальцер, Джером Х. (1964). «Набор и редактирование рукописей» . Веб.MIT.edu . Вычислительный центр Массачусетского технологического института.
Внешние ссылки [ править ]
- Интервью по устной истории с Джоном Маккарти , Институт Чарльза Бэббиджа , Университет Миннесоты. Обсуждает компьютерные разработки в Массачусетском технологическом институте, включая разделение времени.
- Интервью по устной истории с Фернандо Дж. Корбато , Институт Чарльза Бэббиджа , Университет Миннесоты. Обсуждает многие компьютерные разработки в Массачусетском технологическом институте, включая CTSS.
- Интервью по устной истории с Робертом М. Фано , Институт Чарльза Бэббиджа, Университет Миннесоты. Обсуждает компьютерные разработки в Массачусетском технологическом институте, включая CTSS.
- IBM 7094 и CTSS : личные воспоминания Тома Ван Флека , системного программиста по CTSS
- Исходная версия CTSS MIT8C0 в коллекции Пола Пирса.
- Поддержка IBM 7094 от Дэйва Питтса — включает в себя безлицензионный симулятор, кросс-ассемблер и компоновщик, которые можно использовать для сборки и запуска CTSS.
- Исходники и двоичные файлы CTSS Ричарда Корнуэлла , работающие на SIMH . Включает в себя безлицензионные инструменты
- Директор по информационным технологиям: 40 лет Multics, 1969–2009. Архивировано 23 июня 2018 г. в Wayback Machine : интервью с разработчиком CTSS и Multics Фернандо Дж. Корбато.
- Книжная полка Джерома Зальцера CTSS через CSAIL .