Программное обеспечение · 2 min read · Dec 03, 2025

Настоящий крестный отец программного обеспечения: Деннис Ритчи

Интернет полон историй и похвал программным гигантам, таким как Стив Джобс. Однако единственный человек, ответственный за восхождение программного обеспечения, человек, чья работа позволила таким людям, как Стив Джобс, построить свои технологические империи, — Деннис Ритчи — это тот, кого мир в целом забыл. Для многих из нас, незнакомых с этим именем, вот почему мы должны воспевать его похвалы.

Создатель

Причина, по которой наследие Денниса Ритчи так важно для нас, заключается в том, что это был человек, который, работая в Bell Labs в конце 60-х — начале 70-х годов, осознал ограничения ассемблерного языка. Поэтому он, вместе с коллегой-исследователем Bell Labs Кеном Томпсоном, решил создать язык, который позволил бы им создать лучшую версию UNIX. Этот язык стал известен как B — который, в зависимости от истории, был либо назван в честь жены Томпсона Бонни, либо BCPL, языком, разработанным в Кембридже в середине 60-х.

B, будучи интерпретируемым языком, выполнялся промежуточным программным обеспечением, работающим на процессоре. Поэтому, как мы все знаем сегодня, этот язык затем проложил путь для компилируемого языка, известного как C. Первая версия C не сильно отличалась от языка, который мы знаем сегодня. Он компилировался и переводился в машинный код, а затем выполнялся процессором. Но в то время, когда он был создан, он считался языком высокого уровня, и Ритчи с Томпсоном рассматривали его как язык, который даст им необходимую гибкость и останется быстрым одновременно.

Он предлагал полные структуры данных и «типы» для определения переменных, и это то, что Ритчи и Томпсон использовали для создания своего нового ядра UNIX. «Они создали C, чтобы написать программу», — говорит Пайк, который присоединился к Bell Labs через 10 лет. «И программой, которую они хотели написать, было ядро UNIX.»

Наследие

Шутка Ритчи заключалась в том, что C имел мощь ассемблерного языка с удобством ассемблерного языка — тем самым признавая, что C не было красивым творением, так как он работал очень близко к аппаратному обеспечению. Сегодня, однако, с прогрессом, достигнутым с тех пор, C теперь является языком низкого уровня — но в то время он был достаточно высоким для их нужд.

Роб Пайк, легенда программирования и нынешний сотрудник Google, который провел 20 лет, работая через коридор от Ритчи в знаменитых Bell Labs, сказал следующее о языке и его создателях в дни после смерти Ритчи.

«Когда вы пишете большую программу — а именно таким был UNIX — вам нужно управлять взаимодействиями между всевозможными различными компонентами: всеми пользователями, файловой системой, дисками, выполнением программы, и для того, чтобы эффективно управлять этим, вам нужно иметь хорошее представление о информации, с которой вы работаете. Это то, что мы называем структурами данных», — говорит Пайк.

«Написать ядро без структуры данных и сделать его таким же последовательным и элегантным, как UNIX, было бы гораздо более сложной задачей. Им нужен был способ сгруппировать все эти данные вместе, и у них этого не было с Fortran. В то время это был необычный способ написания операционной системы, и это позволило Ритчи и Томпсону в конечном итоге представить портирование ОС на другие платформы, что они и сделали в конце 70-х. «Это открыло шлюзы для работы UNIX повсюду», — говорит Пайк. «Все это стало возможным благодаря C.»

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.