Почему Линукс

         

Открытость и стандарты


Еще одним фактором, важным для нашего повествования и для распространения ОС Юникс, явилось то, что ОС Юникс была создана легендарными программистами Кеном Томпсоном и Денисом Ричи в недрах гигантской телефонной компании АТТ в США. Эта компания не получала прибыли от распространения этого программного продукта, а раздавала ленты с исходными кодами Юникс на очень мягких условиях. Эти условия, т.н. лицензионные соглашения об использовании программы, требовали символическую плату за магнитную ленту с исходными кодами системы и давали право их изменять. Это позволило многим университетам и исследовательским центрам, во-первых, подготовить несколько поколений специалистов по этой ОС, а во-вторых, дополнить систему новыми возможностями.

Позже появились коммерческие варианты ОС Юникс, и вскоре возникла проблема согласования многочисленных версий. Эту проблему пыталась решить сначала компания АТТ, выпуская новые версии Юникс, а затем специально созданные комитеты по стандартизации. Наиболее важным результатом этой деятельности стал набор стандартов под общим названием Позикс - POSIX (Portable Operating System Interface for Computing Environment). Операционные системы, соблюдающие эти стандарты, называют открытыми. Это совсем другое понятие открытости системы, чем то, которое упомянуто выше. Оно не подразумевает доступности исходного кода программы, но гарантирует, что тот, у кого этот код есть, например, разработчик программы, без особого труда перенесет ее из одной открытой системы в другую. В последнее время программы с опубликованным, общедоступным исходным кодом стали называть OSS (Open Source Software). В русском языке этот термин еще не устоялся, попробуем назвать его ПОИК (Программы с Открытым Исходным Кодом), или может быть СОМО (Совершенно Открытое Мат. Обеспечение ).

Почему столько внимания к разным видам открытости систем и программ? Ведь как-то программы работают и в закрытых системах. Да, действительно, можно писать программы только для какой-то одной платформы. Но если вдруг эта платформа изменится, а, напомню, это программно-аппаратная платформа, т.е. зависящая и от аппаратуры, и от операционной системы, программного окружения, то придется значительно или полностью переделывать такую программу. Это означает крайне неразумное использование труда программистов, и история выч. техники уже знает много примеров смены платформ и связанных с этим колоссальных потерь времени и денег. Разработка стандартов POSIX для Открытых Систем и была призвана уменьшить такие потери и продлить жизнь программам. Соблюдать эти стандарты позже стали и другие системы, отличные от Юникс.

И еще немного задержимся на программах и стандартах. Операционная система является самой первой запускаемой на компьютере программой. Именно она запускает на выполнения все остальные т.н. прикладные программы, предоставляет им ресурсы компьютера. Программы взаимодействуют с ОС через ИПП (Интерфейс Прикладного Программирования), или по-английски API. Именно наборы таких API и определили стандарты POSIX. Закрытые системы также предоставляют свой API для всех желающих создавать программы для этой платформы, и стараются через такой API обеспечить совместимость программ при развитии системы. В конечном счете популярность платформы и величина рынка определяются тем, сколько программистов приняли этот API и стали создавать в нем программы.



Содержание раздела