За Brinch Хансен (13 ноября 1938 - 31 июля 2007) был датский - американский ученый известный по своей работе в операционных системах , параллельное программирование и параллельно и распределенные вычислительные .
Пер Бринч Хансен | |
---|---|
Родившийся | |
Умер | 31 июля 2007 г. | (68 лет)
Альма-матер | Технический университет Дании |
Известен | |
Награды | |
Научная карьера | |
Поля | Информатика |
Учреждения | |
Влияния | |
Веб-сайт | brinch-hansen |
биография
ранняя жизнь и образование
Пер Бринч Хансен родился в Фредериксберге , анклаве, окруженном Копенгагеном , Дания . Его отец, Йорген Бринч Хансен , работал инженером-строителем, став ведущим специалистом в области механики грунтов, а затем получил профессуру в Техническом университете Дании . Его мать, Эльзебет Бринч Хансен (урожденная Ринг), была дочерью датского композитора Олуфа Ринга и до свадьбы работала парикмахером. [1]
Бринч Хансен посещал гимназию Св. Йоргенса, а затем изучал электротехнику в Техническом университете Дании, где он искал область для развития, которая «все еще была новаторской», полагая, что «если предмет преподавался, он, вероятно, уже был слишком поздно вносить фундаментальный вклад ". [1] [2] После семинедельной студенческой стажировки в лаборатории IBM Hursley в Англии он решил посвятить свою карьеру компьютерам. Первоначально сосредоточившись на конструировании компьютеров, чтение книги IBM Project Stretch , описывающей компьютерную организацию с точки зрения программиста [3], переориентировало его интерес на то, чтобы стать архитектором компьютеров. [1]
Regnecentralen
После получения степени магистра электронной инженерии в 1963 году Бринч Хансен устроился на работу в Regnecentralen , в то время исследовательский институт Датской академии технических наук , работая в группе составителей, возглавляемой Питером Науром и Йорном Йенсеном . [2] Там его первым значительным проектом было написание парсера для компилятора COBOL для компьютера Siemens 3003.
Впоследствии он написал файловую систему, которая будет использоваться во время выполнения скомпилированных программ COBOL, позже отмечая: [1]
Теперь я понимаю, что это была действительно маленькая операционная система, которую я программировал. Однако в середине 1960-х граница между реализацией языка и операционными системами еще не была четко понята.
В 1966 году Бринч Хансен перешел в группу аппаратного обеспечения Хеннинга Исакссона в Regnecentralen, которая к тому времени уже была компанией с акционерами. Вместе с Питером Крафт он определил архитектуру и набор инструкций для третьего компьютера Regnecentralen, RC 4000, используя Algol 60 в качестве языка описания оборудования для создания формальной спецификации.
Не имея опыта в мультипрограммировании , он использовал копию « Сотрудничающих последовательных процессов» [4], которую Эдсгер Дейкстра послал ему, чтобы понять синхронизацию процессов с использованием семафоров , а затем внедрил специализированный монитор реального времени RC 4000 для использования при управлении заводом по производству удобрений. Питер Крафт и Чарльз Симони , которые были еще подростком, написали интерпретатор p-кода и программы задач регистрации данных, которые были скомпилированы в p-код. [1]
Летом 1967 года Бринч Хансен покинул группу аппаратного обеспечения Regnecentralen и возглавил отдел разработки программного обеспечения RC 4000 , где он возглавил команду, в которую входили Йорн Йенсен, Питер Крафт и Сёрен Лауэсен, для определения универсальной мультипрограммной системы RC 4000 с целью: избегать разработки специальной операционной системы управления в реальном времени для каждой установки RC 4000, а также поддерживать пакетную обработку и разделение времени . [1] Получившаяся система была не полной операционной системой, а небольшим ядром, обеспечивающим механизмы, на которых могли быть построены операционные системы для различных целей. [5] К весне 1969 года уже работала хорошо задокументированная и надежная версия мультипрограммной системы RC 4000. [1]
Университет Карнеги Меллон
В конце 1970 года Бринч Хансен переехал в Питтсбург , приняв приглашение Алана Перлиса посетить факультет компьютерных наук Университета Карнеги-Меллона в качестве научного сотрудника, когда он написал первый систематический учебник по принципам работы операционных систем. [1] [2] В это время на Летней школе 1971 года в Марктобердорфе и симпозиуме в Белфасте Бринч Хансен, Тони Хоар и Дейкстра начали обсуждать идеи, которые переросли в концепцию монитора . Весной 1972 года, прочитав о концепции классов, изобретенной Оле-Йоханом Далем и Кристен Найгаард для Simula 67 , Бринч Хансен завершил свой текст главой о защите ресурсов, в которой была предложена первая нотация монитора с использованием общих классов. [6] В 1973 году были опубликованы « Принципы операционных систем », ставшие первым всеобъемлющим учебником по операционным системам. [7]
Калифорнийский технологический институт
В июле 1972 года Бринч Хансен поступил на факультет Калифорнийского технологического института в качестве адъюнкт-профессора информатики, где он начал работу над определением языка программирования с параллельными процессами и мониторами. В апреле 1974 года он распространил технический отчет по Concurrent Pascal . [1] [2] Компилятор Concurrent Pascal для PDP 11/45 , написанный докторантом Бринча Хансена Элом Хартманном, был выпущен в январе 1975 года. [8] Впоследствии Бринч Хансен начал писать модельные операционные системы на Concurrent Pascal, чтобы оцените язык. В мае 1975 года он завершил Solo, однопользовательскую операционную систему для разработки программ Concurrent Pascal. Затем он переписал исходный планировщик реального времени RC 4000 на Concurrent Pascal, потратив три дня на его написание и три часа машинного времени на его систематическое тестирование. [6]
Когда факультет информатики Калифорнийского технологического института сместил акцент на компьютерную инженерию и отказался от программирования, Бринч Хансен решил уйти, а не искать там работу. [1]
Университет Южной Калифорнии
В 1976 году Бринч Хансен выбрал USC на свой следующий пост, чтобы его семья могла остаться в своем доме в Альтадене . Присоединившись к факультету в качестве штатного профессора и первого председателя недавно созданной кафедры информатики, он возглавил усилия по выявлению и привлечению высококлассных преподавателей для создания первоклассной кафедры. К 1980 году факультет информатики Университета Южной Калифорнии был признан Национальным исследовательским советом одним из десяти лучших в США. [1]
Во время учебы в USC Бринч Хансен написал свою вторую книгу «Архитектура параллельных программ», основанную на его работе по разработке операционных систем с помощью Concurrent Pascal. [2] Опубликованная в 1977 году, это была первая книга по параллельному программированию. [9] В 1978 году Бринч Хансен стал первым компьютерным ученым, удостоенным степени доктора технических наук, высшей академической награды в области инженерных и технологических наук в Дании, [10] за работу, задокументированную в «Архитектуре параллельных программ» . Позже в 1978 году Бринч Хансен опубликовал концепцию языка «Распределенные процессы», предложив использовать удаленные вызовы процедур для синхронизации процессов, выполняемых в микрокомпьютерной сети. [11]
Также в 1978 году LJ Севинс и Стив Гоингс из Mostek посетили Бринча Хансена в USC, где он рассказал о недорогой многопроцессорной архитектуре. Mostek начал проект по внедрению такого мультипроцессора, а Бринч Хансен работал консультантом. [1] Бринч Хансен разработал для этого проекта новый язык параллельного программирования, Edison. [12] Как и в случае с проектом RC 4000, Edison также использовался в качестве формального языка спецификации для оборудования. Mostek получил начальный четырехузловой мультипроцессор, работающий, и Бринч Хансен написал портативный компилятор Edison для PDP 11/55, но вскоре после этого United Technologies приобрела Mostek [13] и отменила проект. В 1982 году Бринч Хансен перенес систему Эдисона на IBM PC , а затем опубликовал свою третью книгу « Программирование персонального компьютера» . [14]
В 1982 году Бринч Хансен был назначен первым профессором компьютерных наук Генри Сальватори в Университете Южной Калифорнии. [1]
Копенгагенский университет
В 1984 году, скучав по Дании после четырнадцати лет за границей, Бринч Хансен покинул USC и поступил на факультет Копенгагенского университета в качестве профессора даталогии . [1] В 1985 году он был избран членом IEEE . [15] Позже, в 1985 году , была опубликована его четвертая книга Бринча Хансена о компиляторах Паскаля , которую он использовал для своего собственного курса компиляторов. [16]
Разрабатывая мультикомпьютерную операционную систему для датской компании GN Elmi, Бринч Хансен пришел к выводу, что ему нужен новый язык, на этот раз использующий парадигму передачи сообщений CSP Хоара . [1] В результате язык Joyce устранил основное ограничение CSP, введя параллельную рекурсию . [17] Бринч Хансен разработал портативную реализацию на IBM PC. [1]
Сиракузский университет
Обнаружив, что ни он, ни его семья не чувствуют себя в Дании как дома, Бринч Хансен решил вернуться в США, но обнаружил, что их иммиграционный статус требует от них сделать это очень быстро. Бринч Хансен связался с Джоном Рейнольдсом из Сиракузского университета, и в 1987 году он поступил на факультет в качестве заслуженного профессора. [1]
Работая со своим учеником Рангачари Анандом, Джойс перешел на мультипроцессор Encore Multimax 320 в Центре северо-восточной параллельной архитектуры SU. Однако, осознавая ограничения масштабирования мультипроцессоров, Бринч Хансен искал подходящий мультикомпьютер для дальнейшей работы. Приобретя Meiko Computing Surface в 1989 году, он начал экспериментировать с научными приложениями, разрабатывая параллельные программы для редукции Хаусхолдера, а затем моделирования n-тел в качестве обучающих упражнений, и с удивлением обнаружил, что обе программы имеют почти идентичные управляющие структуры. Сделав вывод, что оба они соответствуют «парадигме всех пар», он затем сосредоточился на изучении повторно используемых структур параллельных алгоритмов, которые он назвал «парадигмами программирования» или «общими программами» (позже, широко известными как « шаблоны проектирования »). [1] В 1995 году была опубликована пятая книга Бринча Хансена « Исследования в области вычислительной науки: парадигмы параллельного программирования » [18] с программами, переписанными на SuperPascal , полностью реализованном языке публикаций, который он создал для параллельных алгоритмов. [19]
Последние годы
В последние годы своей жизни Бринч Хансен опубликовал ретроспективу своих наиболее важных работ « В поисках простоты» (1996 г.) [20], текст для курса программирования для неосновных специалистов « Программирование для всех на Java» (1999 г.), [21 ] ретроспективу эволюции операционных систем, Классические операционные системы: от пакетной обработки к распределенным системам (2001), [22] и ретроспективу эволюции параллельного программирования, Происхождение параллельного программирования: от семафоров к удаленным вызовам процедур ( 2002). [23] Он опубликовал на своем веб-сайте мемуары 2004 года «История программиста: жизнь компьютерного пионера» . [1]
В 2002 году Бринч Хансен был удостоен награды IEEE Computer Pioneer Award «За новаторские разработки в области операционных систем и параллельного программирования, примером которых является работа над системой мультипрограммирования RC 4000, мониторами и Concurrent Pascal». [15]
31 июля 2007 года Бринч Хансен умер вскоре после того, как ему поставили диагноз неизлечимой болезни. [24]
Личная жизнь
Бринч Хансен познакомился со своей женой Миленой (урожденной Храстар) во время классной поездки в Югославию в 1962 году. Они поженились в 1965 году, у них родилось двое детей, дочь Метте и сын Томас. [1]
Научный вклад и влияние
За свою пятидесятилетнюю карьеру Бринч Хансен внес значительный вклад в области операционных систем, параллельных вычислений, а также параллельных и распределенных вычислений, которые повлияли на развитие этих областей и их продвижение от специальных методов к систематическим инженерным дисциплинам. [15] Воздействие его работы было усилено его «неустанным поиском простоты», [15] его настойчивым требованием ясности, написанием и переписыванием своих статей много раз перед их публикацией, [20] став «одним из лучших объяснителей в бизнес » [25] и его приверженность тестированию концепций в рабочих системах - Бринч Хансен внедрил и распределил рабочие системы для новых разработанных им концепций, отметив:
Не редкость, когда ученый-компьютерщик делает предложение, не проверяя, насколько оно пригодно на практике. Потратив 3 дня на написание предложения по мониторингу и 3 года на его реализацию, я очень хорошо понимаю это искушение. Возможно, это также иногда человеческая реакция на огромное давление на университетских профессоров с целью быстрого получения финансирования и признания. Тем не менее, мы должны помнить, что в инженерии имеет значение только одно: работает ли это (а не «может ли это сработать» или «было бы хорошо, если бы это сработало»)? [26]
Операционные системы
Система мультипрограммирования RC 4000 представила теперь стандартную концепцию ядра операционной системы и разделение политики и механизма при проектировании операционной системы. Современные микроядерные архитектуры уходят корнями в расширяемую архитектуру ядра RC 4000. [15] Повышение производительности микроядра было основной темой в исследованиях операционных систем в течение трех десятилетий после RC 4000.
Текст Бринча Хансена « Принципы операционных систем» был первым всеобъемлющим учебником по операционным системам. В конечном итоге опубликованный на шести языках (английском, японском, немецком, чешском, польском и сербохорватском) [1], он оставался в печати в течение десятилетий, а спустя годы после того, как описанная в нем система RC 4000 устарела. В 1990 году, спустя почти два десятилетия после его первой публикации, П. Дж. Плаугер рассмотрел его, сказав:
Эта книга ужасно устарела. В нем описаны многие алгоритмы операционной системы RC4000. RC4000 медленный, маленький и по сегодняшним меркам испытывает нехватку периферийных устройств. Алгоритмы представлены в подмножестве Паскаля. Зачем беспокоиться? Ответ заключается в том, что Бринч Хансен - один из лучших объяснителей в бизнесе. Он объясняет вещи ясно и по существу. Он понимает общий принцип, лежащий в основе этого примера, но умудряется избегать ненужных абстракций. Спустя столько лет его все еще приятно читать. [25]
В 2005 году члены ACM проголосовали за « Принципы операционной системы» в топ-25 классических книг в опросе, в котором они выбрали уже не издаваемые классические книги для добавления в цифровую библиотеку ACM. Принципы операционной системы заняли 15-е место в опросе, набрав 8,8% бюллетеней. [27] Теперь он доступен в цифровой библиотеке ACM .
Используя Concurrent Pascal, Бринч Хансен продемонстрировал, что возможно полностью реализовать операционные системы на языках высокого уровня, и что это сократило усилия по разработке на один-два порядка. [28] Кроме того, можно было публиковать целые операционные системы и понимать их целиком. Бринч Хансен сделал именно это в «Архитектуре параллельных программ» , в результате чего Рой Мэддукс и Харлан Миллс заявили:
Вторая часть книги действительно замечательна. Здесь видна вся операционная система, и каждая строчка программы открыта для изучения. В этом нет никакой скрытой тайны, и после изучения таких обширных примеров читатель чувствует, что он мог бы взяться за аналогичную работу и что он мог бы изменить систему по своему желанию. Никогда раньше мы не видели операционную систему, показанную так подробно и с такой поддающейся модификацией. [29]
Параллельное программирование
Бринч Хансен и Хоар разработали концепцию монитора. Бринч Хансен опубликовал первую нотацию монитора, приняв концепцию классов Simula 67, [7] и изобрел механизм очередей. [30] Хоар уточнил правила возобновления процесса. [31] Бринч Хансен создал первую реализацию мониторов на Concurrent Pascal. [6] К 1990 году было создано более десятка дополнительных языков на основе мониторов: Simone, Modula , CSP / k, CCNPascal, PLY, Pascal Plus, Mesa, SB-Mod, Concurrent Euclid , Pascalc, Concurrent C, Emerald, Real -время Евклид, Паскаль-FC, Тьюринг Плюс , Предула. [6]
Параллельный Паскаль был первым языком параллельного программирования: [29] первым языком, разработанным специально для параллельного программирования, и, что более важно, первым языком, продемонстрировавшим возможность включения безопасных [32] высокоуровневых средств для параллелизма, где Система может гарантировать, что процессы обращаются только к непересекающимся наборам переменных и не мешают друг другу во времени. [23] Хоар назвал его «выдающимся примером лучших академических исследований в этой области». [33]
Исходный и переносимый код для Concurrent Pascal и операционной системы Solo был распространен по крайней мере в 75 компаниях и 100 университетах в 21 стране, что привело к его широкому внедрению, переносу и адаптации как в промышленности, так и в академических кругах. [6] Грег Эндрюс заметил, что Concurrent Pascal и мониторы «сильно повлияли на большинство последующих предложений параллельного языка». [6]
Книга Бринча Хансена « Архитектура параллельных программ» была первой книгой по параллельному программированию [29], которая в конечном итоге была опубликована на трех языках (английском, японском и немецком). [1] Более чем через десять лет после его публикации П. Дж. Плаугер заметил:
Несомненно, за последние десять лет были сделаны улучшения. У нас есть лучшие алгоритмы синхронизации и более интересные (если не обязательно лучшие) языки с контролем параллелизма. Но вы не найдете лучшего обзора параллельного программирования, чем эта книга. По крайней мере, я его не нашел. [25]
В 2005 году члены ACM проголосовали за «Архитектуру параллельных программ» в топ-25 классических книг, заняв 18-е место в опросе и получив 8% голосов. [27] Теперь он доступен в цифровой библиотеке ACM .
Распределенные вычисления и удаленный вызов процедур
Вызовы удаленных процедур, используемые в современных операционных системах, восходят к системе мультипрограммирования RC 4000 [15], которая использовала протокол связи запрос-ответ для синхронизации процессов. [34]
В своей статье 1978 года о распределенных процессах Бринч Хансен предложил язык для распределенных вычислений, основанный на внешних запросах, состоящих из вызовов процедур между процессами. [35] Позже это стало известно в контексте операционной системы как удаленный вызов процедуры. [36]
Позже Бринч Хансен разработал два языка, расширяющих парадигму передачи сообщений CSP Хоара с помощью параллельной рекурсии [17] [19], и показал, как эффективно реализовать такое. [37]
Почести и награды
- Доктор технических наук, Технический университет Дании , по архитектуре параллельных программ, 1978 г.
- Первый профессор компьютерных наук Генри Сальватори, Университет Южной Калифорнии , 1982 г.
- Сотрудник IEEE , 1985 г.
- Заслуженный профессор Сиракузского университета , 1987 г.
- Медаль канцлера, Сиракузский университет , 1989 г.
- Награда IEEE Computer Pioneer , для пионеров разработки операционных систем и параллельного программирования на примере работы на RC 4000 многозадачности системы, мониторы и Concurrent Pascal , 2002
Языки программирования
- Параллельный Паскаль (1975)
- Распределенные процессы (1978)
- Эдисон (1981)
- Джойс (1987)
- СуперПаскаль (1993)
Котировки
- Написание - это строгий тест на простоту: просто невозможно убедительно написать об идеях, которые не могут быть поняты [20]
- Программирование - это искусство писать эссе кристально чистой прозой и делать их исполняемыми [9]
Публикации
- Книги
- Принципы операционной системы (1973, ISBN 0-13-637843-9 )
- Архитектура параллельных программ (1977, ISBN 0-13-044628-9 )
- Программирование персонального компьютера (1983 г., ISBN 0-13-730267-3 )
- Бринч Хансен о компиляторах Паскаля (1985, ISBN 0-13-083098-4 )
- Исследования в области вычислительной науки: парадигмы параллельного программирования (1995 г., ISBN 0-13-439324-4 )
- В поисках простоты: очерки параллельного программирования (1996 г., ISBN 0-81-867566-7 )
- Программирование для всех на Java (1999 г., ISBN 0-387-98683-9 )
- Классические операционные системы: от пакетной обработки к распределенным системам (редактор, 2001 г., стр. ISBN 0-387-95113-X )
- Происхождение параллельного программирования: от семафоров до удаленных вызовов процедур (редактор, 2002 г., стр. ISBN 0-387-95401-5 )
- История программиста: жизнь компьютерного пионера (2004 г., доступно на http://brinch-hansen.net/ )
- Избранные статьи
- Компилятор Cobol для Siemens 3003 , BIT 6, 1 (1966), 1–23 (с Роджером Хаусом)
- Соображения по конструкции для компьютера RC 4000 , Regnecentralen, Копенгаген, Дания (1966 г.) (с Питером Крафт)
- Логическая структура компьютера RC 4000 , БИТ 7, 3 (1967), 191–199.
- Система управления в реальном времени RC 4000 в Пулавах , BIT 7, 4 (1967), 279–288
- Программное обеспечение RC 4000: мультипрограммная система, часть I, общее описание , Regnecentralen, Копенгаген, Дания (1969) 13–52
- Программное обеспечение RC 4000: мультипрограммная система (полная) , Regnecentralen, Копенгаген, Дания (1969)
- Компьютер RC 4000: Справочное руководство , Regnecentralen, Копенгаген, Дания (1969)
- Ядро системы мультипрограммирования , Сообщения ACM 13, 4 (апрель 1970), 238–242
- План курса операционных принципов системы , в операционных системах методы , Труды семинара в Королевском университете в Белфасте, Северная Ирландия, август-сентябрь 1971 г. Хоар и RH Перротт, ред. Academic Press, Нью-Йорк (1972), 29–36.
- Структурированное мультипрограммирование , Сообщения ACM 15, 7 (июль 1972 г.), 574–578
- Общие классы , Принципы операционных систем , Раздел 7.2 Концепция классов, Прентис Холл, Энглвуд Клиффс, Нью-Джерси, (июль 1973 г.), 226–232.
- Тестирование мультипрограммной системы , Программное обеспечение - Практика и опыт 3, 2 (апрель – июнь), 145–150
- Язык программирования Concurrent Pascal , IEEE Transactions on Software Engineering 1, 2 (июнь 1975 г.), 199–207
- Операционная система Solo: параллельная программа на языке Pascal , Программное обеспечение - Практика и опыт 6, 2 (апрель – июнь 1976 г.), 141–149
- Операционная система Solo: процессы, мониторы и классы , Программное обеспечение - Практика и опыт 6, 2 (апрель – июнь 1976 г.), 165–200
- Программист как молодая собака , английский перевод автора Programmøren som hvalp, In Niels Ivar Bech — en epoke i edbudviklingen i Danmark , P. Sveistrup, P. Naur, HB Hansen и C. Gram, Eds., (In Датский), Data, Копенгаген, Дания, (1976), 65–68
- Опыт работы с модульным параллельным программированием , IEEE Transactions on Software Engineering 3, 2 (март 1977 г.), 156–159
- Принципы дизайна , в Архитектуре параллельных программ , Глава 1 Принципы дизайна, Прентис Холл, Энглвуд Клиффс, Нью-Джерси, (июль 1977 г.), 3–14.
- Сеть: многопроцессорная программа , IEEE Transactions on Software Engineering 4, 3 (май 1978 г.), 194–199
- Распределенные процессы: концепция параллельного программирования , Коммуникации ACM 21, 11 (ноябрь 1978 г.), 934–941
- Воспроизводимое тестирование мониторов , Программное обеспечение - Практика и опыт 8, 6 (ноябрь – декабрь), 721–729
- Основной доклад о параллельном программировании , основной доклад на конференции IEEE Computer Software & Applications , Чикаго, Иллинойс, ноябрь 1978 г., Computer 12, 5 (май 1979 г.), 50–56
- Дизайн Эдисона , Программное обеспечение - Практика и опыт 11, 4 (апрель 1981), 363–396
- Джойс - язык программирования для распределенных систем , программное обеспечение - практика и опыт 17, 1 (январь 1987 г.), 29–50
- Отчет Joyce Language , Программное обеспечение - Практика и опыт 19, 6 (июнь 1989 г.), 553–578
- Многопроцессорная реализация Joyce , Software - Practice and Experience 19, 6 (июнь 1989 г.), 579–592.
- Природа параллельного программирования , Первый симпозиум в Сиракузском университете, Сиракузы, штат Нью-Йорк, март 1989 г., «В естественных и искусственных параллельных вычислениях» , М. А. Арбиб и Дж. А. Робинсон, ред. MIT Press, Кембридж, Массачусетс, (1990), 31–46.
- Переоткрытый линейный поиск , Структурное программирование 11, (1990), 53–55
- Редукция линейных уравнений Хаусхолдера , ACM Computing Surveys 24, 2 (июнь 1992), 185–194
- Мониторы и параллельный Паскаль: личная история , 2-я конференция ACM по истории языков программирования , Кембридж, Массачусетс, апрель 1993 г., в SIGPLAN Notices 28, 3 (март 1993 г.), 1–35
- Модельные программы для вычислительной науки: методология программирования для мультикомпьютеров , параллелизм - практика и опыт 5, 5 (август 1993), 407–423
- Параллельные клеточные автоматы: модельная программа для вычислительной науки , Параллелизм - практика и опыт 5, 5 (август 1993), 425–448
- Повторное обращение к разделению на несколько длин: экскурсия по минному полю , Программное обеспечение - Практика и опыт 24, (июнь 1994 г.), 579–601.
- SuperPascal - язык публикаций для параллельных научных вычислений , параллелизм - практика и опыт 6, 5 (август 1994 г.), 461–483
- Контроль интерференции в SuperPascal - параллельном языке блочно-структурированного языка , Компьютерный журнал 37, 5 (1994), 399–406
- Эффективная параллельная рекурсия , SIGPLAN Notices 30, 12 (декабрь 1995 г.), 9–16
- Конвейер для всех пар , в Исследования в области вычислительной техники , Глава 4: Конвейер для всех пар. Прентис Холл, Энглвуд Клиффс, Нью-Джерси, (март 1995 г.), 73–89.
- Балансировка конвейера , в « Исследованиях в области вычислительной техники» , Глава 5: Балансировка конвейера. Прентис Холл, Энглвуд Клиффс, Нью-Джерси, (март 1995 г.), 90–100
- Небезопасный параллелизм Java , SIGPLAN Notices 34, 4 (апрель 1999 г.), 38–45.
- Эволюция операционных систем , В классических операционных системах: от пакетной обработки к распределенным системам , P. Brinch Hansen, Ed., Springer-Verlag, New York (2001).
- Изобретение параллельного программирования , В книге "Происхождение параллельного программирования: от семафоров к удаленным вызовам процедур", изд. П. Бринч Хансен, издательство Springer-Verlag, Нью-Йорк (2002).
Смотрите также
- Список пионеров информатики
Рекомендации
- ^ Б с д е е г ч я J к л м п о р д т ы т у V Бринч Хансен, Пер (2004). История программиста: жизнь компьютерного пионера .
- ^ а б в г д Хей, Томас (2003-02-19). "Пер Бринч Хансен" (PDF) . IEEE Annals of the History of Computing . 25 : 80–83. DOI : 10.1109 / MAHC.2003.1179888 . S2CID 2279629 .
- ^ Бухгольц, Вернер (1962). Планирование компьютерной системы: Project Stretch (PDF) . Архивировано из оригинального (PDF) 3 апреля 2017 года . Проверено 14 декабря 2015 .
- ^ Дейкстра, Эдсгер (сентябрь 1965 г.). «Взаимодействующие последовательные процессы» . Технологический университет, Эйндховен, Нидерланды .
- ^ Бринч Хансен, Пер (апрель 1970). «Ядро многопрограммной системы» (PDF) . Коммуникации ACM . 13 (4): 238–241. CiteSeerX 10.1.1.105.4204 . DOI : 10.1145 / 362258.362278 . S2CID 9414037 .
- ^ а б в г д е Бринч Хансен, Пер (апрель 1993 г.). «Мониторы и параллельный Паскаль: личная история» (PDF) . 2-я конференция ACM по истории языков программирования .
- ^ а б Бринч Хансен, Пер (1973). Принципы операционной системы . Прентис Холл. ISBN 978-0-13-637843-3.
- ^ Хартманн, Альфред К. (1977). Параллельный компилятор Паскаля для мини-компьютеров . Конспект лекций по информатике. 50 . Гейдельберг, Германия: Конспект лекций Springer-Verlag по информатике. DOI : 10.1007 / 3-540-08240-9 . ISBN 978-3-540-08240-8. S2CID 2960929 .
- ^ а б Бринч Хансен, Пер (1977). Архитектура параллельных программ . Прентис Холл. ISBN 978-0-13-044628-2.
- ^ «Классическая степень доктора технических наук (доктор технических наук) - ДТУ» . Технический университет Дании . Проверено 14 декабря 2015 .
- ^ Бринч Хансен, Пер (ноябрь 1978 г.). «Распределенные процессы: концепция параллельного программирования» (PDF) . Коммуникации ACM . 21 (11): 934–941. CiteSeerX 10.1.1.107.3108 . DOI : 10.1145 / 359642.359651 . S2CID 11610744 .
- ^ Бринч Хансен, Пер (апрель 1981). «Дизайн Эдисона» (PDF) . Программное обеспечение - практика и опыт .
- ^ Люк, Томас Дж. (1985-10-18). «МОСТЕК, БОЛЬШОЙ ЧИПОВОД, ОТКЛЮЧЕНИЕ» . Нью-Йорк Таймс . ISSN 0362-4331 . Проверено 15 декабря 2015 .
- ^ Бринч Хансен, Пер (1982). Программирование персонального компьютера . Прентис Холл. ISBN 978-0-13-730267-3.
- ^ а б в г д е «Пер Бринч Хансен • Компьютерное общество IEEE» . www.computer.org . Проверено 14 декабря 2015 .
- ^ Бринч Хансен, Пер (1985). Бринч Хансен о компиляторах Паскаля . Прентис Холл. ISBN 978-0-13-083098-2.
- ^ а б Бринч Хансен, Пер (январь 1987 г.). «Джойс - язык программирования для распределенных систем» (PDF) . Программное обеспечение - практика и опыт .
- ^ Бринч Хансен, Пер (1995). Исследования в области вычислительной науки: парадигмы параллельного программирования . Прентис Холл. ISBN 978-0-13-439324-7.
- ^ а б Бринч Хансен, Пер (август 1994). «SuperPascal - язык публикации для параллельных научных вычислений» (PDF) . Параллелизм - практика и опыт .
- ^ а б в Бринч Хансен, Пер (1996). В поисках простоты . Издательство IEEE Computer Society Press. ISBN 978-0-81-867566-9.
- ^ Бринч Хансен, Пер (1999). Программирование для всех на Java . Springer-Verlag. ISBN 978-0-387-98683-8.
- ^ Бринч Хансен, Пер (2001). Классические операционные системы: от пакетной обработки к распределенным системам . Springer-Verlag. ISBN 978-0-387-95113-3.
- ^ а б Бринч Хансен, Пер (2002). Происхождение параллельного программирования: от семафоров до удаленных вызовов процедур . Springer-Verlag. ISBN 978-0-387-95401-1.
- ^ «Л.С. Смит оплакивает кончину профессора Пера Бринча Хансена» . SU Engineering & Computer Science . Архивировано из оригинала на 2015-12-22 . Проверено 14 декабря 2015 .
- ^ а б в Plauger, PJ (февраль 1990 г.). "Уровень развития". Программирование встроенных систем .
- ^ Бринч Хансен, Пер (апрель 1976 г.). «Инновации и мелочи в программной инженерии (гостевая редакция)». Программное обеспечение - практика и опыт .
- ^ а б Паттерсон, Дэвид (март 2006 г.). «Возрождение ваших любимых книг по CS». Коммуникации ACM . 49 (3): 31. DOI : 10,1145 / 1118178,1118213 . S2CID 1537883 .
- ^ Бринч Хансен, Пер (апрель 1976 г.). «Операционная система Solo: параллельная программа на языке Pascal» (PDF) . Программное обеспечение - практика и опыт .
- ^ а б в Мэддакс Р. и Миллс Х. (май 1979 г.). «Обзор архитектуры параллельных программ». Компьютер . 12 (5): 102. DOI : 10,1109 / mc.1979.1658762 .
- ^ Бринч Хансен, Пер (июль 1972 г.). «Структурированное мультипрограммирование (Приглашенный доклад)». Коммуникации ACM . 15 (7): 574–578. DOI : 10.1145 / 361454.361473 . S2CID 14125530 .
- ^ Хоар, ЦАР (октябрь 1974 г.). «Мониторы: концепция структурирования операционной системы». Коммуникации ACM . 17 (10): 549–557. CiteSeerX 10.1.1.24.6394 . DOI : 10.1145 / 355620.361161 . S2CID 1005769 .
- ^ Хоар, ЦАР (1974). «Подсказки по дизайну языков программирования». В области надежности компьютерных систем, С. Буньян, под ред. : 505–534.
- ^ Хоар, ЦАР (1976). «Подсказки по разработке языка программирования для управления и контроля в реальном времени». В программном обеспечении реального времени: Международный отчет о состоянии дел, JP Spencer, Ed. : 685–699.
- ^ Бринч Хансен, Пер (1969). Компьютерное программное обеспечение RC 4000: система мультипрограммирования (PDF) . Копенгаген, Дания: Regnecentralen.
- ^ Бринч Хансен, Пер (ноябрь 1978 г.). «Распределенные процессы: концепция параллельного программирования» (PDF) . Коммуникации ACM . 21 (11): 934–941. CiteSeerX 10.1.1.107.3108 . DOI : 10.1145 / 359642.359651 . S2CID 11610744 .
- ^ Эндрюс, Грег (1991). Параллельное программирование: принципы и практика . Редвуд-Сити, Калифорния: Бенджамин Каммингс. ISBN 978-0-80-530086-4.
- ^ Бринч Хансен, Пер (декабрь 1995 г.). «Эффективная параллельная рекурсия» (PDF) . Уведомления SIGPLAN .
Внешние ссылки
- Персональный сайт с воспоминаниями, избранными статьями и подробной библиографией
- Ранние работы Пера Бринча Хансена (1966–1970) в датском музее данных