Свободно распространяемые программы и системы

Структура и функции операционной системы. ОС UNIX как альтернатива Windows. Преимущества и недостатки ОС семейства Linux. Техника безопасности и организация рабочего места оператора ЭВМ. Оптимизация рабочих мест и улучшение состояния рабочих помещений.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 27.06.2012
Размер файла 403,1 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

1. Пояснительная записка. Операционная система

1.1 Что такое операционная система?

Прежде всего, стоит разобраться, что же из себя представляет операционная система (ОС).

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

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

ОС служит связующим звеном между человеком и компьютером, предоставляя пользователю простой, ориентированный на работу с файлами интерфейс. Действие записи файла на диск тогда представляется более простым, чем когда нужно заботиться о перемещении головок жёсткого диска, ждать пока они установятся на нужное место и т.д.

Здесь дано только общее представление об операционной системе. Далее я предлагаю рассмотреть ОС более подробно.

1.2 Структура и функции ОС

Большинство современных ОС представляют собой модульные системы (т.е. разделяемые на отдельные функциональные части). Конечно же, единой архитектуры ОС не существует, но есть универсальные подходы к структурированию операционных систем. Наиболее общим подходом является разделение всех её модулей на две группы:

ядро - модули, выполняющие основные функции ОС;

модули, выполняющие вспомогательные функции ОС.

Модули ядра управляют процессами, памятью, устройствами ввода-вывода и т.п. Функции, выполняемые модулями ядра, являются наиболее часто используемыми, поэтому скорость их выполнения определяет производительность всей системы в целом. Для обеспечения высокой скорости работы ОС большая часть модулей ядра постоянно находятся в оперативной памяти, т.е. являются резидентными

Остальные модули ОС (вспомогательные) выполняют полезные, но не столь обязательные функции, например проверка исправности блоков компьютера, обнаружение отказов устройств и т.п.

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

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

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

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

Совместимость программного обеспечения различных ЭВМ в рамках одной аппаратной платформы;

Минимальность вмешательства человека;

Параметрическая универсальность;

Функциональная избыточность (наличие в системе нескольких программ, реализующих одну и ту же функцию);

Функциональная избирательность (возможность конфигурировать систему под конкретного пользователя).

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

1.3 История развития ОС

Безусловно, развитие ОС тесно связано с развитием самих ЭВМ. Ранние ЭВМ не предусматривали операционных систем, поэтому все процессы запуска и остановки программ, подсоединение внешних устройств производились вручную. Программирование велось исключительно на машинном языке. В то время машины использовались скорее для научно-исследовательских целей, а не для решения конкретных практических задач. К началу 50-х годов с изобретением перфокарт - специальных карт, на которые переносился алгоритм выполнения программы - ситуация несколько изменилась, но в целом обслуживание и использование ЭВМ оставалось недопустимо сложным.

Первый шаг к облегчению общения с машиной был сделан в конце 50-х годов с изобретением пакетной обработки данных. Идея заключалась в том, чтобы собрать полный пакет заданий (колоду перфокарт), перенести их на магнитную ленту, а затем с помощью специальной программы (прообраза современных ОС) последовательно запустить их на выполнение уже без участия оператора. Такая обработка заданий значительно сократила время на вспомогательные действия организации самого процесса вычисления. Людям теперь не приходилось бегать по залу, чтобы передать результаты обработки данных: они теперь выводились на принтер в автономном режиме (т.е. без связи с главным компьютером). Однако имелся и существенный минус: из-за того, что программисты лишились непосредственного доступа к ЭВМ, времени на исправление ошибок в программах уходило гораздо больше.

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

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

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

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

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

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

Настоящей революцией было изобретение в начале 80-х годов кремниевых микросхем и как следствие появление первых персональных компьютеров (ПК). С точки зрения архитектуры ПК ничем не отличались от мини-компьютеров, но стоимость их была намного ниже. Это позволило приобретать их не только университетам, предприятиям или правительственным структурам, но и обычным людям. Популярная тогда ОС UNIX была чересчур сложна для использования непрофессионалами. Стояла задача создания дружественного интерфейса, т.е. предназначенного для пользователя ничего не знающего и не желающего что-либо узнать. Тут - то и появилась всем известная MS-DOS (MicroSoft Disk Operating System). Следует отметить, что изначально MS-DOS имела интерфейс командной строки, который был не слишком удобен. И уже много позже была создана графическая среда для MS-DOS, названная Windows, которая впоследствии сформировалась в самостоятельную ОС. Она - то и воплотила идею графического интерфейса, состоящего из окон, значков, различных меню и мыши.

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

2. Альтернативы Windows

2.1 ОС UNIX

2.1.1 История развития

Изначально UNIX была разработана Кеном Томпсоном - сотрудником фирмы Bell Laboratories в 1969 году как многозадачная система для миникомпьютеров и мэйнфреймов (огромных компьютеров размером с комнату).

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

В 1974 году UNIX была передана университетам для «образовательных целей». Причем предоставлялась она с полным комплектом исходных текстов, что предоставляла возможность владельцам без конца подправлять её. Так UNIX нашла коммерческое применение и превратилась в одну из наиболее распространенных ОС. Единственной проблемой было то, что каждый производитель добавлял свои нестандартные усовершенствования, поэтому очень долгое время не могли написать пакет программ для UNIX, чтобы их можно было запустить в любой её версии. Решением этой проблемы стало создание стандарта POSIX, который вобрал в себя наиболее общие процедуры, присущие большинству версий UNIX. Это несколько упростило ситуацию и внесло некое единство в разработку версий UNIX.

На сегодняшний день существует огромное количество клонов системы UNIX, включая Linux, MINIX, System V, Solaries, XENIX, но во всех этих ОС сохранены основные принципы реализации алгоритмов, структуры данных и системных вызовов.

Наиболее интересна из перечисленных ОС Linux. Особенностью этого клона UNIX является её бизнес-модель: это свободно распространяемое ПО. В отличие от Windows, Mac OS и коммерческих UNIX-подобных систем, Linux не имеет географического центра разработки.

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

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

2.1.2 Основные преимущества и недостатки

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

Под простотой понимается то, что UNIX, благодаря компактности ядра, нетребовательна к ресурсам компьютера (в отличие от той же самой Windows). Кроме этого, UNIX содержит значительно ряд других преимуществ.

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

Во-вторых, в ней используется всего шесть основных команд. Операция порождения "fork". Выполняя "fork", процесс создает свою точную копию. Таким образом вы получаете две идентичные копии. Порожденная копия чаще всего выполняет другой процесс - заменяет себя новой программой. Это вторая базовая операция. Оставшиеся четыре вызова - open (открыть), close (закрыть), read (читать) и write (писать) - предназначены для доступа к файлам. Эти шесть системных вызовов представляют собой простые операции, из которых и состоит Unix. Конечно же существует огромное количество других команд, но зная эти пять, вы сможете без труда выполнять основные операции в среде UNIX.

В-третьих, значительному упрощению UNIX послужило использование достаточно развитого командного языка в базовом интерфейсе системы. Даже сегодня, с появлением многочисленных графических оболочек (например, X Window System), найдется немало пользователей, которые предпочитают первичный интерфейс командной строки.

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

Конечно же, операционная система UNIX не идеальна. Можно найти примеры десятков других ОС, которые сделаны более продуманными, обеспечивают более мощные средства программирования и т.д. К основным недостаткам системы можно отнести:

Не поддерживается режим реального времени (вид многозадачности, в котором операционная система сама передает управление от одной выполняемой программы другой)

Слабая устойчивость к аппаратным сбоям;

Снижение эффективности при решении однотипных задач;

Слабо развиты средства взаимодействия и синхронизации процессов.

Кроме этого, в последних версиях UNIX отмечают чрезмерную перегруженность.

Однако, несмотря на все свои недостатки семейство UNIX остаётся одной из самых востребованных на рынке и в дальнейшем может составить хорошую конкуренцию Windows.

2.1.3 Использование

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

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

Итак, зародившись практически как игрушечный проект, сегодня семейство операционных систем UNIX успешно реализуется в разнообразных сферах деятельности: от банков и правительственных структур, до офисов и супермаркетов.

3. Преимущества и недостатки ОС семейства Linux

3.1. Понятие операционной системы

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

1.Управление ОЗУ, Внешними устройствами.

2. Обеспечение запуска и выполнения системных и прикладных программ.

3. Организация обмена между различными устройствами компьютера.

4.Выполнение работ по хранению информации во внешней памяти и по обслуживанию дисков (файловая система).

5.Обеспечение диалога пользователя с компьютером.

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

Исходный код ОС - это написанный человеком текст компьютерной программы, на каком-либо языке программирования.

3.2. Linux

Linux - общее название Unix-подобных операционных систем на основе одноимённого ядра и собранных для него библиотек и системных программ, разработанных в рамках проекта GNU. GNU - другая Unix - подобная ОС, разрабатываемая Ричардом Столпманом, ПО для которой и было во многом заимствовано Linux. Само же ядро Linux было разработано программистом и хакером Линусом Торвальдсом, поэтому правильнее говорить GNU/Linux - то есть совокупность ядра и ПО.

3.3 Фундаментальные особенности

3.3.1 Linux - массовая ОС

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

Для сравнения, к примеру, операционная система MS Windows разрабатывается и поддерживается одной компанией - Microsoft corporation, которой принадлежат авторские права на этот продукт, и которая взимает плату за использование ОС Windows, то есть Windows - это коммерческая, авторская, - проприетарная ОС. Собственно, корпорация Microsoft была основана Биллом Гейтсом и Полом Алленом в 1975 году, им принадлежит контрольный пакет акций этой организации.

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

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

3.3.2 Linux - бесплатная ОС

Как уже было сказано, права на ОС Linux переданы в общественную собственность, не существует организации или лица - собственника Linux. Сам Линус Торвальдс, создавая Linux, изначально не стремился получить от неё прибыли и расценивал её создание, лишь как своё увлечение. Это видно из его знаменитого письма в новостную группу «Миникса», вот его основная часть: “Здравствуйте, все те, кто использует миникс -

Я делаю (бесплатную) операционную систему (это всего лишь хобби, и она не будет большой и профессиональной как gnu).

Работа над ней началась в апреле и скоро будет закончена. Я бы хотел получить отзывы о том, что людям нравится/не нравится в миниксе, ибо моя ОС на неё похожа (такое же устройство файловой системы из практических соображений) среди всего прочего”.

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

Таким образом, Windows не является конкурентом Linux с экономической точки зрения, скорее с идейной - стремление вытеснить монополиста, своеобразный «пользовательский бунт» Но с точки зрения Windows, Linux есть злейший враг. С целью подорвать репутацию Linux, корпорация Microsoft развернула маркетинговую компанию “Get the facts”, в которой утверждалось, что Windows надёжнее, чем дистрибутивы Linux, что общая стоимость содержания Windows меньше, так как приходиться тратить средства а обучение пользованию Linux, и наконец, что Windows безопасней. В действительности, эти утверждения в основном не соответствовали истинности. В итоге можно сказать, что концепция существования Linux, в качестве бесплатного, ПО предопределяет коренное отличие от проприетарных систем, таких как Windows или Solaris, и даёт Linux неоспоримое преимущество перед этими и прочими коммерческими ОС.

3.3.3 Linux - свободная ОС

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

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

Так, например, Windows - это операционная система с закрытым исходным кодом, который доступен только очень узкому кругу лиц.

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

Ещё одно важное значение исходного кода -- описание программы. По тексту программы можно восстановить логику её функционирования.

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

Gnu/Linux - это ОС с открытым исходным кодом, защищённым под авторством создателя - Линуса Торвальдса, лицензией “GNU General Public License” -- лицензия на свободное программное обеспечение, созданная в рамках проекта GNU в 1988 году, по инициативе Ричарда Столлмана. Эта лицензия -- предоставляет пользователю права копировать, модифицировать и распространять, гарантирует, что пользователи всех производных программ также получат вышеперечисленные права. Лицензируя работу на условиях GNU GPL, автор сохраняет за собой авторство, кроме того, производные программы могут распространяться коммерчески (здесь ярко выражено различие между открытым ПО (Open source) и бесплатным (Free source)). То есть эта лицензия позволяет всё то, что запрещает закон об авторском праве, сохраняя, однако, авторство за разработчиком.

Благодаря открытому исходному коду, ОС Linux стала тем, что она есть. Только 2% ядра Linux на настоящий момент составлено самим Линусом Торвальдсом. Именно открытость, дающая возможность совершенствовать эту ОС тысячам программистов, сделала Linux такой популярной движущей силой, обусловила её предельную экономическую эффективность с точки зрения конкуренции и спроса. Поэтому можно смело говорить о том, что Linux гораздо более гибкая ОС, чем Windows, поскольку тысячи компаний из сообщества Linux могут гораздо быстрее найти ошибки и несоответствия, нежели программисты из «лона» Microsoft. Кроме того, по этой же причине дистрибутивов Windows существует гораздо меньше, чем Linux, причём дистрибутивы Linux также взаимопреемственны, легко изменяемы, приспособляемы.

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

3.4 Обзор основных качеств

3.4.1 Направленность

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

Но существуют операционные системы, предназначенные для использования на и персональных компьютерах, например Apple и та же Windows, которая изначально разрабатывалась, как однопользовательские и только потом на основе однопользовательской была создана многопользовательская, которая, однако, уступает Linux по интерактивным возможностям. Но простой, графически ориентированный интерфейс делает такие системы гораздо более простыми и удобными в использовании для обычных пользователей, что делает их более популярными среди пользователей ПК, на которые Windows часто предустанавливается и имеется на 93%. Соответственно, Linux более популярен на Серверах.

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

3.4.2 Интерфейс

Характерной чертой интерфейса Linux является наличие широких возможностей пользования в текстовом режиме. Командный процессор (оболочка) компиляторы, редакторы, программы обработки текста, утилиты для работы с файлами могут запускаться пользователем с клавиатуры.

В некоторых дистрибутивах системы Linux для ПК ориентированный на ввод с клавиатуры интерфейс пользователя был заменён на графический интерфейс, ориентированный на использование мыши, для чего не потребовалось никаких изменений в самой системе. Именно эта гибкость сделала систему Linux такой популярной и позволила ей пережить многочисленные изменения лежащей в её основе технологии. Графический интерфейс пользователя системы Linux похож на первые графические интерфейсы, разработанные для системы Unix в 70-х годах прошлого века и ставшие популярными благодаря компьютерам Macintosh и впоследствии системе Windows для ПК. Графический интерфейс пользователя создаёт среду рабочего стола - знакомую нам всем метафору с окнами, значками, панелями инструментов, а также возможностью перетаскивания. Полная среда рабочего стола имеет администратор многооконного режима, который управляет размещением и видом окон, а также различными приложениями и создаёт согласованный графический интерфейс. Популярными средами рабочего стола для Linux являются GNOME (Gnu Network Object Environment) , KDE (K Desktop Environment), Enlightenment и Xfce .

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

3.4.3 Оболочка

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

Когда оболочка запускается, она инициализируется, а затем выводит на экран символ приглашения к вводу ( обычно это знак % или $) и ждёт, когда пользователь введёт командную строку. После того, как пользователь введёт командную строку, оболочка извлекает из неё первое слово и ищет программу с таким именем. Если программу удаётся найти, оболочка запускает её. При этом работа оболочки приостанавливается на время работы запущенной программы. По завершении работы программы оболочка пытается прочитать следующую команду.

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

В Windows, например, Командная строка существует, но обладает ограниченной функциональностью (например, нет возможности так же полно настроить сеть, как с помощью графических инструментов). Базируется на MS-DOS, наследуя её скромные возможности, мало изменившиеся с 1990-х годов.

Значит этот раздел мы можем полностью отнести к преимуществам Linux.

3.4.4 Программное и аппаратное обеспечение

В программном обеспечении совместимости с аппаратными средствами в настоящее время проявляются основные недостатки ОС Linux. Это связано с тем, что разработчики ПО до недавнего времени часто ориентировали свою продукцию почти исключительно на Windows. Корпорация Microsoft имеет множественные лицензионные соглашения с производителями ПО, что обеспечивает совместимость и приспособленность программных средств к этой ОС. Что же касается Linux, то некоторые программы оказываются несовместимы с этой ОС. Но не стоит забывать о том, что, во-первых, сообщество Linux постоянно разрабатывает и тестирует новое свободное ПО, во-вторых, Linux функционирует за счёт программных средств GNU. Имеется и аналоговый офисный пакет - Open Office.

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

3.4.5 Безопасность

Linux была многопользовательской ОС почти с самого начала, Это значит, что безопасность и контроль над информацией были встроены в систему на очень ранней стадии. Сообщество пользователей Linux состоит из некоторого числа зарегистрированных пользователей, каждый из которых имеет свой уникальный UID (User Identification). Идентификатором владельца помечаются файлы, процессы и другие ресурсы. По умолчанию владельцем файла является пользователь-создатель. Пользователи могут организовываться в группы, которые также имеют свои идентификаторы - GID. Каждый файл или процесс несёт на себе UID и GID, своего владельца. Файл также получает набор разрешений доступа, определяемый, создающим процессом (процесс получает информацию от владельца). Эти разрешения определяют уровень доступа к файлу для владельца, для членов группы и для прочих пользователей. Есть 3 категории доступа: Чтение, запись и исполнение, обозначаемых соответственно буквами r, w, x (read, write, execute).

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

3.5 Программное обеспечение: легальное и... бесплатное

Начиная поиски бесплатных программ, сразу же надо откинуть возникающий образ трепещущего на ветру “Веселого Роджера”. Зачем искать пиратские копии коммерческих программ, если можно приобрести “за бесплатно” легальные программные продукты? Речь идет о программах, распространяемых как demo, freeware и shareware. Тут следует разобраться с терминами и уяснить для себя, почему это выгодно для разработчиков и что могут получить от таких программ пользователи.

Начнем с демо-программ. Тут, вроде бы, все ясно. Такие программы в определенной мере подобны рекламным роликам нового фильма. Они должны продемонстрировать лучшие возможности “рекламируемого” программного продукта и убедить потенциального пользователя в том, что дальнейшая жизнь без этой программы просто невозможна. Иными словами, разработчик преследует рекламные цели, а пользователь получает возможность опробовать новый продукт. Бесплатно. Как правило, демо-версии коммерческих программ при сохранении интерфейса и дизайна коммерческой версии лишены ряда функций или на использование некоторых из них наложены ограничения. Например, в редакторе аудиофайлов может быть введено ограничение на количество одновременно используемых эффектов обработки звука или в графическом редакторе может отсутствовать функция сохранения результатов обработки. Возможны и другие ограничения функциональных возможностей продукта, все зависит от фантазии разработчиков. Пользоваться такими программами, конечно, можно, но не всегда удобно. Раздобыть же демо-версии программ, как правило, удается на сайтах разработчиков программного обеспечения.

Другим классом бесплатных программ являются freeware-программы. Как это ни странно звучит, это действительно бесплатное полнофункциональное легальное программное обеспечение. Особенностью такого рода программных продуктов является то, что они защищены законодательством об авторском праве, их разработчики сохраняют свои права на созданное программное обеспечение, но разрешают его абсолютно бесплатное использование и распространение при условии неизменности кода программы. Иногда freeware-программы относят к так называемому программному обеспечению Public Domain Software (программное обеспечение общего пользования). Такая классификация представляется спорной. Дело в том, что программы, относящиеся к public domain, полностью отчуждены от автора и являются общественной собственностью (часто они еще и сопровождаются исходными кодами, которые можно редактировать), а автор freeware-программы сохраняет права на программу и теоретически может даже перевести ее в разряд коммерческих продуктов.

Но права правами, а остается вопрос: зачем же автору вкладывать труд в создание программы, а потом раздавать ее совершенно бесплатно? Иногда все объясняется очень просто: программист создал для собственного удобства некую программу или утилиту, попользовался, усовершенствовал, а потом поделился ею с друзьями, разрешив использование и копирование. И все. Логика в этом случае проста - программа создавалась “для себя”, рассчитывать на особо крупное вознаграждение не приходится. Как говорится, махнул разработчик-одиночка на это рукой, вставил копирайт, да и отпустил свое творение “в мир”.

Но зачастую можно найти freeware-программы профессионального уровня, на создание которых потрачены годы труда и усилия целых авторских коллективов. Например, Linux - операционная система - и почти все программное обеспечение, работающее под Linux (от графических редакторов до пакетов администрирования Web-сервера), распространяется бесплатно… Может быть, авторы состоят членами клуба альтруистов или просто собрались вместе ненормальные программисты и решили осчастливить мир новым продуктом, не требуя ничего взамен? Оказывается, нет.

Нередко распространение программ freeware является четко продуманным маркетинговым ходом. Действительно, что такое “бесплатно” знают все. И обзавестись “на халяву” работоспособной и нужной программой не откажется никто, будь то в России, в Америке или любой другой стране, где работают с компьютерами. А дальше… Дальше можно, например, за дополнительную плату распространять новые версии программы или дополнительные модули, расширяющие функциональные возможности базовой версии программы, “подаренной” пользователю. Можно использовать freeware-программы для “раскрутки” собственного имени. Если freeware-разработки пользуются достаточной популярностью, то очень скоро название фирмы-разработчика (или индивидуального разработчика) будет у всех на слуху.

Можно, наконец, использовать freeware для захвата рынка. Образцом тому служит смелый маркетинговый ход “спецов” из Microsoft. Суть истории такова. Когда компания Microsoft вознамерилась завоевать свое место на рынке броузеров, то оказалось, что место-то уже занято - на рынке почти безраздельно господствовала Netscape… Не знаю, что бы стала делать в такой ситуации обычная компания, но “умы” из Microsoft поступили совершенно парадоксальным образом: они стали раздавать свой Internet Explorer бесплатно. И что же… Ситуация на рынке стала меняться с невероятной скоростью. Бедняги из Netscape попытались было исправить положение и тоже сделали свой продукт бесплатным, а потом даже исходные тексты стали предлагать всем желающим, но поезд уже ушел...

Так что “бесплатно” - категория относительная и при всем том, что freeware-программы бесплатны для пользователя, они могут оказаться выгодными и для своих создателей. Кстати, сам термин “freeware” появился в 1982 году благодаря некоему американскому программисту по имени Эндрю Флюглеман (Andrew Fluegleman). Он написал для своего новенького IBM PC коммуникационный пакет PC-Talk и отдал его для свободного распространения. Именно тогда Флюглеман придумал для своей программы эпитет “freeware” и даже зарегистрировал его как товарный знак, привязанный к PC-Talk.

Отвлечемся все же от истории и вернемся к бесплатному программному обеспечению. Помимо действительно бесплатных программ demo и freeware, существуют, как уже говорилось выше, еще и программы shareware, или условно бесплатные программы. В англоязычной литературе концепция shareware формулируется как “try-before-you-buy”, или “попробуй, прежде чем купить”. Это означает, что такой программой можно пользоваться в течение какого-то ограниченного периода времени, а потом уже принимать решение о том, стоит его покупать или нет. В последнем случае, правда, все файлы должны быть… удалены с компьютера пользователя.

Термин “shareware” возник примерно в то же время, что и “freeware”. Когда Флюглеман создавал свой PC-Talk, его приятель Джим Кнопф (Jim Knopf) разработал небольшую СУБД PC-File. Так как ребята не собирались извлекать выгоды из своих произведений, то и вторая программа также была передана в безвозмездное пользование всем желающим. Но в документации, прилагаемой в виде файлов к этим программкам, содержалось пожелание: лица, заинтересованные в развитии и сопровождении этих программ, могут, проявив добрую волю, отправить небольшое денежное вознаграждение авторам. Концепция shareware была заложена. Сам же термин “shareware” появился чуть позже, в 1984 году. Так как для обозначения описываемого способа распространения программного обеспечения использовать термин “freeware” было уже нельзя (если помните, Флюглеман зарегистрировал его на себя), то пришлось придумывать что-то новое. Это “новое” предложил программист Боб Уоллейс (Bob Wallace), который, по его словам, нашел термин “shareware” в старом журнале про вычислительные системы.

Таким образом, концепция shareware базируется на доверии автора к пользователю, в надежде, что последний, посчитав программу полезной для себя, оплатит трудозатраты разработчика или откажется от программы и пользоваться ею больше не будет.

Ну а теперь самое интересное - где же все эти программы можно достать. Начнем с русскоязычных ресурсов сети, например, с сайта, который так и называется Freeware.ru (http://www.freeware.ru) с подзаголовком: “Программы для Windows”. Представленные здесь программы разбиты на два больших класса: “Мой компьютер” и “Интернет”, в свою очередь имеющие более подробное деление по категориям. Есть возможность поиска программ по ключевым словам, вывода программ, поступивших за последнюю неделю, и списка самых популярных программ. Каждая программа снабжена подробным описанием с указанием объема скачиваемого файла, даты обновления и количества обращений пользователей к данному файлу. Забрать же саму программу можно либо по ссылке на сайт разработчика или распространителя программы, либо с ftp-сервера Freeware.ru.

Великолепный сайт под названием “List SOFT - каталог программ” находится по адресу http://listsoft.ru/95/programs.htm. На момент посещения сайта в каталоге (который пополняется почти ежедневно) находилось более 2200 программ, из которых почти 1300 были freeware, то есть действительно бесплатные. Программы рассортированы по различным категориям (“WWW”, “Поиск”, “Графика” и т. д.) с дальнейшим дроблением на подкатегории. Имеется возможность поиска по ключевому слову. Описание каждой программы содержит дату поступления и дату обновления, условия распространения, указание версии, язык интерфейса, наименование операционной системы, под которой работает программа, размер архивного файла. Интересная особенность: стоимость регистрации для shareware-программ указывается в рублях. Программам, которые особенно понравились владельцу ресурса, присваивается соответствующая оценка (good, cool, best), которая, надо сказать, верно отражает качество программы. Пользователи также могут принимать участие в рейтинговании. Ресурс действительно стоящий, удобный и насыщенный информацией.

Помимо ресурса List Soft, существует еще один столь же содержательный сайт, который называется… “SoftList - каталог программ со всего мира” (http://softlist.ru). Несмотря на сходство названий, это разные ресурсы. Последний из них - проект, поддерживаемый каталогом List.RU. Для классификации программ также применена наглядная система их деления на категории в зависимости от назначения. Есть система поиска. Дано подробное описание каждой программы, ее категория (freeware или shareware), размер архива, указана операционная система, под которой функционирует программа, дата поступления и автор. В отличие от предыдущего ресурса не указан язык интерфейса, уступает он и по количеству представленных в каталоге программ.

Из других русскоязычных ресурсов, где можно легально обзавестись бесплатными программами, назову FreeSoft Server (http://www.freesoft.ru) и очень неплохой, как по содержанию, так и по дизайну сайт Best&New Soft (http://www.bns.vkd.ru), на котором используется удобная система навигации и четко продуманное оформление описаний файлов. Можно также поискать бесплатное программное обеспечение в коллекции сайта WinStuff (http://winstuff.lipetsk.ru/main.shtml), содержащей около 400 программ под Windows, в “Файловом архиве Неон-В” по адресу http://files.com.ua или на сайте Download.ru

Ну а что же на Западе? Тут распространение freeware и shareware-программ поставлено на широкую ногу. Одним из старейших ресурсов, посвященных такого рода программному обеспечению, является Public Software Library (http://www.pslweb.com). Система эта основана в 1982 году Нельсоном Фордом (Nelson Ford), одним из корифеев движения shareware. Кстати, именно в ходе объявленного в 1984 году Нельсоном Фордом конкурса и был предложен новый термин - shareware - для обозначения способа распространения условно бесплатных программ. К сожалению, сайт этот интересен, в основном, с исторической точки зрения, так как заказ и получение программ (из более чем 20 тысяч, хранящихся в базе) не вполне очевидны и удобны. Отсутствует какая-либо система поиска…

Гораздо более удобным и действительно полезным является, например, CNET Shareware. com (http://shareware.cnet.com). Во-первых, здесь есть специализированная система поиска, позволяющая искать freeware и shareware-программы в Сети (по утверждению авторов, поиск идет в базе из более чем 250 тысяч программ); во-вторых, обзавестись бесплатными программами могут тут и владельцы “Макинтошей”, и “Палм Пилотов”; в-третьих… Да лучше зайти и посмотреть это все самостоятельно.

Другим ресурсом, предоставляющим возможность легально обзавестись бесплатным программным обеспечением, является сайт TUCOWS (http://www.tucows.com), работающий с 1993 года. Для того чтобы процесс скачивания шел побыстрее, рекомендуется воспользоваться одним из “зеркал” сервера, ориентированных на отдельные регионы мира, то есть лучше обратиться к списку европейских “зеркал” ресурса. Выбор можно осуществить по адресу http://www.tucows.com/Europe.html. Кстати, еще один распространитель бесплатного и условно-бесплатного программного обеспечения, NONAGS, даже имеет свое “зеркало”, ориентированное на российских пользователей - http://nonags.online.ru/index.html.


Подобные документы

  • Основные моменты истории операционных систем, связывающих аппаратное обеспечение и прикладные программы. Характеристика операционной системы Microsoft Windows Seven, анализ операционной системы Linux. Преимущества и недостатки каждой операционной системы.

    курсовая работа [63,0 K], добавлен 07.05.2011

  • Понятие операционной системы. Фундаментальные особенности Linux. Обзор основных качеств. Программное и аппаратное обеспечение, безопасность системы. Преимущества ОС - общественная доступность проекта, открытость, бесплатность, развитая оболочка.

    реферат [63,2 K], добавлен 09.01.2011

  • Сущность и принцип работы операционной системы, правила и преимущества ее использования. Возможности различных операционных систем, их сильные и слабые стороны. Сравнительная характеристика систем Unix и Windows NT, их потенциал и выполняемые задачи.

    реферат [10,5 K], добавлен 09.10.2009

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

    методичка [1,6 M], добавлен 12.09.2008

  • История развития и отличительные признаки UNIX-системы. Основы информационной безопасности и особенности настройки исследуемой операционной системы, ее достоинства, недостатки и базовые права доступа. Общая характеристика безопасности ядра UNIX.

    реферат [599,5 K], добавлен 18.09.2013

  • Концепция операционных систем: главное назначение, основные функции и типы. Характеристика и оценка возможностей Microsoft Windows и Linux. Подбор операционной системы для рабочих персональных компьютеров и для сервера на предприятии ООО "Газ-сервес".

    дипломная работа [272,3 K], добавлен 16.06.2012

  • Описание файловой системы Unix. Работа основных команд ls, cmp, comm, их ключей. Разработка программного продукта, работающего в среде Windows и представляющего собой эмулятора командного процессора операционной системы Unix. Выбор средств реализации.

    курсовая работа [183,0 K], добавлен 29.04.2015

  • Операционная система – набор программ, обеспечивающий организацию вычислительного процесса на ЭВМ, ее значение, структура, функции, история развития. Альтернативы Windows: UNIX, Linux, OS/2, MacOS, главные их достоинства и недостатки, сферы использования.

    реферат [41,4 K], добавлен 28.03.2010

  • Прикладные программы и утилиты. Простейшие функции операционной системы. История разработки корпорацией Microsoft Corporation графической операционной оболочки Windows. Версия семейства сетевых ОС Windows NT (Millennium Edition, 2000, XP, Vista, Seven)

    презентация [965,2 K], добавлен 12.10.2013

  • Изучение общих понятий операционной системы Android, разработанной для коммуникаторов, планшетных компьютеров, основанной на ядре Linux. Разработка программного обеспечения Android. Преимущества и недостатки мобильной операционной системы Windows Mobile.

    реферат [60,6 K], добавлен 16.04.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.