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

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

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

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

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

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

Введение

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

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

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

1. История

В 1991 году, во время обучения в Хельсинкском университете Торвальдс заинтересовался операционными системами и был разочарован лицензией MINIX, которая ограничивала её использование только образовательными целями (что исключало любое коммерческое использование), вследствие чего начал работать над своей собственной операционной системой, которая в итоге стала Linux. Торвальдс начал разработку ядра Linux на MINIX, и приложения, написанные для MINIX, были также использованы в Linux. Позже, когда Linux достиг определённой зрелости, появилась возможность продолжать разработку уже на базе самого Linux.

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

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

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

2. Ключевые черты Linux

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

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

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

· Сетевая система графического интерфейса 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 стоит отнести то, что всё в этой системе является файлом. Все устройства (жёсткие диски, платы расширения и т. д.) определяются специальными типами файлов, а все операции с ними - записью либо чтением из файла. Даже текущие исполняющиеся процессы представляют собой файлы в особой файловой системе (/dev/proc/) и, при наличии необходимых навыков, можно изменять процесс «на ходу» меняя содержимое файла.

3. Языки программирования и утилиты

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 и изучения таких аспектов, как архитектура ядра.

4. Работа в сети

Работа в сети - ключевая область функциональности в Linux.

Сетевая система Linux поддерживает основные Интернет-протоколы для коммуникаций UNIX - UNIX. Она также реализует протоколы, характерные для ОС, отличных от UNIX, в частности, протоколы, используемые в сетях PC, таких как Appletalk и IPX. Внутри сетевая система Linux реализована в виде трех уровней абстракции:

· Сокетный интерфейс

· Драйверы протоколов

· Драйверы сетевых устройств

Наиболее важный набор сетевых протоколов в Linux - это набор протоколов Интернета.

Она обеспечивает маршрутизацию между различными машинами на любом участке сети. На верхнем уровне протокола маршрутизации поддерживаются UDP-, TCP- и ICMP-протоколы.

Основные дистрибутивы Linux «из коробки», т. е. не требуя установки дополнительных пакетов и с минимальной начальной настройкой, позволяют развернуть веб-сервер, почтовый узел иле сервер разработки приложений. При этом не требуя большого количества ресурсов. Простейший LAMP-сервер (LAMP - это акроним, расшифровывающийся как Linux, Apache, MySQL, PHP) может вполне комфортно работать на системе с процессором частотой 500MHz, RAM 512Mb 1Gb дискового пространства. Разумеется, для большинства современных сайтов этого будет мало, но сервер с такими характеристиками вполне «потянет» десяток простых сайтов на http.

В апреле 2011 года семейство операционных систем на базе ядра Linux - четвёртое по популярности в мире среди клиентов Всемирной паутины (включая мобильные телефоны). На рынке веб-серверов доля Linux порядка 32 % (64,1 % указаны как доля Unix). По данным TOP500, Linux используется на 96 % самых мощных суперкомпьютеров планеты.

Можно выделить несколько основных областей, где нередко можно встретить Linux:

· Серверы, требующие высокого аптайма.

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

· Системы военного назначения (например, МСВС РФ) - по соображениям безопасности.

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

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

· Старые компьютеры с ограниченными ресурсами быстродействия и оперативной памяти, для них используются быстрые рабочие окружения или оконные менеджеры, не требовательные к ресурсам (например, LXDE, Openbox, Xfce, Fluxbox).

операционный linux дистрибутив программирование

5. Использование в десктопных системах

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

· высокая сложность установки и настройки

· отсутствие стандарта графического окружения

· недоступность популярных программ.

На сегодняшний день большинство дистрибутивов обзавелось удобным графическим инсталлятором, предварительно настроенными графическими окружениями рабочего стола, поддержкой большинства современных моделей оборудования, в том числе и видеокарт. Единого стандарта графического окружения по-прежнему нет, но сейчас это, скорее, достоинство - пользователь может сам выбрать одну из популярных графических оболочек. Окружения рабочего стола давно превратились в собственные законченные экосистемы со своими наборами программ практически на все случаи жизни. К минусам подобного разнообразия стоит отнести несовместимость программ из разных окружений: например, чтобы запустить kaffeine - программу для записи CD и DVD дисков из состава KDE - пользователю придётся установить большую часть этой оболочки.

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

6. Дистрибутивы Linux

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

Самые распространённые в мире дистрибутивы:

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

· Ubuntu - дистрибутив, основанный на Debian и быстро завоевавший популярность. Поддерживается сообществом, разрабатывается Canonical Ltd. Основная сборка ориентирована на лёгкость в освоении и использовании, при этом существуют серверная и минимальная сборки.

· Linux Mint - дистрибутив, основанный на Ubuntu и полностью с ним совместимый, включающий в себя по умолчанию Java, Adobe Flash и многое другое.

· openSUSE - дистрибутив, разрабатываемый сообществом при поддержке компании Novell. Отличается удобством в настройке и обслуживании благодаря использованию утилиты YaST.

· Fedora - поддерживается сообществом и корпорацией RedHat, предшествует выпускам коммерческой версии RHEL.

· Mageia - дистрибутив Linux, основанный на Mandriva Linux бывшими сотрудниками компании Mandriva, разрабатываемый в цикле, составляющем 9 месяцев.

· Slackware - один из старейших дистрибутивов, отличается консервативным подходом в разработке и использовании.

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

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

· CentOS - дистрибутив Linux, основанный на свободных исходных текстах коммерческого дистрибутиваRed Hat Enterprise Linux компании Red Hat, и совместимый с ним. Срок поддержки каждой версии CentOS составляет 7 лет (с помощью выпуска обновлений безопасности). Новая версия CentOS выходит раз в 2 года и каждая версия регулярно обновляется (каждые 6 месяцев) для поддержки новых аппаратных средств. В результате это приводит к безопасной, легко обслуживаемой, надёжной, предсказуемой и масштабируемой Linux среде.

· PCLinuxOS - LiveCD дистрибутив Linux с возможностью установки операционной системы на жёсткий диск, основанный изначально на Mandrake 9.2, PCLinuxOS придерживается собственного пути развития.

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

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

Для желающих досконально разобраться с Linux подойдёт любой из дистрибутивов, однако довольно часто для этой цели используются так называемые source-based дистрибутивы, то есть предполагающие самостоятельную сборку всех (или части) компонентов из исходных кодов, такие как LFS, Gentoo или CRUX.

Размещено на Allbest.ru

...

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

  • Управление памятью в операционной системе Linux. Физическая и виртуальная память. Исполнение и загрузка пользовательских программ, файловая система. Передача данных между процессами. Структура сети в операционной системе. Развитие и использование Linux.

    презентация [1,4 M], добавлен 24.01.2014

  • Linux - ядро операционной системы с монолитной архитектурой. Прародители операционной системы Linux, ее стабильные и экспериментальные версии. Процесс внедрения Linux и свободного программного обеспечения в школах и государственных учреждениях России.

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

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

    курсовая работа [64,4 K], добавлен 13.12.2011

  • Анализ технических возможностей операционной системы Mandriva Linux - дистрибутива GNU/Linux, разрабатываемого французской компанией Mandriva, выпускающей свободные, коммерческие и корпоративные версии своего дистрибутива. Этапы установки оболочки Linux.

    презентация [26,2 M], добавлен 23.05.2010

  • Linux – одна из наиболее популярных распространяемых бесплатно операционных систем. Работа с базовым ограниченным набором программ по умолчанию. Характеристика основных программ, которые расширяют возможности операционной системы Linux для пользователя.

    презентация [486,5 K], добавлен 09.10.2013

  • Изучение операционной системы Linux: элементов файлов, структуры каталогов и прав доступа к ним. Получение практических навыков по работе с некоторыми командами данной ОС. Теоретические сведения и практические навыки по работе с процессами Linux.

    лабораторная работа [847,5 K], добавлен 16.06.2011

  • ОС Linux - название Unix-подобных операционных систем, основанных на одноимённом ядре. Дистрибутив Lubuntu 12: интерфейс, командная строка, основные программы, входящие в состав пакета. Работа с сетью, конфигурированием и администрированием системы.

    методичка [2,0 M], добавлен 28.10.2014

  • Знакомство с этапами разработки трёх приложений для системы семейства Linux с использованием языка программирования С++. Анализ особенностей операционной системы Ubuntu 12.10. Характеристика способов тестирования команд с помощью стандартных средств.

    контрольная работа [732,1 K], добавлен 06.08.2013

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

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

  • Linux - POSIX-совместимая и Unix-подобная операционная система для ПК и рабочих станций, ее возможности, характерные особенности как ОС: виртуальная мультиконсоль, одновременное выполнение нескольких программ, документирование, работа с сетью Internet.

    контрольная работа [84,3 K], добавлен 07.06.2011

  • Требования к операционной системе Linux, встраиваемые приложения. Предсказуемость поведения, свойства ОС реального времени. Структура ядра; системные вызовы; работа с файлами. Стандартные устройства; обзор программирования; компилирование и линковка.

    лекция [112,2 K], добавлен 29.07.2012

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

    реферат [35,8 K], добавлен 05.04.2010

  • Использование дистрибутива GNU/Linux Mandriva, который по праву считается одним из наиболее легких для освоения начинающими пользователями, для взаимодействия с командным интерпретатором GNU/Linux. Информация о формате и основных ключах команды cal.

    лабораторная работа [2,4 M], добавлен 28.12.2012

  • Состав операционных систем. Наиболее частое применение утилит Linux: GNU Screen, IPTraf, ELinks, Iotop, Cmus. Сворачивание в фон программ, которые сами этого не умеют. Различные типы сетевых интерфейсов. Использование swap-раздела, консольный медиаплеер.

    презентация [532,1 K], добавлен 09.10.2013

  • Особенности операционных систем Linux. Аппаратно-программные требования для работы с лабораторным практикумом. Настройка виртуальной машины. Аналоги программ WINDOWS в Mandriva. Разграничение прав доступа. Настройка безопасности и политика паролей.

    курсовая работа [1,8 M], добавлен 06.11.2014

  • Первая версия Windows, постепенный рост системных требований. Важное отличие Windows 98 от Windows 95. История эволюции персональных компьютеров Apple Macintosh. Операционная система Linux, ее характерные черты и особенности, графические интерфейсы.

    реферат [1,5 M], добавлен 15.01.2015

  • Операционная система Linux как ПК-версия операционной системы Unix. Характеристика KOrganizer — простого в использовании менеджера персональной информации. Основные разработки в ALT Linux Master. Особенности разработки в Альт Линукс Школьный Мастер.

    курсовая работа [1,3 M], добавлен 06.06.2011

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

    реферат [1,5 M], добавлен 17.12.2014

  • Этапы загрузки Linux-системы, регистрация. Управление учетными записями пользователей. Принцип именования устройств, назначение и применение специальных файлов. Управление файлами, доступом к файловой системе, заданиями. Базовая файловая структура Linux.

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

  • Компоновка и конфигурирование Linux сервера. Общая информация об ALT Linux Server 5, его подвиды и основные функциональные возможности. Установка дистрибутива ALT Linux 5.0 "Ковчег" и Apache2+php+MySQL. Пример настройки работы сайта на web-сервере.

    курсовая работа [6,0 M], добавлен 24.10.2012

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