Кен Томпсън
Кѐнет Лейн То̀мпсън (на английски: Kenneth Lane Thompson), популярен просто като Кен (на английски: ken, често изписвано именно с малка буква, по аналогия с потребителско име или имейл адрес) в средите на хакерите,[1] е изтъкнат американски пионер в областта на компютърните науки.
Кен Томпсън Kenneth Lane Thompson | |
американски програмист | |
![]() Томпсън (вляво) с Денис Ричи | |
Роден |
4 февруари 1943 г.
|
---|---|
Националност | ![]() |
Учил в | Калифорнийски университет – Бъркли Калифорнийски университет – Бъркли |
Работил в | Лаборатории Бел (1966 – 2000) Гугъл (2006) |
Техника | |
Област | Програмиране |
Учил при | Елвин Берлекамп |
Известен с | Unix Plan 9 B (език за програмиране) UTF-8 Регулярни изрази QED и ed Belle Ендшпилни таблици |
Награди | Награда „Тюринг“ Национален медал в областта на технологиите и иновациите Награда „Цутому Канаи“ Награда на Япония |
Уебсайт | cs.bell-labs.co/who/ken/ |
Кен Томпсън в Общомедия |
Томпсън е известен преди всичко като един от създателите на операционната система Unix в сътрудничество с Денис Ричи, Браян Керниган и други изследователи в компанията Bell Labs, по това време подразделение на AT&T. Той също е основен разработчик на езика за програмиране B, впоследствие послужил като основа за езика C.[2] Томпсън е и един от главните проектанти и разработчици на операционната система Plan 9, която е последващо развитие на концепциите, заложени в Unix.
Други съществени приноси на Томпсън са работата му върху регулярните изрази и някои от ранните текстови редактори, като QED и ed (последният все още е стандартен компонент в различните Unix, Линукс и BSD системи), разработките в областта на ендшпилните таблици, както и компютърният шах Belle.
Заедно с Роб Пайк Томпсън проектира кодировката UTF-8,[3] която днес се използва изключително широко в компютърните системи и Интернет, а в сътрудничество също с Робърт Гриземер след 2007 г. работи върху новия език за програмиране Go на Google, чиято първа бета версия излиза през 2009.
Първите операционни системи
редактиранеВ края на 1960 г. Кен Томпсън се включва в изследователския екип на Bell Laboratories, които са развойното подразделение на американската корпорация АТТ. Той и неговите колеги в сътрудничество с MIT и GE работят по проект за създаване на многопотребителска/многозадачна операционна система под работното наименование MULTICS. Крайният продукт се оказва твърде бавен и прекалено голям, поради което Bell Lab's оставя екипа без необходимите средства. След като се появява PDP-7 компютърът, Томпсън пренаписва програмата за симулиране на планетарното движение, преди това реализирана върху GE. В същото време, той експериментира с много от концепциите, залегнали в MULTICS. Написва голям брой поддържащи програми, както и програмата за централно управление на ресурсите – ядрото (англ. kernel). Идеята за йерархичното разпределение на файловете за пръв път е реализирана от него. Готовата система нарича UNIX, защото е еднопотребителска – като антипод на MULTICS.
Операционната система на Томпсън намира разпространение сред колегите му от научния департамент на Bell lab's, защото прави разработката на софтуер по-лесна от всякога. Постепенно са добавени нови приложения, което позволило на групата да си осигури PDP-11 – по-нова и мощна система. 16-битовата PDP-11 става де факто втората хардуерна платформа за UNIX реализацията. Благодарение на хардуерното управление на паметта са добавени многопотребителски приложения. С това UNIX става първата многопотребителска операционна система в света.
Награди
редактиранеПрез 1983 г. на Томпсън и Денис Ричи е присъдена престижната Награда „Тюринг“ за изключителните им приноси в областта на компютърните науки. Отново съвместно, през 1999 г. двамата са наградени с американския Национален медал в областта на технологиите и иновациите.
Източници
редактиране- ↑ ken: /ken/, n. // The Jargon File (version 4.4.7). Посетен на 4 февруари 2011. (на английски)
- ↑ Dennis M. Ritchie. The Development of the C Language* // Bell Labs/Lucent Technologies. Архивиран от оригинала на 2015-03-28. Посетен на 4 февруари 2011. (на английски)
- ↑ Rob Pike. UTF-8 history // Посетен на 4 февруари 2011. (на английски)