В начале была командная строка - Страница 7
Но основная идея воссоздать операционную систему с листа была вполне озвучена и полностью осуществлена. Это было сделано много раз. И присуще самой природе операционных систем.
Операционные Системы, по правде говоря, не так уж необходимы. Нет причины почему достаточно упертый кодировщик не мог бы начинать с нуля каждый проект и писать свежий код, чтобы выполнять такие основные операции низкого уровня, как управление чтенем/записью головок дисковых накопителей и отображением отдельных пикселей на экране. Самые первые компьютеры программировались таким образом. Но так как почти каждой программе нужно выполнять те же основные операции, этот метод провел бы к обширному дублированию усилий разработчиков.
Нет ничего более тупого для хакеров, чем дублирование усилий. Первая и наиболее важная умственная привычка, которую люди вырабатывают в себе, когда они узнают как писать компьютерные программы, это стремление обобщать, обобщать, обобщать. Чтобы делать их код настолько модульным и гибким, насколько это вообще возможно, большие проблемы разбиваются на небольшие процедуры, которые могут многократно использоваться в других контекстах. Следовательно, разработка операционных систем, несмотря на свою техническую необязательность, была неизбежной. Поскольку по сути своей, операционная система не что иное, как библиотека, содержащая наиболее часто используюемый код, написанный один раз (и надо надеяться написанный хорошо) и далее доступный для каждого разработчика, которому оно надо.
Таким макаром, частная, закрытая, секретная операционная система является противоречием. Она идет вразрез с самой идеей операционной системы. И в любом случае невозможно сделать ее секретной. Исходный код, как строки текста подлинника, написанного программистами — может содержаться в секрете. Но ОС в целом является набором небольших подпрограмм, которые выполняет очень специфические, очень четко определенные виды работ. Естественно эти подпрограммы должны быть опубликованы, явно и точно, иначе ОС полностью бесполезна для программистов; они не смогут использовать те подпрограммы, если не получат полного и четкого понимания, какого дьявола эти подпрограммы делают.
Единственная вещь, которая не публикуется — как именно подпрограммы делают то, что они делают. Но как только вы узнаете, что процедура делает, обычно совсем легко (если вы — хакер) написать вашу собственную рутинку, которая делает ровно то же самое. Это может занять время, и это скучная и неблагодарная работа, но в большинстве случаев не трудная.
Что трудно в хакерстве, как в сочинительстве, это не писанина сама по себе, а решить, что в натуре должно быт написано. И поставщики коммерческих «Осей» уже решили, и опубликовали свои решения.
Это в основном было понятно давно. MS-DOS дублировалась функционально конкурирующим продуктом, написанным заново, названным ProDOS, который делал все те же вещи совершенно таким же образом. Другими словами, другая компания смогла написать код, который делал ровно то же самое, что и MS-DOS, и получала за это прибыль. Если вы используете операционнуую систему Linux, вы можете получить свободную программу Wine которая является эмулятором Windows; то есть, вы можете открыть окошко в вашей настольной системе, в котором выполняются программы «Окон». Это означает, что полностью функциональная ОС Windows воссоздана в Unix, подобно модели корабля в бутылке. И сама Unix, которая является значительно более навороченной, чем MS-DOS, была воссоздана заново много раз. Ее версии продают компании Sun, Hewlett-Packard, AT&T, Silicon Graphics, IBM, и другие.
Иными словами, народ переписывал основной код операционной системы так долго, что вся технология, которая составляет «операционную систему» в традиционном (доГИПовом) значение этой фразы, теперь так дешева и настолько обобщена, что буквально свободна. Гейтс и Аллен не только могли бы не продавать MS-DOS сегодня, они могли даже не пускать ее в оборот, поскольку более мощные «оси» давно доступны. Даже исходники «Окошек» (тех, которые были единственными «Окошками» до 1995) перестали стоить что-либо, не имеет смысла вообще владеть чем-то, что может эмулироваться в Linux, которая сама по себе свободна.
Таким образом продажа операционных систем совсем не то, что продажа автомобилей. Даже старый рыдван чего-то да стоит. Вы можете использовать его, пока не развалится, или разобрать на запчасти. Это — судьба произведенных товаров, чтобы медленно и мягко дешеветь по мере старения и конкурировать с более современными продуктами.
Но судьба операционных систем — стать свободными.
Microsoft — большая компания прикладных программ. Приложения, как например, Microsoft Word — та область, где новшество приносит реальные, прямые, осязаемые преимущества пользователям. Новшества могли быть новой технологией прямо из научно-исследовательского отдела, или они могли быть в категории бубенчиков и свистулек, но в любом случае они часто полезны и, кажется, делают пользователей счастливым. И Microsoft — становится большой научно-исследовательской компанией. Но Microsoft не настолько хороша как компания операционных систем. И это не обязательно потому, что их операционные системы так плохи с чисто технологической позиции. «Оси» от Microsoft имеют свои проблемы, конечно, но они значительно лучше, чем они обычно бывают, и вполне подходят для большинства людей.
Почему тогда я говорю, что Microsoft не такая крутая компания операционных систем? А потому, что сама природа операционных систем такова, что для них бессмысленно разрабатываться и принадлежать одной специфической компании. Это неблагодарная работа, во-первых. Приложения создают возможности для миллионов доверчивых пользователей, тогда как операционные системы навязывают ограничения тысячам недовольных кодеров, таким образом, изготовители операционных систем навсегда занесены в черный список каждого, кто чего-нибудь понимает в мире высоких технологий. Приложения используются людьми, чья большая проблема состоит в понимании всех подробностей, тогда как ОСи бацают кодировщики, которых бесят ограничения. Продажа операционок была хороша для Microsoft только до тех пор, пока приносила им деньги, чтобы начать действительно хороший бизнес прикладных программ и нанимать много интеллектуальных исследователей. Теперь это надо бы сбросить, подобно ступени ускорителя ракеты. Большой вопрос — способна ли Microsoft сделать это. Или она помешалась на продаже ОС так же как «Яблоко» — на продаже аппаратных средств?
Знаете, эта способность Apple монополизировать поставку своего собственного железа уже отмечалась учеными обозревателями, как большое преимущество перед Microsoft. На какое-то время она казалось, устанавливает их на значительно более прочную позицию. В итоге, она почти убила, и все еще может убить их. Проблема, для Apple, что большинство компьютерных пользователей в мире настроены приобретать более дешевые аппаратные средста. Но дешевое железо не может выполнять MacOS, и потому эти люди переключились на Windows.
Замените «аппаратные средства» на «операционные системамы», а «Яблоко» на «Microsoft» и вы увидите, как тот же прикол может повториться снова. Microsoft доминирует на рынке ОС, который приносит им деньги и кажется прикольной идеей сейчас. Но более дешевые и лучшие ОСы уже доступны, и они становятся все популярнее в тех частях мира, которые не так насыщены компьютерами, как США. Лет через десять, большинство компьютерных пользователей в мире смогут начать освоение этих более дешевых ОСей. Но эти Оси, пока не позволяют, в своем теперешнем виде, выполнять любые приложения Microsoft, и значит эти люди будут использовать что-то другое.
Чтобы показать это более прямо: каждый раз, когда кто-то решает использовать «не-мелкомягкую» ОС, отделение операционных систем Microsoft, очевидно, теряет клиента. Но, при современном положении вещей, отдел прикладных программ Microsoft тоже теряет клиента. Это не такая уж большая проблема, пока почти все используют ОпСистемы от Microsoft. Но как только доля участия «Окон» на рынке начнет ускользать от них, математика начнет выглядеть достаточно мрачной для людей в Редмонде.