Операционная система Linux

Тип работы:
Курсовая
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Введение

В наше время рынок программного обеспечения для персональных компьютеров очень разнообразен. В большинстве категорий существует достаточно много производителей; в этих условиях цены на программы не вырастают чрезмерно, и потребитель легко может выбрать среди них наиболее подходящую. Однако сейчас на рынке операционных систем наблюдается совершенно другая ситуация: более 90% пользователей используют Microsoft Windows. Почему так произошло? В основном тут сыграли свою роль отличные рыночные способности руководителя фирмы Билла Гейтса и его главных менеджеров. В результате Windows продаётся по высокой цене. Это особенно невыгодно в российских условиях. Пользователи даже при желании практически не могут перейти на другие операционные системы, в первую очередь из-за малого количества необходимых программ для них. Далеко не лишено значения, сохранится ли подавляющий монополизм Microsoft в области операционных систем в будущем или нет.

В этой курсовой работе рассматривается Linux — третья по популярности операционная система. Многие аналитики предсказывают, что Linux станет самым серьёзным конкурентом Windows на IBM-совместимых компьютерах. Наряду с этим по абсолютным показателям Linux всё ещё очень слабо распространена (0,63% пользователей ПК). Цель данной курсовой работы — ответить на вопрос: что случится с Linux в обозримом будущем, сможет ли она составить реальную конкуренцию Windows? Какие предпосылки для этого имеются в настоящее время? Будет ли такое изменение благоприятным для России?

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

Моё собственное предположение состоит в том, что в не очень отдалённом будущем Linux по распространённости использования станет сопоставима с Windows. Для проверки этого предположения я выделяю следующие задачи:

Рассмотреть историю Linux: её появление, развитие, распространение и т. д.

Описать Linux: какие она имеет отличительные черты, в чём её достоинства и недостатки для пользователей, какие приложения в ней можно использовать?

Исследовать, насколько популярна эта операционная система в наши дни и стоит ли России переходить на неё.

Выявить препятствия на пути распространения Linux.

Основная часть

Операционная система Linux

операционный система программа linux

История развития и версии Linux

Начало проекту было положено в 1991 году. К тому времени проект GNU уже создал множество составляющих для свободной операционной системы, но их ядро GNU Hurd ещё не было готово. BSD-системы в то время не могли быть использованы по юридическим причинам, связанным с использовавшимися лицензиями. Поэтому пустующее место ядра для свободной ОС заняло ядро Linux и, несмотря на ограниченную функциональность ранних версий, привлёк к себе множество разработчиков и пользователей.

В апреле 1991 года 21-летний студент Хельсинкского университета Линус Бенедикт Торвальдс начал работу над некоторыми механизмами операционной системы. Он начал с эмулятора терминала и планировщика задач. 25 августа 1991 года Линус поместил сообщение в группу новостей comp. os. minix, в котором сообщал о том, что через несколько месяцев сделает бесплатную ОС на основе Minix для клонов процессоров 386/486 с многозадачной файловой системой.

Дальнейшие события были следующими:

17 сентября 1991 года появилась Linux версии 0. 01 (10 239 строк кода).

5 октября 1991 года появилась Linux версии 0. 02.

В декабре 1991 года появилась Linux версии 0. 11.

19 января 1992 года послали первое сообщение в группу новостей alt. os. linux.

31 марта 1992 года создана группа новостей comp. os. linux.

В апреле 1992 года появилась Linux версии 0. 96, в которой стало возможно запустить графический сервер X Window System.

Весь 1993 и начало 1994 года выходили 15 тестовых релизов версии 0. 99 (в июле 1993 года введено понятие BogoMips).

14 марта 1994 года появилась Linux версии 1.0.0 (176 250 строк кода).

В март 1995 года появилась Linux версии 1.2.0 (310 950 строк кода).

9 мая 1996 года выбран символ Linux — пингвин Tux.

9 июня 1996 года появилась Linux версии 2.0.0 (777 956 строк кода).

25 января 1999 года появилась Linux версии 2.2. 0, изначально довольно недоработанной (1 800 847 строк кода).

4 января 2001 года появилась Linux версии 2.4.0 (3 377 902 строк кода).

18 декабря 2003 года появилась Linux версии 2.6.0 (5 929 913 строк кода).

Торвальдс продолжает выпускать новые версии ядра, объединяя изменения, вносимые другими программистами, и внося свои. Оно обычно называется «ванильным» (vanilla), то есть это официальное ядро без каких-либо сторонних изменений. В дополнение к официальным версиям ядра существуют альтернативные ветки, которые могут быть взяты из различных источников. Как правило, разработчики дистрибутивов GNU/Linux поддерживают свои собственные версии ядра Linux, например, включая в них драйверы устройств, которые ещё не включены в официальную версию. На сегодня существует очень много популярных дистрибутивов Linux: Red Hat, Ubuntu, Slackware, Fedora Core, Mandriva, SuSE, Debian, Gentoo, Vixta и многие другие.

Номер версии ядра Linux в настоящее время содержит четыре числа, следуя недавнему изменению в долго используемой до этого политике схемы версий, основанной на трёх числах. Для иллюстрации допустим, что номер версии составлен таким образом: A.B. C[. D] (например, 2.2. 1, 2.4. 13 или 2.6. 12. 3).

Число A обозначает версию ядра. Оно изменяется наименее часто и только тогда, когда вносятся значительные изменения в код и концепцию ядра. Оно изменялось дважды в истории ядра: в 1994 году (версия 1. 0) и в 1996 году (версия 2. 0).

Число B обозначает старшую версию ревизии ядра. Чётные числа обозначают стабильные ревизии, то есть те, которые предназначены для промышленного использования, такие как 1. 2, 2.4 или 2.6. Нечётные числа обозначают ревизии для разработчиков, такие как 1.1 или 2.5. Они предназначены для тестирования новых улучшений и драйверов до тех пор, пока они не станут достаточно стабильными для того, чтобы быть включёнными в стабильный выпуск.

Число C обозначает младшую версию ревизии ядра. В старой трёхчисловой схеме нумерации оно изменялось тогда, когда в ядро включались заплатки связанные с безопасностью, исправления ошибок, новые улучшения или драйверы. С новой политикой нумерации, однако, оно изменяется только тогда, когда вносятся новые драйверы или улучшения; небольшие исправления поддерживаются числом D.

Число D впервые появилось в случае, когда смертельная ошибка, которая требовала незамедлительного исправления, была обнаружена в коде ядра 2.6. 8, связанного с NFS. Однако было недостаточно других изменений, для того чтобы это послужило причиной для выпуска новой младшей ревизии (которой должна была стать 2.6. 9). Поэтому была выпущена версия 2.6.8.1 с единственным исправлением в виде исправления для этой ошибки. С ядра 2.6. 11, эта нумерация была адаптирована в качестве новой официальной политики версий. Исправления ошибок и заплатки безопасности теперь управляются с помощью четвёртого числа, тогда как большие изменения выполняются в изменениях младшей версии ревизии ядра (число C).

В то время как Торвальдс продолжает выпускать новые экспериментальные версии, руководство «старыми» стабильными версиями передаётся другим лицам:

Версии

Сопроводители

2. 0

Дэвид Виенхал

2. 2

Марк-Кристиан Питерсон (раньше Алан Кокс)

2. 4

Марчелло Тозатти

2. 6

Эндрю Мортон / Линус Торвальдс

Другими программистами ядра Linux являются Роберт Лав и Инго Молнар.

Опишем кратко стабильные версии Linux, о которых речь шла выше:

Версия 1.0 марта 1994 года поддерживала только машины с одним процессором 386.

В версию 1.2 марта 1995 года добавлена поддержка процессоров Alpha, SPARC и MIPS.

В версию 2.0 июня 1996 года добавлена поддержка других процессоров, а также многопроцессорных систем.

В версию 2.4 января 2001 года добавлена поддержка Plug and Play для шины ISA, процессоров PA-RISC, шин USB и PCMCIA. Поддержка для процессоров Axis Communications ETRAX CRIS и файловой системы Intermezzo были добавлены чуть позже.

В версию 2.6 17 декабря 2003 года добавлены следующие новшества:

встроен uClinux (для микроконтроллеров);

добавлена поддержка для процессоров Hitachi серии H8/300, NEC v850, процессоры для встроенных систем Motorola m68k, новая архитектура доступа к памяти NUMA, поддержка NCR Voyager, технологии Intel hyper threading и PAE;

добавлена поддержка файловой системы XFS SGI;

улучшена поддержка APIC;

увеличено максимальное количество пользователей и групп с 65 000 до более 4 млрд. ;

увеличено максимальное количество процессов с 32 000 до 1 млрд. ;

увеличено максимальное количество типов устройств с 255 до 4 095 и максимальное количество устройств каждого типа с 255 до более миллиона;

улучшена поддержка 64-битных систем и поддержка разделов размером более 16 Тбайт;

улучшено время реакции для процессов реального времени;

улучшен загрузчик модулей и т. д. [7]

Ключевые черты, преимущества и сравнительные характеристики Linux

Linux — UNIX-подобная многозадачная и многопользовательская операционная система для образования, бизнеса, индивидуального программирования, распространяемая свободно на условиях GNU General Public License. В большинстве своём её код написан на языке C и на ассемблере с использованием синтаксиса AT&T.

Что делает Linux столь отличной от других операционных систем? Она была создана и продолжает совершенствоваться и развиваться группой добровольцев. Все желающие приглашаются подключиться к этой работе. Единственное, что требуется — это интерес к семейству UNIX и желание совершенствовать свои навыки в этой среде.

Университеты по всему миру применяют Linux в учебных курсах по программированию и проектированию операционных систем.

Ключевые черты Linux:

Это многопользовательская операционная система защищённого 32-разрядного режима, в составе которой нет 16-разрядного кода, кроме подпрограммы загрузки.

Передовая 32- (64- для процессоров Alpha) разрядная подсистема виртуальной памяти.

Отсутствует ограничение 640 К на оперативную память. Linux может выделить до 3 Гб на процесс, если у Вас есть достаточно виртуальной памяти.

Система безопасности файлов и процессов пользователя.

Сетевая система графического интерфейса X Window, отвечающая промышленному стандарту. Запуск приложений через сеть. Возможность работы приложений с многих машин на Вашей рабочей станции одновременно.

Общие библиотеки («shared libraries») для повышения эффективности использования памяти и дискового пространства.

Прозрачная программная эмуляция математического сопроцессора для машин без него.

API стиля POSIX.1 с USL- и BSD-расширениями. Перенос почти любого корректно написанного POSIX- или UNIX-приложения является тривиальной задачей.

Встроенная поддержка протокола TCP/IP и стандартный набор инструментов BSD.

Широкий спектр WWW-инструментов.

Клиент и сервер NFS — стандартной сетевой файловой системы UNIX.

Сервер SAMBA SMB для LAN Manager и клиентов Windows for Workgroups.

Сервер MARS_NWE клона Netware для использования в сетях IPX.

Сервер Netatalk AppleTalk для использования в сетях AppleTalk.

Клиент и сервер SMTP (e-mail), включая поддержку MIME.

Программное обеспечение для UUCP — протокола старого стиля для эффективного хранения и маршрутизации сетевой информации.

SLIP и PPP для работы с Интернетом через аналоговые и цифровые модемы.

Широкий ряд сетевых высокопроизводительных драйверов.

Драйверы для звуковых плат и приводов CD-ROM.

Эмулятор DOS.

Практически бесплатная система. Лицензия позволяет не только копировать и распространять программное обеспечение, но и предоставляет исходные тексты.

Действительно надёжная система, шансы на то, что одна задача повалит всю систему, практически равны нулю.

Более 18 миллионов пользователей по всему миру.

Преимущества Linux перед UNIX заключаются, во-первых, в цене. Коммерческие дистрибутивы UNIX стоят 1−3 тыс. $ США. Linux распространяется бесплатно или для коммерческих дистрибутивов по сравнительно низкой цене. Во-вторых, в лицензионной политике. Linux распространяется вместе с исходными текстами и под лицензией, которая не разрешает использовать Linux, не распространяя исходных текстов. Эта политика постоянно поддерживает цену коммерческих дистрибутивов Linux на низком уровне и делает также невозможным использование недокументированных возможностей системы. И, в-третьих, в невысоких требованиях к системным ресурсам, что следует из изначального предназначения Linux работать на IBM-совместимых компьютерах.

Однако на рынке, кроме UNIX и Linux, имеется также много других качественных 32-разрядных операционных систем. Сравним характеристики Linux с характеристиками известных ОС Windows NT и OS/2:

Linux

OS/2

Windows NT

Многозадачность

Да

Да

Да

Многопотоковая обработка

Да

Да

Да

Многопроцессорность

Нет

Разрабатывается

Да

Поддержка параллельной работы

Да

Нет

Нет

Многопользовательский режим

Да

Нет

Нет

Лёгкость переноса ОС на другую платформу

Нет

Нет

Да

Динамическое кэширование диска

Да

Нет

Да

Максимальный объём памяти, выделяемый одному процессу

3 Гбайт

512 Мбайт

2 Гбайт

Поддерживаемые сетевые протоколы

TCP/IP

Да

За плату

Да

NFS

Да

За плату

Да

IPX/SPX

Да

За плату

За плату

IBM LAN Server

Нет

За плату

Нет

Microsoft LAN Server

Нет

Нет

Да

Поддерживаемые файловые системы

FAT (DOS)

Да

Да

Да

HPFS (OS/2)

Только чтение

Да

Да

NTFS (Windows NT)

Нет

Нет

Да

EXT2 (Linux)

Да

Нет

Нет

ISO 9660 (CD-ROM)

Да

Да

Да

Network File System (NFS)

Да

За плату

Да

Coherent (UNIX)

Да

Нет

Нет

Stacker

Нет

Да

Нет

DoubleSpace

Нет

Нет

Нет

Поддерживаемые приложения

DOS

Да

Да

Да

16-разрядные приложения Windows

Разрабатывается

Да

Да

16-разрядные приложения OS/2

Нет

Да

Да

32-разрядные приложения Windows

Нет

Нет

Да

32-разрядные приложения OS/2

Нет

Да

Нет

POSIX-совместимые приложения

Да

Нет

Да

Приложения для Macintosh

Разрабатывается

Нет

Нет

Приложения SCO UNIX

Да

Нет

Нет

Клиенты X Window

Да

Нет

Нет

Очевидно, что каждая дополнительная функция, реализованная в системе, приводит к увеличению объёма последней, что сказывается на требованиях к объёму оперативной памяти и жёсткого диска. Кроме того, чем больше объём операционной системы, тем медленнее она обычно работает. Windows NT является самой большой из рассматриваемых нами систем. Причиной этого является высокая сложность системы и большой набор поддерживаемых ею функций. Что, кстати, только повышает конкурентоспособность системы. Linux (в комплекте с X Window) является следующей по размеру системой.

И, наконец, OS/2 является наиболее компактной системой. Именно в этом и состоит привлекательность операционной системы, разработанной IBM. Пользователю необходимо иметь только 8 Мбайт оперативной памяти, чтобы приобщиться к миру объектно-ориентированного интерфейса, и представляет собой неплохую платформу для многозадачной работы с приложениями DOS, Windows и OS/2. Отметим, что размер системы является одной из наиболее сильных характеристик Linux. Система изначально проектировалась максимально компактной и производительной, в то время как для Windows NT основным критерием оптимизации являлась переносимость, а для OS/2 — совместимость с предыдущими версиями системы. А, кроме того, поскольку любой администратор Linux-системы имеет в своём распоряжении полный исходный текст ОС, она может быть оптимизирована для работы с конкретным оборудованием и нуждами пользователя. Увы, OS/2 и Windows NT похвастаться такой возможностью не могут.

Windows NT интересна, поскольку это устойчивая система, предназначенная для широко распространенных процессоров фирмы Intel. OS/2 интересна по той причине, что это наилучшая система для запуска 16-разрядных приложений DOS и Windows, при этом дающая возможность приобщиться к привлекательному миру 32-разрядных систем.

В обеих системах есть один и тот же недостаток — и OS/2, и Windows NT привязывают пользователя к той или иной технологии: ведь приложения будут работать либо в OS/2, либо в Windows NT. А вот Linux эта опасность не грозит. Приложения, разработанные для Linux, могут быть перенесены на любую UNIX-систему.

Приятной особенностью Linux является её способность использовать программное обеспечение, предназначенное для других IBM-совместимых версий UNIX, таких, как, например, SCO UNIX. Впрочем, для UNIX-систем пока не созданы текстовые процессоры, по возможностям сопоставимые с Microsoft Word или Lotus Word Pro. И, к сожалению, именно этот факт сдерживает распространение Linux.

Программные характеристики Linux

В этом разделе описываются приложения, доступные в Linux. Ведь, в конечном счёте, наиболее важным в системе является то, насколько широк спектр доступных в ней программ. А тот факт, что большая часть этих программ распространяется свободно, усиливает впечатление.

Языки программирования и утилиты. Linux обеспечивает полную UNIX-среду программирования, включая все стандартные библиотеки, программный инструментарий, компиляторы, отладчики, которые Вы встречаете и в других UNIX-системах. В мире UNIX большинство приложений и системных программ делаются на C или C++. Стандартным компилятором для C и C++ в Linux служит GNU GCC, который является современным компилятором, поддерживающим много опций. Он способен компилировать C так же, как Objective-C.

Кроме C и C++ многие другие компиляторы и интерпретаторы были перенесены в Linux, такие как Smalltalk, FORTRAN, Pascal, LISP, Scheme и Ada, Perl и shell-подобный командный язык, включающий поддержку разработки простейших приложений в X Window.

В Linux был перенесён продвинутый отладчик gdb, позволяющий пошагово выполнять программы в поисках ошибок или анализировать крах программ с помощью дампов памяти. Gprof — утилита профилирования, показывающая, где ваша программа при выполнении тратит больше времени. Текстовый редактор Emacs позволяет осуществлять интерактивное редактирование. Другие инструменты, включая GNU make и imake, используются для управления компиляцией больших программ; RCS — система для защиты и сопровождения исходных текстов.

Linux содержит динамические библиотеки (DLL), которые позволяют экономить место, поскольку они вызываются только во время выполнения. Эти библиотеки позволяют также прикладному программисту переопределять функции, включая свои коды.

Linux идеальна для создания UNIX-приложений. Поддерживаются различные стандарты вроде POSIX. 1, позволяющие легко переносить программы, написанные для Linux, на другие системы. Студенты, изучающие компьютерные науки, могут использовать Linux для обучения программированию в UNIX и изучения таких аспектов, как архитектура ядра.

Система X Window. Система X Window (или кратко просто Х) — стандартный графический интерфейс для UNIX-машин. Это мощная среда, поддерживающая много приложений. Используя X Window, пользователь может одновременно иметь на экране несколько окон, при этом каждое имеет независимый login. Часто используется мышь, хотя она необязательна. Было написано много специфических Х-приложений, таких, как игры, графические утилиты, инструментарий для программирования и документирования и т. д. С Linux и X Ваш компьютер — замечательная рабочая станция. Используя протоколы TCP/IP, можно смотреть у себя X-приложения, выполняемые на других машинах.

Система X Window была первоначально создана в MIT и свободно распространялась. Существует много и коммерческих приложений, расширяющих возможности X Window. Для Linux есть система X Window, известная как XFree86; версия X11R5 свободно распространяется для UNIX-систем типа Linux. XFree86 поддерживает широкий спектр видеоустройств, включая VGA, Super VGA, различные видеоадаптеры с ускорителями. Это полный комплект X Window, содержащий сам сервер, много прикладных программ и утилит, программные библиотеки и документацию.

Стандартные Х-приложения включают xterm (эмулятор терминала, используемый в большинстве текстовых приложений в X Window); xdm (X-менеджер, обслуживающий login); xclock (представление простых часов); xman (X-ориентированное руководство по Linux) и т. д. Трудно перечислить все приложения X, доступные в Linux, но базовый комплект XFree86 включает «стандартные» приложения, содержащиеся в исходной версии MIT. Но доступно и многое другое, теоретически всё написанное для X Window должно прямо компилироваться и для Linux.

Интерфейс X Window в большой степени контролируется менеджером окон (Window manager). Эта программа отвечает за размещение окон, изменение их размеров, размещение иконок, перемещение окон, вид оконных рамок и т. д. Стандартный дистрибутив XFree86 включает twm, классический оконный менеджер MIT, но также имеются и более современные менеджеры, такие как Open Look Virtual Window Manager (OLVWM). Среди пользователей Linux популярен fvwm. Это небольшой менеджер окон, требующий в два с лишним раза меньше памяти, чем twm. Он обеспечивает трёхмерное представление обрамления окон и виртуальный рабочий стол (desktop): если пользователь подвигает мышь к краю экрана, всё изображение смещается, будто дисплей имеет большие размеры, чем на самом деле. Fvwm более традиционен и позволяет реализовать все функции доступа как с клавиатуры, так и от мыши. Многие дистрибутивы Linux содержат fvwm как стандартный менеджер окон.

Дистрибутив XFree86 содержит программные библиотеки и включает файлы для тех программистов, кто желает создавать приложения в X. Поддерживаются различные множества widgets (графических представлений), такие как Athena, Open Look и Xaw3D. Включены все стандартные шрифты, растровые карты и документация. Поддерживается также PEX (программный интерфейс для трёхмерной графики).

Многие пользующиеся Х используют и имеющиеся в Motif наборы widgets. Несколько компаний продают одно- и многопользовательские лицензии исходных текстов Motif в Linux. Поскольку Motif сам по себе сравнительно дорог, немногие владельцы Linux имеют Motif. Тем не менее, исходные тексты, статически связанные с библиотечными программами Motif, могут свободно распространяться.

Главные ограничения использования X Window происходят от требований к аппаратуре. Для более комфортного режима желательно не менее 8 Мбайт. Желателен и процессор побыстрее, но, прежде всего, необходима видеопамять. Для действительно хорошего результата лучше иметь карту с акселератором (как, например, S3-chipset). На Linux с XFree86 был достигнут рейтинг выполнения, превосходящий 140 000 xstones.

Работа в сети. Linux поддерживает два базовых сетевых протокола UNIX: TCP/IP и UUCP. TCP/IP (Transmission Control Protocol / Internet Protocol) позволяет системам по всему миру связываться по единой сети, известной как Internet. С помощью Linux, TCP/IP и подключения к сети вы можете общаться с пользователями и машинами всего Internet через электронную почту, группы новостей, передавать файлы по FTP и т. п. В Internet много машин под Linux.

Большинство сетей TCP/IP используют Ethernet как физическое транспортное средство. Linux поддерживает многие популярные карты Ethernet и интерфейсы. Однако, поскольку не у всех есть дома плата Ethernet, Linux также поддерживает SLIP (Serial Line Internet Protocol), позволяющий связываться с Internet через модем. Для использования SLIP вы должны иметь доступ к SLIP-серверу, машине, связанной с сетью и обеспечивающей вам вход в Internet. Многие фирмы и университеты предоставляют SLIP-сервис. Если ваш Linux-компьютер имеет Ethernet и модем, вы можете сконфигурировать систему как SLIP-сервер для других хостов.

NFS (Network File System) позволяет вам использовать файлы совместно с другими машинами сети. FTP (File Transfer Protocol) позволяет передавать файлы между машинами. Другие приложения включают send mail — систему передачи и получения электронной почты с использованием протокола SMTP; программы telnet, rlogin и rsh позволяют войти и выполнить команды на других машинах сети; программа finger позволяет получать информацию о других пользователях Internet. Фигурально выражаясь, существуют тонны различных приложений для протокола TCP/IP.

Полный спектр различных программ для чтения почты и новостей существует в Linux, это, например, elm, pine, rn, nn и tin.

Система обеспечивает стандартный программный интерфейс, поэтому любая программа, использующая TCP/IP, может быть легко перенесена на Linux. X-сервер Linux также поддерживает TCP/IP, позволяя отображать выполняемые на других машинах прикладные программы на вашем дисплее.

UUCP (UNIX-to-UNIX Copy) — старейший механизм передачи файлов, электронной почты и электронных новостей между UNIX-машинами. Классически UUCP-машины связываются друг с другом по телефонным линиям через модем, но UUCP может использовать в качестве транспортного средства и связь по TCP/IP. Если у вас нет доступа по TCP/IP или через SLIP-сервер, вы можете сконфигурировать свою систему так, чтобы посылать и получать файлы и электронную почту с использованием UUCP.

Телекоммуникации и BBS. Если есть модем, то можно связываться с другими машинами, используя телекоммуникационные пакеты, имеющиеся в Linux. Многие используют программы телекоммуникации для связи с BBS (Bulletin Board System), а также и с коммерческими сетевыми системами, вроде Prodigy, CompuServer и America On-Line. Другие через модемы связываются с UNIX-системой в школе или на работе. Можно использовать модем и Linux для посылки и приёма факсов. Телекоммуникационные пакеты Linux очень похожи на имеющиеся в MS-DOS или других операционных системах.

Если нет доступа к SLIP-серверу, то можно использовать term для мультиплексирования вашей последовательной линии. Term обеспечивает множественный доступ через модем на удалённую машину, также позволит перенаправить X-клиента на локальный X-сервер через последовательную линию, давая возможность отобразить удалённое X-приложение на вашей Linux-системе. Другой пакет — KA9Q — обеспечивает интерфейс, похожий на SLIP.

BBS — это сегодня хобби многих программистов. Linux поддерживает большое разнообразие программ для BBS, большинство из которых более мощные, чем в других операционных системах. С телефонной линией, модемом и Linux можно превратить компьютер в BBS-сервер, обеспечив входящий доступ к своей системе для пользователей с земного шара. Программное обеспечение BBS для Linux включает XBBS и пакеты UniBoard BBS. Большинство программ BBS ограничивают пользователя системой меню, где имеется некоторый фиксированный набор функций.

Интерфейс с MS-DOS. Существуют различные утилиты для связи с миром MS-DOS. Наиболее известен Linux MS-DOS Emulator, позволяющий выполнять многие программы для MS-DOS прямо в Linux. Несмотря на то, что Linux и MS-DOS — абсолютно различные операционные системы, среда защищённого режима для процессора 80 386 позволяет некоторым задачам вести себя так, как это делают прикладные программы MS-DOS.

Эмулятор MS-DOS всё ещё в стадии совершенствования, но многие популярные пакеты в нём уже выполняются. Понятно, что некоторые приложения MS-DOS, использующие специфические или скрытые свойства системы, никогда не будут выполняться, поскольку эмулятор не знает, как их эмулировать.

Эмулятор MS-DOS, прежде всего, предназначается для тех, кому MS-DOS нужна только для выполнения нескольких приложений, но в основном используется Linux. Эмулятор — это не полное повторение MS-DOS. Разумеется, если эмулятор не удовлетворяет ваши потребности, вы можете использовать MS-DOS непосредственно, как и Linux, на одной и той же машине. При использовании загрузчика LILO можно во время загрузки указать, какую загрузить операционную систему. Linux может сосуществовать с другими операционными системами, например, с той же OS/2.

Linux обеспечивает «гладкий» интерфейс для обмена файлами между Linux и MS-DOS. Вы можете «примонтировать» раздел MS-DOS или гибкий диск под Linux и иметь прямой доступ к файлам MS-DOS, как к «родным».

Другие приложения. Для Linux существует огромное количество всевозможных приложений, что и следует ожидать от такой разносторонней операционной системы. Основная ориентация Linux была на персональные UNIX-вычисления, но она быстро меняется. Всё больше её используют в бизнесе и обучении, всё больше появляется на рынке всевозможных коммерческих приложений.

В Linux доступно несколько реляционных баз, включая Postgres, Ingres, и Mbase. Это профессиональные полномасштабные системы управления базами данных типа клиент-сервер, похожие на имеющиеся на других платформах UNIX. Имеется также коммерческая база — RDB.

Прикладные научные пакеты включают FELT (Finite Element Analysis Tool); gnu plot (анализ данных и черчение); Octave (пакет символических вычислений, похожий на MATLAB); xspread (электронный табличный процессор); xfractint (X-вариант популярного рекурсивного генератора Fractint); xlispstat (пакет статистики) и многое другое. Другие приложения содержат Spice (проектирование и анализ цепей) и Khoros (аналого-цифровая обработка сигналов и визуализация).

Разумеется, есть ещё много приложений, которые были или будут перенесены на Linux. Linux обеспечивает полный программный UNIX-интерфейс, удобный в качестве исходной базы для любых приложений в любой научной области.

Как и другие операционные системы, Linux не стоит в стороне от компьютерных игр. Это и классические текстовые «подземельные» игры, вроде Nethack и Moria, игры типа MUD, тьма игр в X, таких как xtetris, netrek и Xboard, а также Doom, Doom 2, Heretic, Descent, Quake, Quake II, Quake III test, Unreal, Myth II, Civilization III Ctp и др.

Для меломанов Linux поддерживает различные звуковые карты, имеет программы вроде CD-player (программа, воспроизводящая звуковые CD), MIDI-приложения и различные редакторы цифрового звука.

Будущее Linux

Причины успеха и бурного развития Linux

Хорошо известна оригинальная научная теория архитектора Фредерика Брукса. Упрощённая версия выведенного им закона звучит так: если проект не укладывается в сроки, добавление рабочей силы задержит его ещё больше. Любой опытный программист знает, что этот закон «железно работает». Привлечение новых людей в проект в подавляющем большинстве случаев сопряжено с трудностями и отнюдь не решает проблему сроков. Однако проект Linux упорно доказывает обратное, причём не в теории, а в реальной суровой жизни. В его разработку вовлечены миллионы программистов по всему миру, и их число постоянно увеличивается, однако операционная система, вопреки всем ожиданиям, бурно развивается. В чём же тут дело?

Для начала кратко рассмотрим классический корпоративный стиль программирования. Все методики, так или иначе, сводятся к пирамидальному стилю руководства проектом со строгой иерархией подчинения. На вершине пирамиды находится самая малочисленная группа специалистов — архитекторы. Это люди, которые превращают абстрактные мысли в чётко оформленные проектные модели будущего продукта и предписывают программистам, каким образом следует создавать систему. Таких людей можно пересчитать по пальцам; они всегда востребованы, желанны, высоко оплачиваемы и «в свободном виде» встречаются редко. Архитектор не только должен обладать знаниями людей с низших ступеней пирамиды, но и иметь особый конструктивно-образный склад ума, которому не научишь. В этой строгой иерархии подчинения каждый занимается свои делом, выполнять которое он обучен. Архитекторы дают чёткие указания программистам, те, в свою очередь, «властвуют» над службой технической поддержки и администраторами. Самая многочисленная группа находится в основании пирамиды — это пользователи. Они не принимают непосредственного участия в создании системы. Их мнения учитываются лишь на стадии проектирования системы, а также в процессе её доводки.

Пирамидальная модель корпоративного подхода к разработке программного обеспечения складывалась годами. Казалось, ничто не может поколебать всеобщей уверенности в том, что по-другому большие программы эффективно создавать нельзя. Однако в 1991 году, с приходом Линуса Торвальдса, ситуация кардинально изменилась. Он на деле доказал возможность совершенно иной технологии создания программ. Давайте же попытаемся разобраться, что же такое выдающееся сделал этот доселе неизвестный финский студент.

Любой здравомыслящий человек, отыскивая причины успеха Linux, первым делом попытается найти в ней новаторские технологии или уникальные инструментальные средства, использовавшиеся при разработке. Однако — увы! — ничего подобного в Linux нет. Это мнение известных специалистов, чей авторитет непререкаем. Вот что об этом говорит Кен Томпсон: «Я рассматриваю Linux как нечто, что не принадлежит Microsoft: это ответный удар по корпорации, ни больше, ни меньше. Не думаю, что Linux ожидает большой успех. Я видел исходные тексты, там есть как вполне приличные компоненты, так и никуда не годные. Поскольку в создании этих текстов принимали участие самые разные, случайные люди, то и качество отдельных его частей значительно разнится.

По своему опыту и опыту некоторых моих друзей могу сказать, что Linux — довольно ненадёжная система. Microsoft выпускает не слишком надёжные программные продукты, но Linux хуже".

Не стоит забывать также, что эта программа изначально писалась Торвальдсом не как операционная система, а всего лишь как программа эмуляции терминала. У него возникло множество претензий к Minix. Хуже всего в ней была эмуляция терминала, нужная Линусу для подключения к университетскому компьютеру. Разработка этой программы позволяла, кроме всего прочего, детально изучить работу процессора 386. Поскольку Linux изначально основывалась на Minix, она просто не могла не унаследовать её конструктивные недоработки.

Кроме этого, система на первых порах ещё и крайне нестабильно работала. Торвальдс помнит одно сообщение, где автор говорил, что ему очень понравилась Linux, однако она уничтожила все файлы на его жёстком диске и что драйвер дисковода никуда не годен. Итак, мы видим, что система в самом начале была далека от совершенства. Тем не менее, её ждал оглушительный успех. В чём же его причина? Каким образом система, мягко говоря, не являющаяся идеальной, привлекла под свои знамёна огромное количество сподвижников по всему миру, которые остаются её фанатичными приверженцами при любых обстоятельствах?

Суть этого феномена — в «новой» парадигме разработки программного обеспечения, использованной Линусом Торвальдсом. Многие объясняют популярность Linux лишь открытием исходных кодов, однако причины куда более глубоки. Исходные коды некоторых версий UNIX-подобных систем тоже были открыты: их мог смотреть любой желающий. Однако смотреть было можно, а изменять — нельзя. Точнее, изменять всё-таки было можно, но изменения, по условиям лицензии, переходили лишь в личное пользование и не могли распространяться. Даже талантливые энтузиасты, пытавшиеся улучшить якобы открытые системы, не воспринимались создателями программ как соразработчики или, на худой конец, как консультанты. В большинстве случаев их просто игнорировали.

Линус же выбрал совершенно другую модель поведения. Он не только сделал исходный код системы полностью открытым, но и позволил участвовать в создании своей программы каждому. Теперь любой человек был вправе не только изучать исходные коды системы, но наравне с самим Линусом вносить в неё изменения. Кто угодно мог прислать заплатку или модуль и потребовать включить это в систему. Если требование было обоснованным, оно немедленно выполнялось. Причём заплатка или модуль добавлялись в систему не безлико: имя создателя включалось в общедоступные «списки почёта» и даже оставалось в исходных кодах Linux. Таким образом, появился очень сильный стимул для участия в проекте — удовлетворение собственного самолюбия от участия в создании системы. Но это была случайность, а не точный расчёт. Линус тогда и подозревать не мог, какие силы он привлечёт на свою сторону.

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

Гарант в системах, подобных Linux, необходим как воздух, иначе не избежать раскола внутри группы, занятой в разработке, приводящего к появлению многочисленных клонов, тихо убивающих доверие к первоначальной системе. Ярким примером тому служит UNIX. Клонов этой системы столько, что уже невозможно сыскать человека, который бы просто разбирался в UNIX. Любой специалист по UNIX — это специалист только в «своей» UNIX. Пересади его за другую систему, и он окажется беспомощным, как ребёнок. В мире UNIX наблюдалась жёсткая конкуренция и нежелание разработчиков прийти к консенсусу. В результате утрачено доверие ко всей системе.

Торвальдсу, чтобы сохранить свой статус, пришлось отказаться от многих весьма выгодных в денежном плане предложений работы в компаниях, так или иначе связанных с Linux. Он оставил за собой общий контроль над формированием системы. Особо критический момент наступил, когда Линус решился всё-таки на работу в компании Transmeta. На некоторое время он по легко объяснимым житейским причинам (переезд в США, рождение ребёнка и многое другое) выпал из жизни Linux. И в массах начались волнения! Люди решили, что Линус решил оставить своё детище и что это — начало конца из-за потери основного гаранта. Однако, к их всеобщей радости, решив свои проблемы, Линус снова вернулся к работе над системой, совмещая её с работой в таинственной компании Transmeta. [1]

Почему России стоит перейти на Linux?

Можно заметить, что использование нелицензионного программного обеспечения постепенно становится всё более и более проблематичным. Когда-то нелицензионные программы распространяли и использовали совершенно безбоязненно, потом начали проверять магазины, торгующие компьютерами или компакт-дисками, а сейчас нередки и проверки не имеющих к компьютерному бизнесу юридических лиц и выявление людей, устанавливающих там нелицензионное ПО. Постепенно дело может дойти и до проверки домашних компьютеров, тем более что обнаружение нелицензионных программ — это технически достаточно простая задача. К примеру, в программу может быть заложена функция при обнаружении взлома (если например не выполнилась та её часть, которая отвечает за привязку экземпляра к конкретному компьютеру) в определённый момент сообщить правообладателю информацию, позволяющую найти компьютер и пользователя, например, по IP-адресу. Кроме того, уже сейчас многие программы после установки обновлений могут определить, что они нелицензионные и прекратить работать. Но не устанавливать обновления — значит делать свою систему уязвимой для вирусов, сетевых червей и взломщиков. Windows часто критикуют за недостаточную защищённость, а что получится, если отказаться от того уровня защиты, который она предоставляет?

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

Во многих случаях всем используемым коммерческим программам можно найти замену путём перехода на одну из свободных операционных систем, наиболее популярной из которых является Linux. Эта О С даёт возможность преодолеть зависимость от американской корпорации Microsoft, а эта зависимость невыгодна не только экономически, но и политически: то, что программное обеспечение на большинстве компьютеров в стране зависит от закрытой иностранной системы Windows, несёт множество угроз национальной безопасности. Поэтому естественным решением для государства является содействие распространению Linux. [11]

Бесплатное программное обеспечение марширует по России после объявления в октябре 2007 года о переводе всех компьютеров в российских школах на операционную систему Linux к 2009 году.

Россия — очаг компьютерного пиратства с первых дней компьютерной эры, начиная с легендарного Хоббита — клона Spectrum. Но, продвигаясь к членству в ВТО, ей придётся прекратить столь недостойное поведение. С тех пор как американские магнаты программного обеспечения ликующе потирают руки от идеи о принуждении миллионов российских и китайских пиратов платить за коммерческие копии, ВТО особенно заинтересовано в соблюдении прав интеллектуальной собственности в тех странах, которые на данный момент практически не обращают на эти права внимание. Но эта политика в данном случае дала забавные обратные результаты: она повела Россию в диаметрально противоположном направлении.

Тысячи программистов переделывают Linux, превращая её в операционную систему, которая, всё ещё являясь слишком продвинутой для начинающих пользователей, предлагает настоящую альтернативу Windows и известна своей нерушимой стабильностью. Это идеальный выбор для IT-образования по нескольким причинам:

С одной стороны, являясь системой с открытым кодом, Linux может быть бесконечно переработана и адаптирована интересующимися техникой талантами; по этой же причине к выбору Linux склоняются программисты на Западе. С другой стороны, закрытые операционные системы, наподобие Windows и MacOS, существенно ограничивают возможности пользователей внедряться во внутренние процессы работы систем.

Как отмечает Алексей Смирнов из российской компании ALT Linux, отдаление учеников от Windows позволяет им больше изучать принципы работы компьютера и программного обеспечения, чем специфику работы особых программ Microsoft. «Вы изучаете определённое программное обеспечение, но к окончанию школы оно уже будет иметь другие версии», — говорит Алексей. «В изучении определённых программ нет никаких преимуществ. Но если Вы изучаете Open Office, Вы легко можете понять MS Word и наоборот».

Гибкость системы будет становиться всё важнее и важнее, в то время как развитые страны продолжают двигаться от индустриальной экономики к экономическим системам, основанным на высоких технологиях. Выбрав Linux, Россия, возможно, гораздо лучше подготовит своих граждан к XXI веку. [3]

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

Сегодня для обычного, более-менее продвинутого пользователя персонального компьютера даже установка операционной системы на основе Linux или FreeBSD не представляет особой трудности: установщик системы представляет собой точно такую же графическую оболочку, что и установщик Windows, а графические среды KDE или Gnome погружают пользователя в привычное пространство окон, рабочего стола, Главного меню и прочих графических радостей. Современные открытые ОС по дизайнерским решениям окон не уступают коммерческой продукции. Также в состав абсолютного большинства современных дистрибутивов Linux входит комплект необходимого на все случаи жизни ПО: офисный пакет Open Office, предоставляющий пользователю все те же функции, что и Microsoft Office, броузеры, почтовые клиенты и средства обмена мгновенными сообщениями, масса полезных утилит (программы записи CD/DVD, проигрыватели звука, видеороликов и т. д.), игры, графические редакторы и многое другое.

В принципе, типичному пользователю больше ничего не надо ставить на свой компьютер, а если и надо, то в Internet почти наверняка найдётся необходимая программа, распространяемая по открытой лицензии. При этом обеспечивается безопасность: UNIX-подобные системы, благодаря особенностям архитектуры, практически не боятся вирусов. Более того, последние версии Linux-дистрибутивов могут работать с файловой системой FAT 32, что значительно упрощает процесс миграции и работу с документами, созданными в Microsoft Windows (а Open Office поддерживает все документы, созданные в Microsoft Office).

Собственно, если говорить о пока практически отсутствующей в России культуре использования лицензионного ПО, выбор очевиден: если невозможно платить много денег, надо пользоваться бесплатными аналогами. Участники круглого стола в «Росбалте» единодушно сошлись на том, что ПО должно быть лицензионным, а коммерческая это лицензия или открытая — неважно. Пользователь должен иметь выбор, но это не должен быть выбор в пользу пиратов.

Высказывание депутата ЗАКС Санкт-Петербурга А. Ловягина: «Зависимость наших образовательных учреждений от фирмы Microsoft — это тупиковая политика. Она приведёт к тому, что окажется в зависимости и наш сервис, а самое главное — развитие наших собственных кадров. Чтобы оно шло дальше, нужно, чтобы школьники хорошо знали разные операционные системы, а для этого нужны открытые коды. Windows — это как допинг, как игла, на которую мы все садимся». Похожие мысли высказал и директор по развитию компании Lynx BCC В. Кузьмичев: «Мы живём в государстве, которое претендует не только на значительную роль вовне, но и пытается создать приемлемые условия жизни для своих граждан. Свободное П О — это уникальный феномен, данность, которая есть и которое можно и нужно использовать. Россия должна активнейшим образом использовать его, например, при создании новой промышленности, связанной с программным обеспечением. Пришло время активных действий; если мы все будем вовлечены в этот процесс, то мы сможем обеспечить и независимость страны, и решить массу локальных задач». [2]

Компании, образовательные и правительственные учреждения, а также другие организации по всему миру переходят с операционной системы Microsoft Windows на ОС Linux в скором порядке. Они заменяют коммерческие программы их бесплатными аналогами (open source software). Существует как минимум 25 причин, объясняющих эту ситуацию (здесь приведены некоторые из них, не упомянутые в предыдущих источниках):

Вероятность устаревания Linux-систем практически не существует или ничтожно мала, так как архитектура UNIX, на которой базируется Linux, активно тестировалась и дорабатывалась на протяжении более 35 лет. Это доказывает предельную эффективность и безопасность Linux-систем. Совершенствование системы идёт высокими темпами, но новые версии остаются по-прежнему совместимыми с общей архитектурой UNIX.

Linux не имеет никаких тягостных требований, которые необходимо соблюдать в соответствии с лицензией. Компаниям с сотнями и тысячами компьютеров необходимо держать огромное количество персонала только для того, чтобы следить за тем, что все используемые компьютеры соответствуют условиям лицензирования EULA для Windows, Microsoft Office и других платных коммерческих продуктов. Что же касается пользователей Linux, то им можно не опасаться проверок аудиторов BSA, а также серьёзных штрафов за незначительные нарушения лицензионного соглашения.

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

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

Linux способна работать на большом количестве платформ, не ограничиваясь только Intel-совместимыми процессорами. Она достаточно масштабируема и пригодна для использования как на суперкомпьютерах и современных машинных установках, так и в электронном оборудовании сотовых телефонов и наручных часах.

Для правительственных учреждений Linux и другое свободное ПО позволяет достигнуть прозрачности информации, важной для поддержания эффективной демократии, так как она хранится в широко распространённых, общепринятых и открытых форматах, а не в закрытых, как в случае коммерческого ПО. Также, хранение секретной информации гораздо более безопасно с использованием открытых форматов, нежели коммерческих.

Используя Linux, нет необходимости бояться чёрных ходов — одного из секретных методов проникновения в систему, так как код этой ОС доступен для исследования. Известно, что многие компании, занимающиеся разработкой закрытого ПО, включали в свой код такие скрытые возможности, вследствие чего могли получать доступ к секретным данным компаний и конфиденциальной информации. [6]

Что свидетельствует о растущей популярности Linux?

Многие считают Linux недостаточно распространённой, но есть ряд областей, где она используется очень широко. Наиболее известные примеры — это Web-серверы и суперкомпьютеры. Сайт netcraft. com известен своими исследованиями развития Интернета. В частности, там можно посмотреть список хостинг-провайдеров, для которых минимально количество неудачно завершившихся обращений, то есть в определённом смысле это список наиболее надёжных хостинг-провайдеров. Этот список регулярно обновляется, но соотношение между разными системами в нём остаётся примерно одинаковым, и больше всего в этом списке провайдеров, работающих под Linux, что указывает как на её распространённость, так и на то, что это удачный выбор для использования на сервере (если, конечно, вам нужна скорость и надёжность). Ещё более сильны позиции Linux среди самых производительных в мире компьютеров. Среди суперкомпьютеров, попавших в рейтинг Top500 Supercomputer Sites за июнь 2007 года, под Linux работают 77,80% систем! Хотя на «обычных» компьютерах Linux действительно распространена пока намного меньше, но интерес к ней со стороны правительств многих стран и ряда корпораций показывает, что её распространённость будет расти. [11]

ПоказатьСвернуть
Заполнить форму текущей работой