Кен Томпсон - Ken Thompson
Кен Томпсон | |
---|---|
Томпсон (слева) с Деннис Ричи | |
Родившийся | Кеннет Лейн Томпсон 4 февраля 1943 г. Жители Нового Орлеана, Луизиана, НАС. |
Национальность | Американец |
Альма-матер | Калифорнийский университет в Беркли (Б.С., 1965; М.С., 1966) |
Известен | |
Награды |
|
Научная карьера | |
Поля | Информатика |
Учреждения |
Кеннет Лейн Томпсон (родился 4 февраля 1943 г.) - американский пионер Информатика. Томпсон работал в Bell Labs большую часть своей карьеры он разработал и реализовал оригинальные Unix Операционная система. Он также изобрел Язык программирования B, прямой предшественник Язык программирования C, и был одним из создателей и первых разработчиков План 9 Операционная система. С 2006 года Томпсон работал в Google, где он изобрел Язык программирования Go.
Среди других заметных вкладов - его работа над обычные выражения и ранние компьютерные текстовые редакторы QED и ред, определение UTF-8 кодирование, и его работа по компьютерным шахматам, которая включала создание финальные столы и шахматная машина Belle. Он выиграл Премия Тьюринга в 1983 году со своим многолетним коллегой Деннис Ричи.
ранняя жизнь и образование
Томпсон родился в Жители Нового Орлеана. Когда его спросили, как он научился программировать, Томпсон сказал: «Я всегда увлекался логикой, и даже в начальной школе я работал над двоичными арифметическими задачами и тому подобным. Просто потому, что я был очарован».[2]
Томпсон получил Бакалавр в 1965 г. и Степень магистра в 1966 г. как в Электротехника и информатика, от Калифорнийский университет в Беркли, где был руководителем его магистерской диссертации Элвин Берлекамп.[3]
Карьера и исследования
Томпсон был нанят Bell Labs в 1966 г.[4] В 1960-х годах в Bell Labs, Thompson и Деннис Ричи работал над Мультики Операционная система. При написании Multics Томпсон создал Бон язык программирования.[5] Он также создал видеоигру под названием Космическое путешествие. Позже Bell Labs вышла из проекта MULTICS.[6] Чтобы продолжить игру, Томпсон нашел старую PDP-7 машина и переписал Космическое путешествие в теме.[7] В конце концов, инструменты, разработанные Томпсоном, стали Unix Операционная система: Работа над PDP-7, группа исследователей Bell Labs во главе с Томпсоном и Ричи, в том числе Радд Канадей, разработала иерархическая файловая система, концепции компьютерные процессы и файлы устройства, а интерпретатор командной строки, трубы для облегчения межпроцессного взаимодействия и несколько небольших служебных программ. В 1970 г. Брайан Керниган предложил название «Unix», в качестве каламбура от имени «Multics».[8] После начальной работы над Unix Томпсон решил, что Unix нужен язык системного программирования, и создал B, предшественник Ричи C.[9]
В 1960-х Томпсон также начал работу над обычные выражения. Томпсон разработал CTSS версия редактора QED, который включал регулярные выражения для поиска текста. QED и более поздний редактор Томпсона ред (стандартный текстовый редактор в Unix) в значительной степени способствовал постепенной популярности регулярных выражений, и регулярные выражения стали широко распространяться в программах обработки текста Unix. Почти все программы, которые сегодня работают с регулярными выражениями, используют тот или иной вариант нотации Томпсона. Он также изобрел Алгоритм построения Томпсона используется для преобразования регулярного выражения в недетерминированный конечный автомат чтобы ускорить сопоставление выражений.[10]
1970-е годы
На протяжении 1970-х годов Томпсон и Ричи работали над операционной системой Unix; они так повлияли на Исследование Unix который Дуг Макилрой Позднее писал: «Можно с уверенностью предположить, что имена Ричи и Томпсона связаны почти со всем, что не было приписано другим образом».[11] В интервью 2011 года Томпсон заявил, что первые версии Unix были написаны им, и что Ричи начал защищать систему и помогал в ее разработке:[12]
Я в одиночку создал первую из двух или трех версий UNIX. И Деннис стал евангелистом. Затем был переписан язык более высокого уровня, который впоследствии стал называться C. Он работал в основном над языком и системой ввода-вывода, а я работал над всей остальной операционной системой. Это было для PDP-11, что было счастливой случайностью, потому что именно этот компьютер завладел академическим сообществом.
Обратная связь с разработкой Томпсона для Unix также сыграла важную роль в разработке языка программирования C. Позже Томпсон скажет, что язык C «вырос в результате одной из переписываний системы и, как таковой, стал идеальным для системы письма ".[12]
В 1975 году Томпсон взял творческий отпуск из Bell Labs и отправился в свою альма-матер, Калифорнийский университет в Беркли. Там он помог установить Версия 6 Unix на PDP-11/70. Позже Unix в Беркли станет отдельной системой, известной как Распространение программного обеспечения Беркли (BSD).[13]
Кен Томпсон написал шахматную программу под названием «шахматы» для первой версии Unix (1971).[14] Позже вместе с Джозеф Кондон, Томпсон создал программу с аппаратной поддержкой Belle, чемпион мира шахматный компьютер.[15] Он также написал программы для генерации полного перечисления шахматы концовки, известные как финальные столы, для всех концовок с 4, 5 и 6 фигурами, позволяя компьютерным программам, играющим в шахматы, делать «идеальные» ходы после достижения сохраненной в них позиции. Позже с помощью мастера шахматного эндшпиля Джон Ройкрофт, Томпсон распространил свои первые результаты на CD-ROM. В 2001 г. Журнал ICGA посвятил почти целый выпуск различным вкладам Кена Томпсона в компьютерные шахматы.[14]
1980-е
На протяжении 1980-х годов Томпсон и Ричи продолжали пересматривать Research Unix, которая приняла кодовую базу BSD для 8-го, 9-го и 10-го изданий. В середине 1980-х в Bell Labs началась работа над новой операционной системой, которая могла бы заменить Unix. Томпсон сыграл важную роль в разработке и реализации План 9 от Bell Labs, новая операционная система, использующая принципы Unix, но более широко применяющая их ко всем основным средствам системы. Некоторые программы, которые были частью более поздних версий Research Unix, например мк и rc, также были включены в План 9.
Томпсон протестировал ранние версии C ++ язык программирования для Бьярне Страуструп написав на нем программы, но позже отказался от работы на C ++ из-за частой несовместимости версий. В интервью 2009 года Томпсон выразил негативное мнение о C ++, заявив: «Он делает многие вещи наполовину хорошо, и это просто куча мусора, взаимоисключающих друг друга».[16]
1990-е
В 1992 году Томпсон разработал UTF-8 схема кодирования вместе с Роб Пайк.[17] Кодировка UTF-8 с тех пор стала доминирующей кодировкой символов для Всемирная паутина, составляющих более 90% всех веб-страниц в 2019 году.[18]
В 1990-е годы начались работы по Inferno операционная система, еще одна исследовательская операционная система, основанная на портативном виртуальная машина. Томпсон и Ричи продолжили сотрудничество с Inferno вместе с другими исследователями Bell Labs.[19]
2000-е
В конце 2000 года Томпсон ушел из Bell Labs. Он работал в Entrisphere, Inc. в качестве парень до 2006 г. и сейчас работает на Google как заслуженный инженер. Недавняя работа включала совместный дизайн Идти язык программирования. Ссылаясь на себя вместе с другими оригинальными авторами Go, он заявляет:[12]
Когда мы трое [Томпсон, Роб Пайк, и Роберт Гриземер ], это было чистое исследование. Мы втроем собрались и решили, что ненавидим C ++. [смех] ... [Возвращаясь к Go,] мы начали с идеи, что всех троих нужно обсудить с каждой особенностью языка, чтобы в язык не было постороннего мусора по какой-либо причине.
Согласно интервью 2009 года, Томпсон теперь использует Linux операционная система на базе.[20]
Награды
Национальные академии
В 1980 году Томпсон был избран в Национальная инженерная академия за "разработку UNIX, операционной системы, эффективность, широта, мощность и стиль которой позволили целому поколению использовать миникомпьютеры ".[21] В 1985 году он был избран Член Национальной Академии Наук (NAS).[1]
Премия Тьюринга
В 1983 году Томпсон и Ричи совместно получили Премия Тьюринга «За развитие общей теории операционных систем и, в частности, за реализацию операционной системы UNIX». В его благодарственной речи «Размышления о доверии» задняя дверь атака теперь известна как Томпсон взлом или доверительная атака на доверие, что широко считается основополагающим компьютерная безопасность работать самостоятельно.[22]
Медаль Ричарда У. Хэмминга IEEE
В 1990 году Томпсон и Деннис Ричи получили награду. Медаль Ричарда У. Хэмминга IEEE от Институт инженеров по электротехнике и электронике (IEEE), «за возникновение операционной системы UNIX и языка программирования C».[23]
Сотрудник Музея компьютерной истории
В 1997 году и Томпсон, и Ричи были введены в должность Стипендиаты из Музей истории компьютеров за «совместное создание операционной системы UNIX и за разработку языка программирования C».[24]
Национальная медаль технологий
27 апреля 1999 г. Томпсон и Ричи совместно получили награду 1998 г. Национальная медаль технологий от президента Билл Клинтон за совместное изобретение операционной системы UNIX и языка программирования C, которые вместе «привели к огромному прогрессу в компьютерном оборудовании, программном обеспечении и сетевых системах и стимулировали рост всей отрасли, тем самым укрепив лидерство Америки в информационном веке».[25]
Премия Цутому Канаи
В 1999 г. Институт инженеров по электротехнике и электронике выбрал Томпсона, чтобы получить первое Премия Цутому Канаи «За его роль в создании операционной системы UNIX, которая на протяжении десятилетий была ключевой платформой для работы распределенных систем».[26]
Премия Японии
В 2011 году Томпсон вместе с Деннис Ричи был награжден Премия Японии в области информации и коммуникаций за новаторскую работу в разработке операционной системы Unix.[27]
Личная жизнь
Кен Томпсон женат, имеет сына.[28][14]
Рекомендации
- ^ а б "Кеннет Томпсон". www.nasonline.org. Получено 9 июня, 2019.
- ^ Сейбел 2009, п. 450.
- ^ «Студенты дипломных работ». Домашняя страница Элвина Берлекампа. Калифорнийский университет, математический факультет Беркли.
- ^ «Кен Томпсон: разработал UNIX в Bell Labs». Получено 31 октября, 2016.
- ^ Ричи, Деннис. «Развитие языка Си». Bell Labs. Получено 31 октября, 2016.
- ^ Дж. Стэнли Уорфорд (2009). Компьютерные системы. Издательство "Джонс и Бартлетт". п. 460. ISBN 978-1-4496-6043-7.
- ^ Ричи, Деннис М. (2001). «Космическое путешествие: исследование Солнечной системы и PDP-7». Bell Labs. В архиве с оригинала 26 декабря 2015 г.. Получено 4 февраля, 2016.
- ^ Ричи, Деннис М. «Эволюция системы разделения времени Unix». Получено 31 октября, 2016.
- ^ Деннис М. Ричи. «Развитие языка Си». Bell Labs / Lucent Technologies. Получено 31 октября, 2016.
- ^ Cox, Russ. «Сопоставление регулярных выражений может быть простым и быстрым». Получено 30 октября, 2016.
- ^ Макилрой, М.Д. (1987). Читатель Research Unix: аннотированные выдержки из Руководства программиста, 1971–1986 (PDF) (Технический отчет). CSTR. Bell Labs. 139.
- ^ а б c "Доктор Добб: Интервью с Кеном Томпсоном". 18 мая 2011 г.. Получено 10 ноября, 2014.
- ^ Салус, Питер Х. (2005). «Глава 7. BSD и CSRG». Демон, Гну и Пингвин. Groklaw.
- ^ а б c Деннис Ричи (Июнь 2001 г.). "Кен, Unix и игры". Журнал ICGA. 24 (2). Получено 5 марта, 2020.
- ^ «Джо Кондон (некролог)». Физика сегодня. 2013. Дои:10.1063 / PT.4.1752.
- ^ Сейбел 2009, п. 475.
- ^ Пайк, Роб (30 апреля 2003 г.). "История UTF-8".
- ^ «Статистика использования и рыночная доля UTF-8 для веб-сайтов, июнь 2019 г.». w3techs.com. Получено 9 июня, 2019.
- ^ Хамличи, М.эл. "Отец систем UNIX Кена Томпсона". Unixmen. Получено 31 октября, 2016.
- ^ Сейбел 2009, п. 479.
- ^ "Доктор Кен Томпсон". Национальная инженерная академия.
- ^ Томпсон, Кен (1984). «Размышления о доверии». Коммуникации ACM. 27 (8): 761–763. Дои:10.1145/358198.358210.
- ^ "Получатели медали Ричарда Хэмминга IEEE" (PDF). IEEE. Архивировано из оригинал (PDF) 26 июля 2011 г.. Получено 29 мая, 2011.
- ^ "Кен Томпсон". Музей истории компьютеров. Получено 29 октября, 2016.
- ^ «Светильники Bell Labs Деннис Ричи и Кен Томпсон получают Национальную медаль в области технологий». ScienceDaily. 8 декабря 1998 г.
- ^ «Кен Томпсон получает награду Канаи за влияние системы UNIX». Bell Labs. 25 марта 1999 г. Архивировано с оригинал 26 марта 2013 г.
- ^ Евангелиста, Бенни (25 января 2011 г.). «Кен Томпсон и Деннис Ричи выиграли приз Японии». Хроники Сан-Франциско.
- ^ «Кен Томпсон: краткое введение». Информационный проект Linux. 24 августа 2007 г.. Получено 5 марта, 2020.
Источники
- Сейбел, Питер (2009). Кодеры за работой - размышления о ремесле программирования (онлайн ). Нью-Йорк: Apress. ISBN 978-1-4302-1948-4 (pbk.) ISBN 978-1-4302-1949-1 (электронный)
внешняя ссылка
- Аудио помощь
- Больше устных статей
- Кен Томпсон, Bell Labs
- Размышления о доверии 1983 Премия Тьюринга Лекция
- Unix и не только: интервью с Кеном Томпсоном IEEE Computer Society
- Кен Томпсон: краткое введение Информационный проект Linux (LINFO)
- Компьютерные шахматы достигают совершеннолетия: Фото Музей истории компьютеров
- Компьютерные шахматы достигают совершеннолетия: Видео интервью с Кеном Томпсоном Музей истории компьютеров
- Чтение статьи HS Baird и Ken Thompson о шахматах на оптическое распознавание символов