Уилкс, Морис Винсент Уилкс




Скачать 78.88 Kb.
Дата20.03.2016
Размер78.88 Kb.
Уилкс, Морис Винсентmaurice_v_wilkes.jpg

Морис Винсент Уилкс (англ. Maurice Vincent Wilkes, 26 июня 1913 года, Дадли, Великобритания  — 29 ноября 2010 года, Кембридж, Великобритания) — британский учёный в области компьютерных наук.

Биография


Морис Винсент Уилкс родился 26 июля 1913 года в Дадли в графстве Стаффордшир (Англия). С 1931 года учился в Кембриджском колледже Святой Джона, который закончил в 1934 году. Затем его учеба продолжилась в Кембриджском университете до его окончания в 1937 году. В 1936 году он получил звание, доктора философии за работу, посвященную распространении очень длинных радиоволн в ионосфере.

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

По возвращению в Кембридж в сентябре 1945 года он назначается директором Математической лаборатории (позже Компьютерной лаборатории), в которой Уилкс и проработал до 1980 года.

В мае 1946 года была получена копия неймановского отчета относительно компьютера EDVAC и Уилксу представилась возможность за одну ночь прочитать и понять документ, который описывал концепцию записи и хранения программы в компьютере. Он понял сразу, что это реально, и с этого момента никогда не сомневался, что развитие компьютеров пойдет именно таким путем.

После прочтения отчета Уилкс, принял приглашение посетить лекции по “Теории и методам конструирования электронных цифровых компьютеров”, проводимых в школе Мура Пенсильванского университета с 8 июля по 31 августа 1946 года. Уилкс ухватился за предоставленный шанс посетить эти лекции, хотя и опоздал к их началу, но все же успел к моменту детального описания ENIAC и обсуждения принципов создания EDVAC. Вот что пишет сам Морис Уилкс: “Самое важное событие в моей жизни произошло в 1946 году… Мне удалось прослушать учебный курс по компьютерам, и он произвел на меня сильнейшее впечатление.

Ничего подобного никогда раньше не было, а о достижениях школы Мура и других зачинателей компьютерной техники тогда знали лишь немногие. Курс слушали 28 человек из 20 организаций. В роли основных преподавателей выступали Джон Ма-учли и Преспер Эккерт. Они находились на гребне успеха, создав первый электронный компьютер ENIAC и принципы конструирования EDVAC… Последующие события убедительно подтвердили принципы, которым Эккерт и Маучли научили в 1946 году тех из нас, кому посчастливилось прослушать этот курс”.

После возвращения Уилкса в Кембридж был составлен проект создания компьютера с хранимой программой, который предстояло осуществить силами Математической лаборатории. Лаборатория имела достаточные средства, чтобы начать реализацию проекта, и следующие три года были потрачены на конструирование EDSAC (Electronic Delay Storage Automatic Calculator — электронный автоматический калькулятор с памятью на линиях задержки), который заработал 9 мая 1949 года.

В сущности, машина EDSAC была прямой копией проекта EDVAC, но в части, касающейся вопросов программирования EDSAC, Морис Уилкс явился в некотором роде первооткрывателем. Устав кодировать каждую команду с помощью двоичных цифр (”единиц” и “нулей”), он занялся поисками более удобного способа общения с машиной. Первым результатом этих усилий явились новые коды, составленные из букв и коротких слов, взятых из английского языка. Он ввел мнемонику, где каждая команда изображалась одной заглавной буквой: S обозначала “вычитание”, Т — “передать информацию в память”, Z — “остановка машины” и т. д.

Но, пожалуй, более ценным новшеством, чем мнемоника, введенная на EDSAC, явилась библиотека подпрограмм. Надо сказать, что программисты уже были знакомы с понятием подпрограммы. Грейс Хоппер и ее коллеги применяли подпрограммы на гарвардской машине Говарда Айкена. Они имели блокноты с записью наиболее употребляемых подпрограмм, чтобы в случае необходимости не составлять их заново.

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

Морис Уилкс назвал мнемоническую схему для EDSAC и библиотеку подпрограмм собирающей системой (по-английски assembly system — отсюда слово “ассемблер”), поскольку она собирала последовательности подпрограмм.

В настоящее время языки программирования, в которых короткие мнемонические имена непосредственно соответствуют отдельным машинным командам, называются языками ассемблера. Так что, Морис Уилкс считается создателем (1949 год) одного из так называемых языков ассемблера. Компьютер EDSAC успешно использовался в расчетах по правительственному проекту ядерных исследований, проводимых в Кембридже.

В начале 50-х годов группа разработчиков, возглавляемая Уилксом, приступила к созданию второй версии компьютера EDSAC — EDSAC-II, который был введен в эксплуатацию в 1958 году.

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

Один из методов построения системы управления состоит в том, что ей придают “жесткую”, т. е. неизменяемую, схему внутренних соединений и в таком виде присоединяют к другим электрическим цепям процессора. Другой подход, позволяющий получить более гибкую, более простую, а в ряде случаев и более дешевую систему управления, сводится к тому, что систему управления заменяют программой, содержащей подробные инструкции по управлению машиной в кодированной форме. Такую программу помещают в отдельный блок памяти, который в состав процессора.

Этот подход реализации функций управления Морис Уилкс начал разрабатывать еще в 1949 году. После двух лет исследований он пришел к выводу, что наилучший подход к конструированию системы управления состоит в том, чтобы рассматривать ее как матрицу, или прямоугольную таблицу, в которой каждый горизонтальный ряд клеток соответствует одному такту, а каждый вертикальный столбец — одной из линий передачи управляющих сигналов.

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

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

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

Уилкс провел аналогию между этим подходом и обычным программированием и для описания своих идей заимствовал термины из области программирования, прибавив к ним в каждом случае приставку “микро”, указывающую на элементарность операций управления. Так появился термин “микропрограммирование” и целое семейство родственных ему. В частности, каждый ряд клеток в управляющей матрице Уилкс назвал микроинструкцией, а каждую последовательность рядов, выполняющих одну макроинструкцию, — микропрограммой.

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

Свои идеи по микропрограммированию Морис Уилкс представил в докладе “Наилучший метод конструирования автоматической вычислительной машины” на конференции в Манчестерском университете, состоявшейся в июле 1951 года. Предложенный им метод стал основой техники микропрограммирования, которой предстояло стать популярной двумя десятилетиями позже, в начале 70-х годов. В том же, 1951 году, Уилкс опубликовал еще одну работу. Совместно с двумя коллегами, Дэвидом Уиллером и Стенли Гиллом, он написал первый учебник по программированию.

К 60-м годам, после EDSAC-II, стало ясно, по какому направлению пойдет развитие компьютеров. Как писал в эти годы Уилкс, “первые компьютеры в известном смысле были вещью для программиста”, и довольно скоро стала очевидна неэффективность такого использования дорогого и дефицитного оборудования. На смену однопрограммному режиму работы пришли многопрограммный режим и режим разделения времени. “Оно не было следствием открытия какого-либо нового принципа, просто стало ясно, что существующие технические средства можно использовать гораздо лучше, чем до сих пор,” — писал М. Уилкс. В США, Англии и СССР развернулись работы по созданию систем с разделением времени, и первая CTSS была разработана Ф. Корбато и Р. Фано в 1963 году в Массачусетском технологическом институте.

Затем в Англии в середине 60-х годов ученые Кембриджа в сотрудничестве с фирмой Ferranti Ltd под руководством Мориса Уилкса создали систему с разделением времени Titan.

С 1965 года Уилкс, будучи профессором Компьютерных технологий, вместе с Чарльзом Лангом участвовал в создании системы автоматизированного проектирования на основе миникомпьютеров PDP-7 компании DEC. Эта система совершенствовалась в течение 15 лет.

В 1974 году Морис Уилкс включился в работу по созданию корпоративной сети Кембриджского университета, так называемое “кольцо Кембриджа”, с использованием сравнительно недорогих рабочих станций. Выйдя в отставку и покинув Кембридж в 1980 году, он стал штатным консультантом компании DEC, а затем членом ученого совета по планированию научных исследований организации Olivetti Research Board.

По возвращении в Кембридж он становится Заслуженным профессором в отставке, а в 1993 году ему была присвоена степень Почетного доктора наук. Морис Уилкс был первым президентом Британского компьютерного общества, членом Королевского общества, иностранным членом многих академий — Испании, Америки, Германии и др. В 1967 году он получил Тьюринговскую премию как первооткрыватель в таких областях, как компьютеры с хранимой программой, библиотеки подпрограмм и микропрограммирование.

Награды


  • 1956 — почётное членство в Лондонском королевском обществе

  • 1967 — Премия Тьюринга за разработку EDSAC и введение понятия программных библиотек

  • 1968 — Harry H. Goode Memorial Award за вклад в развитие компьютерной техники

  • 1980 — Eckert-Mauchly award

  • 1997 — IEEE John von Neumann Medal за вклад в развитие компьютерной техники

Литература


  • «Automatic Digital Computers», John Wiley & Sons, Нью-Йорк, 1956, 305 стр., QA76.W5 1956.

  • «Time-sharing Computer Systems», Elsevier, 1975. ISBN 0-444-19525-4

  • «Memoirs of a Computer Pioneer», The MIT Press. 1985. ISBN 0-262-23122-0

Данная статья была опубликована на сайтах:

«ВикипедиЯ: свободная энциклопедия»: http://ru.wikipedia.org/wiki/%D0%9C%D0%BE%D1%80%D0%B8%D1%81_%D0%A3%D0%B8%D0%BB%D0%BA%D1%81



«История компьютера»: http://chernykh.net/content/view/450/662/


База данных защищена авторским правом ©uverenniy.ru 2016
обратиться к администрации

    Главная страница