суббота, августа 11, 2007

FAQ: что такое Linux?

Сподобился-таки на еще один FAQ. Это "для самых маленьких", так что за отсутствие строгости просьба не пинать.

Q. Что такое эта Linux?

A. Linux - это свободная операционная система.

Q. Так. А что такое операционная система?

A. Это комплекс программ, запускающий все остальные программы, и необходимый им (программам) для 1) работы с оборудованием компьютера, 2) для взаимодействия с пользователем. Кроме того, операционная система (как правило) позволяет запускать несколько программ одновременно и обеспечивает их взаимодействие между собой. Коротко говоря, операционная система (ОС) - это главная программа на компьютере. Примерами операционных систем являются: UNIX, Linux, Solaris, Windows, DOS.

Q. Так. А что означает "свободная"?

A. Термин "свободная" применительно к программе означает, что лицензия на эту программу гарантирует вам как минимум четыре основных свободы: 0) Свобода запускать программу в любых целях; 1) Свобода изучения работы программы и адаптация ее к вашим нуждам; 2) Свобода распространять копии, так что вы можете помочь вашему товарищу; 3) Свобода улучшать программу и публиковать ваши улучшения, так что все общество выиграет от этого.

Q. Кто создает Linux и другие свободные программы?

A. Огромное количество разработчиков по всему миру.

Q. Ну как эта компания называется?

A. Это не компания. Это то, что люди называют _сообществом_. Просто большое количество людей, которых объединяют только общие взгляды на IT-индустрию и общее дело.

Q. А какая им от этого выгода?

A. Большинство из этих людей работает ради собственного удовольствия (Just for fun). Многим их работу оплачивают компании, которые хотят иметь более высококачественное ПО. Более того, есть компании, специализирующиеся на разработке свободного ПО.

Q. А какая выгода компаниям, раз эти программы бесплатные?

A. Во-первых, программы эти не бесплатные, а свободные. Разница примерно как между "халявным пивом" и "свободным словом". В частности, это означает, что эти программы можно продавать и покупать, но при этом любой желающий может получить их свободно. Но все равно не бесплатно - придется платить за носитель (диск) или за интернет-трафик. Так что многие компании зарабатывают, распространяя свободные программы - например, рассылая диски по почте. В России самая известная из таких компаний - это LinuxCenter. Во-вторых, многие компании зарабатывают в основном не на продаже программ, а на их поддержке. Ведь скачать программу - это только начало, дальше нужно научиться ее использовать. Для организаций это выливается в издержки по обучению персонала, издержки по внедрению, и издержки на поддержку пользователей. Неудивительно, что существуют компании, специализирующиеся на решении таких проблем. Это составляет основной доход таких гигантов, как RedHat и Novell. В Магнитогорске этим занимается компания RTFM.

Q. И много их, этих энтузиастов?

A. Точной статистики нет ни у кого. Однако есть оценки, согласно которым над одной свободной программой _в среднем_ работают 3 человека. А общее количество свободных программ оценивается в 378000. Простым перемножением получаем свыше миллиона разработчиков.

Q. А много ли людей пользуются Linux?

A. Опять же, точной статистики нет. Но, как минимум, известно, что Linux используется во всех государственных учереждениях в Бельгии, Франции, Норвегии, Китае. Это уже многие миллионы человек. У нас в стране многие ВУЗы используют Linux - в частности, Московский государственный технический университет им.Н.Э.Баумана. Кроме того, очень многие используют Linux, не зная об этом. Linux стоит на миллионах серверов в Интернете. Linux используется в автоматизации производства. Linux установлен на множестве небольших устройств - это ADSL-модемы и другое сетевое оборудование, смартфоны и КПК, DVD-плейеры и многое другое. Многие миллионы человек, использующие эти устройства, тем самым используют Linux.

Q. Как давно существует Linux?

A. Собственно Linux появилась в 1991 году. Однако часто, говоря "Linux", подразумевают операционную систему, от которой Linux берет все основные идеи - UNIX. UNIX появилась в 1969 году.

Q. Раз эти программы создают мало кому известные люди, какие гарантии того, что они не встроят в программы вредоносный или шпионский код?

A. Одно из ключевых свойств свободных программ - они распространяются в исходных кодах. Каждый сомневающийся может свободно взять (в Интернете или на дисках) эти исходные коды, изучить их, обнаружить и исправить ошибки и скомпилировать для себя.

Q. Что за слова такие - "исходный код", "скомпилировать" ?

A. Программисты пишут программы на специальных языках, называемых языками программирования. Эти языки более-менее близки к обычным, естественным языкам, на них вполне может читать и писать человек (при соответствующей подготовке, разумеется). Вот эти тексты, которые пишут программисты, и называются "исходными кодами". Однако компьютер сам по себе "не понимает" этих языков программирования, он понимает только так называемый "машинный код", образно говоря - единицы и нули. Для перевода с языков программирования на машинный язык созданы программы - трансляторы, или, иначе, компиляторы. Так что чтобы получить из исходных кодов нечто, что можно запустить, нужно эти исходные коды _скомпилировать_.

Q. И чем же так замечательно распространение программ в исходных кодах?

A. Коммерческие программы (обычно) распространяются без исходных кодов, в виде уже скомпилированного машинного кода. Весь фокус в том, что обратное преобразование - из машинного кода в исходный - технически очень сложно, а юридически - запрещено лицензией. А машинный код человеку все равно не понять. Таким образом, производитель может встраивать в свои (коммерческие, закрытые) программы все что ему вздумается - вредоносный или шпионский код, например - пользователь об этом даже не узнает. А при наличии исходных кодов их может прочитать и понять любой программист, и он быстро выявит любые несуразности. Если вы не программист, вы можете просто позвать знакомого программиста…

Q. Но это все не означает, что я должен… как его… компилировать все программы?

A. Конечно, не означает. Свободные программы распространяются не только в исходных кодах, но и в скомпилированном виде. Огромное количество свободных программ поставляется на дисках с дистрибутивом операционной системы Linux.

9 комментариев:

  1. по-моему, очень классный миниFAQ для самых ничего-не-знающих. Отлично.

    ОтветитьУдалить
  2. Я думаю, попаду в точку, если добавлю:

    Q: А правда, что Linux не приспособлен для работы дома и вообще, что это система не для простых смертных?

    ОтветитьУдалить
  3. Ну, тогда и ответ добавляйте ;)

    ОтветитьУдалить
  4. FAQ получился очень удачный. Занятно, живо написан. Молодец! Добавил себе в закладки.

    ОтветитьУдалить
  5. >> Linux - операционная система

    Тебя за это анонимусы с лора порвут :)

    ОтветитьУдалить
  6. Анонимный10/24/2007 4:37 ДП

    боюсь оказаться неправым, но в МГТУ им. Н.Э. Баумана линукс не используют. А в период 1997-2004 велась активная работа по сотрудничеству с Майкрософт.
    P.S. обучался не на ИУ - факультете... (чисто мои данные). Возможно кто-то использует в частном порядке (но кроме пары студентов примеров нет - а жаль).

    ОтветитьУдалить
  7. предыдущий пост мой - бейте меня :o)

    ОтветитьУдалить
  8. Q: А правда, что Linux не приспособлен для работы дома и вообще, что это система не для простых смертных?
    A: Нет, не правда. Идея в том, что дистрибутивов (поставок, вариантов) операционных систем на базе GNU|Linux существует достаточно большое количество, начиная от очень сложных, только установка которых может занимать неделю(и?), заканчивая вариантами фактически являющимися более простыми нежели win.

    ОтветитьУдалить