Джон Илифф (компьютерный дизайнер) - John Iliffe (computer designer)

Джон Кеннет Илифф
Портрет
Родился(1931-09-18)18 сентября 1931 г.
Лондон
Умер16 февраля 2020 г.(2020-02-16) (88 лет)[1]
Национальностьобъединенное Королевство
Альма-матерКолледж Святого Иоанна, Кембриджский университет
ИзвестенПроектирование компьютерных систем с безопасным управлением объектами и детальной программной защитой; то Илифф вектор структура хранения
НаградыПремия памяти Гарри Х. Гуда IEEE Computer Society,[2] 2000 [3]
Научная карьера
УчрежденияУниверситет Райса, Хьюстон, Техас

International Computers LimitedЛондонский университет королевы Марии, ВЕЛИКОБРИТАНИЯ

Имперский колледж Лондон, ВЕЛИКОБРИТАНИЯ

Джон Кеннет Илифф (18 сентября 1931 - 16 февраля 2020) был британским компьютерным дизайнером, который работал над проектированием и оценкой компьютеров, которые поддерживали детальную защиту памяти и управление объектами. Он реализовал, оценил и усовершенствовал такие проекты в Компьютер Института Райса, R1 (1958–61) и машина базового языка ICL (1963–68).[4][5] Ключевой особенностью архитектур обеих машин было аппаратное управление формированием и использованием ссылок на память, чтобы память могла рассматриваться как совокупность объектов данных определенного размера, целостность которых защищена от последствий ошибок при вычислении адреса. , например, указатели переполнения памяти (случайно или злонамеренно).[6]

Технический вклад

Илифф посетил курс программирования EDSAC в Кембридже в 1952 году. В конце концов он узнал о вычислениях, руководя сервисным бюро IBM (Великобритания) в Лондоне. В 1958 году его пригласили присоединиться к команде по созданию компьютера R1 в г. Институт риса, Хьюстон, где он взял на себя ответственность за разработку и реализацию операционной системы и языка.[7] В следующие 30 лет он ввел в эксплуатацию четыре компьютера для демонстрации и оценки новых концепций дизайна.

Компьютер Rice R1

Илифф руководил разработкой операционной системы и языка программирования для Рисовый компьютер. Его дизайн включал ранний пример динамического распределения и управления памятью, позволяющий программам получать хранилище по запросу и автоматически восстанавливать его, когда оно больше не было доступно.[8][9]

В R1[7] Илифф и его коллеги представили схему защиты для всех объектов данных. Манипулирование ссылками на память (так называемое кодовые слова) был ограничен привилегированным кодом, предотвращая некоторые типы программных ошибок. Кодовые слова ссылаются на векторы элементов данных, последовательности инструкций или другие кодовые слова. Доступ к хранилищу осуществлялся посредством ссылки на кодовое слово, и это было преобразовано в обычный адрес или программный счетчик, дающий прямой доступ к хранилищу при необходимости. В системе предусмотрены функции для создания, управления и обновления кодовых слов, например, изменения их для отражения решений по управлению хранилищем. Он также поддерживал алгебраический язык программирования (названный Genie), который был реализован с использованием концепций объектно-ориентированного проектирования в 1961 году.[10] Компилятор Genie и связанный с ним ассемблер были необычны в том, что позволяли рассматривать всю систему как дисциплину управления объектами. Genie также был одним из первых языков, в котором были реализованы внутренние операции над действительными и комплексными векторами и матрицами.

Известный Илифф вектор Структура хранения для многомерных и нерегулярных массивов возникла в результате работы R1. Он использует аналогичную структуру адресации, но без применения системы. В Илифф вектор Структура хранения широко используется в прикладных программах и в языковых системах высокого уровня.[11]

Базовая языковая машина

В начале 1960-х годов к компьютерам общего назначения предъявлялось жесткое требование обеспечивать одновременное выполнение нескольких пользовательских программ, как в форме мультипрограммирование для оптимизации использования ресурсов компьютера и в виде совместное времяпровождение включить интерактивные вычисления. Оба они требуют компьютерной архитектуры, в которой операционная система могла бы гарантировать разделение, безопасность и целостность нескольких одновременно выполняющихся программ. Казалось очевидным, что упрощенная модель архитектуры, производная от Princeton IAS и которой следуют все модели «фон Неймана», столкнется с серьезными трудностями при удовлетворении этого требования.

Базовая языковая машина (BLM),[5] построен и оценен в исследовательском отделе International Computers Limited (ICL) с 1963 по 1968 год[12] была первой системой общего назначения, которая полностью отказалась от Архитектура фон Неймана. Вместо того, чтобы строить архитектуру на едином линейном адресном пространстве, BLM предлагал сегментированную адресацию памяти, обеспечивая автоматическое управление хранилищем и доступ в точных границах безопасности.

Илифф придерживается инженерной точки зрения, согласно которой возможно предложить способ, основанный на методах управления памятью, уже продемонстрированных в Рис R1 для обеспечения целостности параллельных программ, не прибегая к относительно дорогостоящим механизмам, включающим частую замену состояние процесса векторы, встречающиеся в большинстве других систем. Он разработал дизайн, основанный на использовании кодовых слов для представления всех ссылок на память. Кодовое слово включало базовый адрес, а предел указание длины объекта данных и некоторых информация о типе. Внутреннее представление кодовых слов было непрозрачным для пользовательских программ, но были предусмотрены специальные машинные инструкции для управления ими таким образом, чтобы поддерживать структуру данных. Это представляло собой существенное усовершенствование архитектуры Rice R1, обеспечивающее эффективное управление множеством процессов, каждый из которых имеет отдельное хранилище данных и инструкций с древовидной структурой.

Rice R1 и BLM были примерами компьютерных архитектур на основе дескрипторов, появившихся в 1960-х годах.[6] направлена ​​как на эффективную защиту одновременно выполняющихся программ, так и на надежную реализацию языков высокого уровня. Другим важным примером был B5000 серия компьютеров, разработанная и проданная корпорацией Burroughs. Все эти компьютеры на основе дескрипторов включали аппаратные механизмы, предназначенные для поддержки надежной адресации сегментов данных. Они тесно связаны с основанный на возможностях архитектуры[6] это появилось несколько лет спустя.

Параллельно с созданием BLM отдельная команда оценивала его с точки зрения (1) эффективности программы (2) рабочих характеристик (3) затрат на кодирование и отладку и (4) накладных расходов системы. Для содержательного сравнения использовались устаревшие языки высокого уровня (Cobol, Fortran, управление файлами). Было показано, что, несмотря на точность механизма адресации, не было заметной потери эффективности или дополнительных системных издержек.

Леви[6] обсуждает более широкое влияние компьютерных архитектур на основе дескрипторов со ссылкой как на Burroughs B5000, так и на BLM (стр. 38) «... независимо от того, были ли они долговечными, эти машины продемонстрировали возможность использования дескрипторов и сегментации в значительной степени повысить гибкость программирования для пользователя, компиляторов и операционной системы ». Леви также отмечает, что «прекрасное обсуждение BLM в контексте современных систем возможностей появляется в книге Илиффа. Продвинутый компьютерный дизайн[13]".

Дизайн BLM был отклонен руководством ICL во время внутреннего обзора вариантов выбора новой архитектуры для мэйнфреймов ICL в декабре 1969 года.[14]

В 2000 году Илифф был удостоен награды IEEE Harry H. Goode Memorial Award «За пожизненные достижения в практике проектирования и оценки компьютерных систем».

Изменения в полупроводниковой технологии за 30 лет после разработки BLM привели к усовершенствованию архитектуры. В отсутствие финансирования исследований они оценивались в основном путем моделирования с использованием недорогих микропроцессоров и системы Илиффа. Продвинутый компьютерный дизайн[13] описывает их довольно подробно.

Личная жизнь

  • Образование: стипендия Карпентера в школе Лондонского Сити (1945–1948). Математические экзамены в колледже Святого Иоанна, Кембридж, 1949–1952.
  • Служба: Королевский флот 1953–1956. Инструктор-лейтенант.
  • Виды спорта: президент плавательного клуба выдры 1990–1996 гг.
  • Илифф был женат на Дороти Баннистер в 1955–2015 годах (ее смерть). У них было трое детей: Луиза, Джонатан и Кейт.

использованная литература

  1. ^ Школа Лондонского Сити: Джон Кеннет Илифф, класс 1948 г.
  2. ^ https://www.computer.org/volunteering/awards/goode
  3. ^ https://www.computer.org/profiles/john-iliffe
  4. ^ Илифф, Дж. К. (1 августа 1969 г.). «Элементы БЛМ». Компьютерный журнал. 12 (3): 251–258. Дои:10.1093 / comjnl / 12.3.251. ISSN  0010-4620.
  5. ^ а б Илифф, Дж. (1968). Основные принципы работы машины. Лондон: Макдональд. ISBN  9780356023274.
  6. ^ а б c d Леви, Генри М. (1984). Компьютерные системы на основе дескрипторов. Цифровая пресса. Получено 8 мая 2019. Глава 2 Ранние архитектуры дескрипторов, Глава 3 Ранние архитектуры возможностей
  7. ^ а б Торнтон, Адам. "Краткая история рисового компьютера 1959-1971". Архивировано из оригинал 24 февраля 2008 г.. Получено 13 марта 2019. (в основном написано в [или ранее] 1994 г. и заархивировано Wayback Machine в дату, указанную ["20080224"] в URL-адресе)
  8. ^ Илифф, Дж. (23 января 1969 г.). «Методы управления магазином». Архив Музея компьютерной истории, каталожный номер 102726224. Коллекция Эдварда Фойстеля о компьютерном проекте Университета Райса. Получено 9 июн 2019.
  9. ^ Илифф, Дж. К .; Йодейт, Джейн Г. (1 ноября 1962 г.). «Схема динамического распределения памяти». Компьютерный журнал. 5 (3): 200–209. Дои:10.1093 / comjnl / 5.3.200. ISSN  0010-4620.
  10. ^ J.K. Илифф (1961). Использование системы джиннов в численных расчетах. Годовой обзор в автоматическом программировании. 2. Elsevier Science. С. 1–28. ISBN  978-1-4832-2282-0. Получено 13 марта 2019.
  11. ^ «Программирование на C / Общие практики - Викиучебники, открытые книги для открытого мира». en.wikibooks.org. Получено 13 октября 2019.
  12. ^ Скарротт, Гордон (1995). «От линий задержки крутильного режима к DAP». Компьютерное воскрешение. 12 (Лето 1995 г.). ISSN  0958-7403. Получено 8 мая 2019.
  13. ^ а б Илифф, Дж. (1982). Продвинутый компьютерный дизайн. Прентис Холл. ISBN  978-0130112545.
  14. ^ Бакл, Дж. К. (1978). Серия ICL 2900 (PDF). Макмиллан. ISBN  978-0333219171.

дальнейшее чтение