789 подписчиков
Раз мы открыли рубрику о представителях отечественной кибернетики, было бы разумным сделать это и для зарубежных представителей.
Начнем с Кеннета «Кена» Лейна Томпсона, легенду мира информационных технологий, один из создателей Unix, операционных систем Plan 9 и Inferno, создатель языка программирования B, соавтор языка Go. Томпсон принимал участие в конструировании шахматного компьютера Belle, первой машины, достигшей уровня игры мастера с рейтингом USCF 2250. Она пять раз выигрывала чемпионат Северной Америки по компьютерным шахматам ACM и чемпионат мира по компьютерным шахматам 1980 года. В 1983 году Томпсон разделил со своим давним другом и коллегой Деннисом Ритчи премию Тьюринга.
Томпсон родился 4 февраля 1943 года в американском городе Новый Орлеан, штат Луизиана. О юности Кена Томпсона известно мало. Отец был военным, семья часто переезжала и в следствие этого Кеннет часто менял школы. В старших классах школы заинтересовался двоичной арифметикой, что в итоге вылилось в любовь к математике и информатике. По окончанию школы поступил в Калифорнийский университет в Беркли, где в 1965 году получил степень бакалавра наук и магистра в 1966 в области электротехники и информатики. В 1966-м году, Кеннет Томпсон устроился программистом в компанию Bell Labs, где вместе с Деннисом Ритчи, еще одним легендарным программистом, подключился к разработке операционной системы Multics.
Принято считать, что исходным толчком к появлению ОС UNIX явилась работа Кена Томпсона по созданию компьютерной игры "Space Travel". Он делал это в 1969 году на компьютере Honeywell 635, который до этого использовался для разработки проекта MAC. В это же время Кен Томпсон, Деннис Ритчи и другие сотрудники Bell Labs предложили идею усовершенствованной файловой системы, прототип которой был реализован на компьютере General Electric 645. Однако компьютер GE-645, который был рассчитан на работу в режиме разделения времени и не обладал достаточной эффективностью, не годился для переноса Space Travel. Томпсон стал искать замену и обнаружил, что появившийся к этому времени 18-разрядный компьютер PDP-7 с 4 килословами оперативной памяти и качественным графическим дисплеем вполне для этого подходит.
После того, как игра была успешно перенесена на PDP-7, Томпсон решил реализовать на PDP-7 разработанную ранее файловую систему. Дополнительным основанием для этого решения было то, что компания Bell Labs испытывала потребность в удобных и дешевых средствах подготовки и ведения документации. В скором времени на PDP-7 работала файловая система, в которой поддерживались: понятие inode (прим. ред. - индексный дескриптор — это структура данных в файловых системах UNIX-подобных ОС, таких как UFS, ext4. В этой структуре хранится метаинформация о стандартных файлах, каталогах или других объектах файловой системы, кроме непосредственно данных и имени), подсистема управления процессами и памятью, обеспечивающая использование системы двумя пользователями в режиме разделения времени, простой командный интерпретатор и несколько утилит. Все это еще не называлось операционной системой UNIX, но уже содержало родовые черты этой ОС.
Название придумал Брайан Керниган. Он предложил назвать эту двухпользовательскую систему UNICS (Uniplexed Information and Computing System). Название понравилось, поскольку, помимо прочего, оно напоминало об участии сотрудников Bell Labs в проекте Multics. В скором времени UNICS превратилось в UNIX (произносится так же, но на одну букву короче).
В 2000 году, после 34 лет работы в Bell Labs, Кеннет покидает компанию и присоединяется к Entrisphere, а затем, в 2006 году переходит в Google, где присоединяется к разработке языка программирования Go. В эту же команду вошел Роберт Пайк, коллега Кена по Bell Labs, и Роберт Гриземер.
Публикация подготовлена по материалам, опубликованным в сети Интернет.
3 минуты
16 августа 2023