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

В любом случае, по данным 1987, и MacOS, и Windows присутствовали на рынке, работая на аппаратных платформах, которые радикально отличались одна от другой не только в назначении, для которого MacOS использовала процессорные чипы Motorola, когда Windows использовала процессоры Intel, но и в смысле — тогда проигнорированном, но в конце концов, значительно более значимом — что "Яблочный" железячный бизнес был жесткой монополией, а на стороне "Окон" была куча–мала свободы для всех.

Но все последствия этого оставались не ясны до совсем недавнего времени — фактически, они все еще проявляются, в высшей степени странным образом, как я объясню, когда мы дойдем до Linux. Итог — то, что миллионы людей привыкли к использованию ГРАФИЧЕСКИХ ИНТЕРФЕЙСОВ ПОЛЬЗОВАТЕЛЯ в той или иной форме. Таким образом, они сделали для Apple/Microsoft много денег. Состояния многих людей стали связанны со способностью этих компаний, продолжить продавать продукты, чья покупательная способность очень спорна.

Медовый горшок, увы, смоляная яма

Когда Гейтс и Аллен набрели на идею продавать программное обеспечение, они столкнулись с критикой как хакеров так и здравомыслящих воротил бизнеса. Хакеры понимали, что программное обеспечение было всего лишь информацией, и возражали против идеи его продавать. Эти возражения были отчасти морального свойства. Хакеры вышли из научного и университетского мира, где императивом служит свободный доступ общественности к результатам чьей‑либо работы. Они были также частично практическими; как вы можете продать нечто, что может легко быть скопировано? Дельцы, которые полярны с хакерами во многих вопросах, имели свои собственные возражения. Привычные к продаже тостеров и страховых полисов, они естественно с трудом понимали, как длинный набор единиц и нулей мог бы стать популярным продуктом.

Очевидно Microsoft эти возражения были до фонаря, как и "Яблоку". Но возражения остались. Самым хакерским из всех хакеров, абсолютным хакером (UR‑hacker — сокращение от Ultima Ratio — последний довод — прим. перев.) как таковым, был и остался Ричард Столлман, которого так взбесила практика продажи программного обеспечения, что в 1984–м (тот же год, когда Macintosh поступил в продажу) он пришел и основал нечто называнное Фонд Сфободного Программного Обеспечения (FSF), в которым начали работу над чем‑то типа GNU. Это самое GNU — сокращение от "GNU Не Unix", но это — шутка по большей части, поскольку GNU по сути своей и есть Unix. Из‑за бодяги с торговой маркой ("Unix" — торговая марка AT&T) они просто не могли заявить, чтобы воссоздают Unix, и типа, чтобы перестраховаться, всем сказали, что это вовсе не то, о чем все подумали. Вопреки несравненному таланту и драйву мистера Столлмана и других приверженцев GNU, их заява на создание свободного "Униха", чтобы конкурировать против Microsoft и "Яблочных ОС", была чем‑то типа попытки выкопать еще одно метро чайной ложкой (в аббревиациях названий некоторых программ проекта FSF/GNU, традиционно присутствуют буквы YA — от yet another — прим. перев.). Пока, разумеется, всем не настал Linux, до которого я дойду чуть позже.

Но основная идея воссоздать операционную систему с листа была вполне озвучена и полностью осуществлена. Это было сделано много раз. И присуще самой природе операционных систем.

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

Нет ничего более тупого для хакеров, чем дублирование усилий. Первая и наиболее важная умственная привычка, которую люди вырабатывают в себе, когда они узнают как писать компьютерные программы, это стремление обобщать, обобщать, обобщать. Чтобы делать их код настолько модульным и гибким, насколько это вообще возможно, большие проблемы разбиваются на небольшие процедуры, которые могут многократно использоваться в других контекстах. Следовательно, разработка операционных систем, несмотря на свою техническую необязательность, была неизбежной. Поскольку по сути своей, операционная система не что иное, как библиотека, содержащая наиболее часто используюемый код, написанный один раз (и надо надеяться написанный хорошо) и далее доступный для каждого разработчика, которому оно надо.