Разработав ПО Compatible Time-Sharing System, адъюнкт-профессор Фернандо Корбато и его команда представили первую демонстрационную версию системы с разделением времени |
Это означает, что вам придется прервать выполняемые задания, смонтировать другую магнитную ленту, а затем начать все сначала.
Или, скажем, вы — программист. Наступил вечер, и вам хочется посмотреть на результаты работы программы, которая была запущена еще утром. Но в распечатке нет ничего, кроме сообщения об ошибке. Прождав целый день, вы с досадой обнаруживаете, что в одном месте пропустили запятую.
Чтобы избежать подобных ситуаций, профессор Джон Маккарти предложил директору компьютерного центра Массачусетсского технологического института Филиппу Морсу концепцию «разделения времени». В отличие от режима пакетной обработки, при котором программисты каждый раз вынуждены были вводить код с перфокарт, новая технология обещала сделать компьютеры более доступными и дружественными по отношению к пользователям.
В 1961 году адъюнкт-профессор Фернандо Корбато и его команда воплотили идеи Морса в конкретный продукт и представили программный пакет Compatible Time-Sharing System (CTTS) — первую систему, работавшую в режиме разделения времени.
Технология разделения времени позволяет машине обслуживать одновременно сразу нескольких клиентов. При этом у пользователя создается впечатление, что он работает на компьютере один.
Система разделения времени работает следующим образом: она прерывает задание, требующее длительного обслуживания, копирует содержимое памяти на диск, запускает другую задачу, а через определенный интервал вновь возвращается к выполнению предыдущей программы, не останавливая работу пользователя. «Каждое приложение получает доступ ко всем ресурсам компьютера, — пояснил Том ван Влек, один из разработчиков пакета CTTS и его усовершенствованной версии Multics. — При этом несколько программ делят между собой машинное время».
Благодаря новому подходу компьютеры стали интерактивными. Теперь разработчики вводили текст программы с клавиатуры и машина практически сразу выдавала готовые результаты или сообщение об ошибке.
Возможно, с высоты 90-х это покажется вполне естественным, но в 1961 году даже аппаратные средства не были готовы к столь радикальным переменам. К примеру, у компьютера IBM 7090, на котором работала команда Корбато, просто-напросто... отсутствовала клавиатура. «К счастью, нам удалось воспользоваться машинами Teletype, выпускаемыми корпорацией AT&T, и электронными пишущими машинками IBM Selectric, — вспоминал Корбато. — Правда, непонятно было, как различать прописные и строчные буквы».
В сотрудничестве с корпорацией IBM коллектив разработчиков модифицировал очередную модель компьютера 7094, что позволило успешно справиться с большей частью проблем. «Многие из предложенных нами тогда решений находят применение и по сей день», — с гордостью заметил Корбато.
Сюда, в частности, относятся аппаратный таймер, позволяющий прерывать выполнение программы, и средства, предотвращающие выход приложения за отведенные ему границы оперативной памяти.
Представленная в 1961 году версия, по словам Корбато, была «грубой и несовершенной». Однако она наглядно продемонстрировала преимущества технологии разделения времени. Вслед за демонстрационным пакетом CTTS на рынке появилось множество подобных систем. Что касается окончательной версии самой первой разработки, она была создана совместными усилиями специалистов институтов MIT, Woods Hole Oceanographic Institution и колледжей Новой Англии. Впоследствии решения, использовавшиеся в демонстрационном ПО CTTS, легли в основу проекта MAC. В 1962 году агентство Advanced Research Project Agency (ARPA) получило 3 млн. долл. на реализацию проекта MAC — первой полноценной системы с разделением времени, названной Multiplexed Information and Computer System (Multics).
Работы над системой Multics продолжались вплоть до 1969 года, но коммерческого успеха она не имела. Тем не менее трудно переоценить значение этого проекта для дальнейшего развития компьютерных технологий. В частности, создатели системы Unix Кен Томпсон и Денис Риччи немало идей почерпнули именно из Multics.
Кроме того, система с разделением времени открыла перед разработчиками необъятные просторы для творчества.
«Технология разделения времени помогла инженерам понять, что создание интерактивных систем с точки зрения пользователей имеет не менее важное значение, чем выпуск высокоэффективного оборудования», — подчеркнул Корбато.
Мэри Брандел — постоянный автор Computerworld. Электронную почту ей можно направлять по адресу brandel@cwix.com.Техногические достижения | ||
В 1961 году родились
Другие события
|