Выбрать главу

Мы любим простые дела и простые сделки в Америке. Если вы поедете в Египет и, скажем, возьмете такси где‑нибудь, вы становитесь частью жизни водителя такси; он отказывается брать ваши деньги из‑за того, что это может унизить вашу дружбу, он следует за вами вокруг города, и плачет горючими слезами, когда вы садитесь в такси другого парня. Вы заканчиваете встречей с его детьми в некотором месте, и должны посвятить себя всего своего рода искренности, чтобы найти какой‑то способ скомпенсировать его убытки, не оскорбляя его честь. Это изматывает. Иногда вы просто захотите простой поездки на такси в манхэттенском стиле.

Но, чтобы поиметь установку в американском стиле, где вы можете просто выйти и кликнуть такси (в смысле клича, а не клика, — прим. для погонщиков "мыши") и дуть своей дорогой, должен существовать целый скрытый аппарат побрякушек, инспекторов, комиссий, и так далее, — который нужен, чтоб такси были дешевы и вы могли в любое время получить одно из них. Когда система отказывается работать почему‑либо, это непостижимо и возмутительно и обращает во всех остальных отношениях разумных людей в конспирологических теоретиков. Но, когда Египетская система ломается, она остается прозрачной. Вы не можете получить такси, но племянник вашего водилы прискачет на своих двоих, чтобы объяснить проблему и извиниться.

Microsoft и Apple делают вещи в манхэттенском стиле, с обширной сложностью упрятанной за стеной интерфейса. Linux делает вещи "египетским" способом, с обширной сложностью разбросанной по всему ландшафту. Если Вы только что прилетели из Манхэттена, ваш первый импульс будет вздеть длани и возгласить "Слушайте и не говорите, что не слышали! Кто‑нибудь здесь будет что‑нибудь делать!?" Но это не поможет вам найти друзей в стране Линуха, сколько‑нибудь проще, чем это было бы в Египте.

Вы можете высосать Линух прямо из воздуха, типа как, загружая правильные файлы и укладывая их в правильных местах, но вероятно есть не более нескольких сотен умников в мире, которые могли бы создать функционирующую линуховую системку таким способом. Чего вам в натуре пригодится, так это линуховая дистрибуция, которая означает заранее расфасованный комплект файлов. Но дистрибуции являются чем‑то отдельным, в отличие от Линуха как такового.

Linux сам по себе — не специфический набор единиц и нулей, но самоорганизующаяся сетевая субкультура. Конечный результат ее коллективных заклинаний — обширное тело исходного кода, почти все записанное на Си (доминирующий компьютерный язык программирования). "Исходный код" просто означает компьютерную программу как набранную и отредактированную каким‑нибудь хакером. Если она на Си, имя файла будет вероятно иметь окончание .c или .cpp, в зависимости от того, какой диалект был использован; если она — на некотором другом языке, то будет иметь некоторый другой суффикс. Часто файлы этого типа могут обнаруживаться в директории с именем /src, которое является хакерским "гебраическим" сокращением от "исходник". (То есть "source" — прим перев.)

Исходные файлы бесполезны на вашем компьютере, и представляют небольшой интерес для большинства пользователей, но в них гигантское культурное и политическое значение, поскольку Microsoft и "Яблочники" держат их в секрете, тогда как "линухоиды" делают их общедоступными. Они как семейные ценности. Они — типа той штуки, которая в триллерах Голливуда использована в качестве Чудо–Юдо Оружия: плутониевая начинка бомбы, совершенно секретные планы, чемодан совсекретных инструкций, бобина микрофильма. Если б исходники для "Форточек" или MacOS были сделаны общедоступными через Сеть, то эти ОСи стали бы свободными, подобно Линуху — только не настолько хорошими, из‑за того, что никого не оказалось бы вокруг, чтобы "пофиксить баги" и ответить на вопросы. Linux — "открытый источник" софта, лишь в том значении, просто, что каждый может получить копии его исходников.

Вашему компьютеру исходная программа нужна не более вас самих; ему нужен объектный код. Файлы объектного кода естественно имеют суффикс .o и нечитабельны почти ни для кого, кроме некоторых очень странных пацанов, из‑за того, что они состоят из единиц и нулей. Соответственно, файлы этого типа обычно валяются в директории с именем /bin, для "бинарников."

Исходные файлы являются просто текстовыми файлами ASCII. ASCII означает конкретный способ кодировать буквы в битовые образы. В файле ASCII, на каждый символ имеет восемь битов. Это создает резерв "алфавита" на 256 отдельных символов, в этих восьми двоичных цифрах можно сформировать это множество уникальных образцов (два в восьмой степени равно 256 — т. е. число комбинаций из восьми двоичных разрядов, — прим. перев.). На практике, конечно, мы стремимся ограничить себя знакомыми буквами и цифрами. Битовые шаблоны используются, чтобы представить эти буквы и цифры такими же, как те, которые физически перфорировались на бумажную перфоленту моим телетайпом в средней школе, который в свою очередь был таким же, как те, что использовались телеграфной промышленностью в течение десятилетий. Текстовые файлы ASCII, другими словами, — те же самые телеграммы, и как у таковых у них нет всяких типографских украшалок. Но по той же причине они вечны, поскольку код никогда не меняется, и универсальны, поскольку любая из когда‑либо написанных программ для редактирования и обработки текстов "в курсах" относительно этого кода. (То есть, конечно, появляются всякие монстры, типа Unicode — удвоенная таблица из 16 разрядов (65536 комбинаций), в которой можно хранить весь китайский алфавит для захвата рынка ПО на родине Мао, но ASCII понимает любой уважающий себя компьютер. Шутка в тему: как на глаз отличить письма в кодировке ASCII и Unicode? Элементарно: маленькие письма — ASCII, большие — Unicode ;))) — Прим. перев.)