Сэр Морис Винсент Уилкс FRS FREng [11] (26 июня 1913 – 29 ноября 2010) [12] был английским ученым-компьютерщиком , который разработал и помог создать автоматический калькулятор с электронным запоминанием задержки (EDSAC), один из первых компьютеров с хранимыми программами , и который изобрел микропрограммирование — метод использования логики хранимой программы для управления блоком управления схемами центрального процессора . На момент смерти Уилкс был почетным профессором Кембриджского университета .
Уилкс родился в Дадли , Вустершир , Англия [13] и был единственным ребенком Эллен (Хелен), урожденной Мэлоун (1885–1968) и Винсента Джозефа Уилкса (1887–1971), бухгалтера в поместье графа Дадли . [14] Он вырос в Стоурбридже , Уэст-Мидлендс, и получил образование в колледже короля Эдуарда VI в Стоурбридже . В школьные годы учитель химии познакомил его с радиолюбительством . [15]
Он изучал математический курс в колледже Святого Иоанна в Кембридже с 1931 по 1934 год, а в 1936 году защитил докторскую диссертацию по физике по теме радиораспространения очень длинных радиоволн в ионосфере . [16] Он был назначен на должность младшего преподавателя Кембриджского университета , благодаря чему он участвовал в создании вычислительной лаборатории. Он был призван на военную службу во время Второй мировой войны и работал над радаром в Научно-исследовательском институте телекоммуникаций (TRE) и в области оперативных исследований . [17]
В 1945 году Уилкс был назначен вторым директором математической лаборатории Кембриджского университета (позже известной как Компьютерная лаборатория). [13]
Кембриджская лаборатория изначально располагала множеством различных вычислительных устройств, в том числе дифференциальным анализатором . Однажды Лесли Комри посетил Уилкса и одолжил ему копию предпечатного описания Джоном фон Нейманом EDVAC , преемника ENIAC [ 18] [19] , строящегося Преспером Эккертом и Джоном Мочли в Школе электротехники Мура . Ему пришлось прочитать ее за ночь, потому что ему пришлось ее вернуть, а фотокопировальных аппаратов не было. Он сразу решил, что в документе описывается логическая конструкция будущих вычислительных машин и что он хочет участвовать в проектировании и конструировании таких машин. В августе 1946 года Уилкс отправился на корабле в Соединенные Штаты, чтобы записаться на лекции школы Мура , из которых он смог присутствовать только последние две недели из-за различных задержек в пути. [20] Во время пятидневного обратного путешествия в Англию Уилкс довольно подробно набросал логическую структуру машины, которая впоследствии стала EDSAC.
Поскольку его лаборатория имела собственное финансирование, он сразу же смог приступить к работе над небольшой практической машиной EDSAC (что означает «автоматический калькулятор с электронным запоминанием») [8] , вернувшись в Кембридж. Он решил, что его задача — не изобрести лучший компьютер, а просто сделать его доступным для университета. Поэтому его подход был чрезвычайно практичным. Он использовал только проверенные методы построения каждой части компьютера. Получившийся компьютер был медленнее и меньше, чем другие запланированные современные компьютеры. Однако компьютер его лаборатории был вторым практическим компьютером с хранимой программой , который был завершен и успешно работал с мая 1949 года, то есть за год с лишним до гораздо более крупного и сложного EDVAC. В 1950 году вместе с Дэвидом Уилером Уилкс использовал EDSAC для решения дифференциального уравнения , касающегося частот генов, в статье Рональда Фишера . [21] Это представляет собой первое использование компьютера для решения задач в области биологии .
В 1951 году он разработал концепцию микропрограммирования [10], осознав, что центральным процессором компьютера можно управлять с помощью миниатюрной узкоспециализированной компьютерной программы в высокоскоростном ПЗУ . Эта концепция значительно упростила разработку ЦП. Микропрограммирование было впервые описано на Инаугурационной компьютерной конференции Манчестерского университета в 1951 году, [22] затем расширено и опубликовано в IEEE Spectrum в 1955 году. Эта концепция была впервые реализована в EDSAC 2 , [ 9] который также использовал несколько одинаковых «битовых срезов» для упрощения проектирования. Для каждого бита процессора использовались взаимозаменяемые, сменные трубки в сборе. Следующим компьютером для его лаборатории стал Titan , совместное предприятие с Ferranti Ltd, основанное в 1963 году . доступ к вычислительным ресурсам университета, включая графические системы с разделением времени для механических САПР . [27]
Примечательной конструктивной особенностью операционной системы Титана было то, что она обеспечивала контролируемый доступ на основе личности программы, а также личности пользователя или вместо него. Он представил систему шифрования паролей, которая позже использовалась в Unix . Его система программирования также имела раннюю систему контроля версий. [27]
Уилксу также приписывают идею символических меток, макросов и библиотек подпрограмм. Это фундаментальные разработки, которые значительно упростили программирование и проложили путь к языкам программирования высокого уровня . Позже Уилкс работал над первой системой разделения времени (теперь называемой многопользовательской операционной системой) и распределенными вычислениями . К концу 1960-х годов Уилкс также заинтересовался вычислениями, основанными на возможностях , и в лаборатории был собран уникальный компьютер Cambridge CAP . [28]
В 1974 году Уилкс столкнулся со швейцарской сетью передачи данных (в компании Hasler AG), которая использовала кольцевую топологию для распределения времени в сети. Первоначально лаборатория использовала прототип для совместного использования периферийных устройств. В конце концов были сформированы коммерческие партнерства, и подобная технология стала широко доступна в Великобритании.
Уилкс получил ряд наград: он был рыцарем-бакалавром , почетным членом Британского компьютерного общества , членом Королевской инженерной академии и членом Королевского общества . [29] [30] [31] [32] [33] [15] [17] [34] [35] Уилкс был одним из основателей Британского компьютерного общества (BCS) и его первым президентом (1957–1960). В 1967 году он получил премию Тьюринга со следующей цитатой: «Профессор Уилкс наиболее известен как создатель и разработчик EDSAC, первого компьютера с внутренней программой. Построенный в 1949 году, EDSAC использовал ртутную память с линией задержки. Он также известен как автор вместе с Дэвидом Уилером и Стэнли Гиллом тома « Подготовка программ для электронных цифровых компьютеров» в 1951 году [36] , в котором были эффективно представлены библиотеки программ». В 1968 году он получил Мемориальную премию Гарри Х. Гуда со следующей цитатой: «За его многочисленные оригинальные достижения в области компьютеров, как в области инженерии, так и в области программного обеспечения, а также за его вклад в развитие деятельности профессиональных обществ и в международное сотрудничество между компьютерные специалисты». [ нужна цитата ]
В 1972 году Уилкс был удостоен звания почетного доктора наук Университета Ньюкасла . [37]
В 1980 году он оставил профессорскую должность и пост руководителя компьютерной лаборатории и присоединился к центральному инженерному составу корпорации Digital Equipment в Мейнарде, Массачусетс , США. [13]
Уилкс был награжден медалью Фарадея Институтом инженеров-электриков в 1981 году. Премия Мориса Уилкса , ежегодно присуждаемая за выдающийся вклад в компьютерную архитектуру, внесенный молодым ученым-компьютерщиком или инженером, названа в его честь. В 1986 году он вернулся в Англию и стал членом Совета по стратегии исследований Оливетти . В 1987 году ему была присвоена почетная степень (доктор наук) Университета Бата . В 1993 году Кембриджский университет удостоил Уилкса почетной степени доктора наук. В 1994 году он был назначен членом Ассоциации вычислительной техники . Он был награжден медалью Маунтбеттена в 1997 году, а в 2000 году прочитал первую лекцию Пинкертона . Он был посвящен в рыцари в Новогоднем списке почестей 2000 года . В 2001 году он был удостоен звания научного сотрудника Музея истории компьютеров «за вклад в компьютерные технологии, включая раннее проектирование машин, микропрограммирование и сеть Кембриджского кольца». [38] В 2002 году Уилкс вернулся в компьютерную лабораторию Кембриджского университета в качестве почетного профессора. [13]
В своих мемуарах Уилкс писал: [17]
Я хорошо помню, когда это осознание впервые пришло ко мне с полной силой. EDSAC находился на верхнем этаже здания, а оборудование для перфорации и монтажа — этажом ниже. ... Именно во время одного из моих путешествий между помещением EDSAC и штамповочным оборудованием меня, «колеблясь на углах лестницы», с полной силой охватило меня осознание того, что значительная часть оставшейся моей жизни будет потрачена в поиске ошибок в собственных программах.
Уилкс женился на классике Нине Твайман в 1947 году. [39] Она умерла в 2008 году; он в 2010 году. У Уилкса остались сын и две дочери.
Как только мы начали программировать, мы, к своему удивлению, обнаружили, что составить правильные программы не так просто, как мы думали. Нам пришлось открыть для себя отладку. Я помню тот момент, когда понял, что с тех пор большая часть моей жизни будет потрачена на поиск ошибок в моих собственных программах.
Сэр Морис, как его называют сегодня, был вдохновлен CTSS на создание системы разделения времени.
Морис Уилкс обнаружил CTSS во время визита в Массачусетский технологический институт примерно в 1965 году и вернулся в Кембридж, чтобы убедить всех нас, что разделение времени — это путь вперед.