Light-electric.com

IT Журнал
6 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Доклад операционная система linux

Краткая история Linux

Введение

Говоря “Linux”, люди чаще всего подразумевают группу операционных систем, разработанных на базе Linux. Хотя, по сути, Linux — это только ядро операционной системы, и для разработки полноценной операционной системы используются различные другие инструменты и библиотеки GNU проектов и других ресурсов. Кроме того, все больше разработчиков используют Linux для разработки и запуска мобильных приложений; Linux играет ключевую роль в разработке таких устройств, как хромбуки (портативные устройства под управлением операционной системы Chrome, которая в качестве ядра использует гибрид ядра Linux и сервисов, разработанных компанией Google).

Linux стал популярен по следующим причинам:

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

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

История разработки

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

Что такое Unix?

Unix – это собрание кроссплатформенных многопользовательских и многозадачных операционных систем.

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

Разработкой Unix занималась корпорация Bell Laboratories – в 1969 году они показали первую систему Unix. Чем дальше, тем большую популярность обретали системы Unix — в 70-х их начали устанавливать на компьютеры в учебных заведениях.

При создании Unix разработчики поставили перед собой три основные задачи:

  1. Использование минимального количества функций, сохранение простоты.
  2. Общность: одинаковые методы и механизмы используются в разных случаях.
  3. Комбинирование программ для решения задач, а не разработка новых программ с нуля.

Что касается отличительных особенностей Unix, то это:

  1. Практически постоянное использование командной строки.
  2. Использование конвейнеров.
  3. Настройка системы через использование простых (зачастую текстовых) файлов.

Unix имеет свою собственную философию. Программист Дуглас Макилрой, который разработал конвейнер в Linux, определил следующие правила:

Пишите программы, которые делают что-то одно и делают это хорошо.

Пишите программы, которые бы работали вместе.

Пишите программы, которые бы поддерживали текстовые потоки, поскольку это универсальный интерфейс.

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

В 1983 году было объявлено о создании GNU (GNU’s Not UNIX), Unix-подобной операционной системы. Произошло это под влиянием идеи основателя проекта Ричарда Столманна о необходимости создания свободно распространяемой операционной системы и вообще программного обеспечения с открытым исходным кодом.

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

Именно эта мысль вдохновила Линуса Торвальдса, создателя Linux, начать в 1991 году работу над своей операционной системой. Linux, как и GNU, это Unix-подобная система, то есть система, появившаяся под влиянием Unix.

В дальнейшем именно система GNU/Linux станет той системой, которую сейчас называют просто Linux.

Что такое Multics?

Multics — или Multiplexed Information and Computing Service («Мультиплексная информационная и вычислительная служба») — это одна из самых первых операционных систем, в которой была реализована плоская модель хранения данных и четко разделена концепция файлов (сегментов). Создание Multics началось в 1964 году. Над системой работали разработчики компании Bell Laboratories — через несколько лет часть разработчиков начнет работу над созданием Unix.

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

Однако главные вычислительные задачи не были достигнуты при выпуске первой версии системы, и компания Bell Laboratories перевела свой интерес на другой проект, в результате которого на свет появился Unix.

История Linux

История Linux начинается в 1991 году, когда финский программист Линус Торвальдс стал разрабатывать ядро операционной системы для своего компьютера. Свои наработки он выложил на сервере, и это стало ключевым событием в истории Linux. Сначала десятки, потом сотни и тысячи разработчиков поддержали его проект — общими усилиями на свет появилась полноценная операционная система.

Как уже было сказано, на Linux значительно повлияла система Unix, это заметно даже по названию. Впрочем, изначально проект назывался Freax — от слов “free” (бесплатный) и “freak” (странный), но в дальнейшем название было изменено на гибрид имени создателя (Линус) и Unix.

Эмблемой Linux стал Такс (Tux) — пингвин, нарисованный в 1996 году программистом и дизайнером Ларри Юингом. Впрочем, идею использовать именно пингвина придумал сам Линус Торвальдс. Теперь Такс является символом не только Linux, но и свободного программного обеспечения в целом.

Первая официальная версия Linux 1.0 вышла в 1994 году; вторая версия пошла в 1996 году. Товарный знак Linux был зарегистрирован на год раньше, в 1995.

С самого начала и по сей день Linux распространяется как свободное программное обеспечение с лицензией GPL. Это значит, что исходный код операционной системы может увидеть любой пользователь — и не только увидеть, но и доработать его. Единственное условие — измененный, модифицированный код должен быть так же доступен всем и распространяться по лицензии GPL. Это важно, так как дает возможность разработчикам использовать код и в то же время не бояться проблем из-за авторских прав.

Своему успеху Linux во многом обязан GNU: на момент выхода Linux существовало уже много свободного распространяемых утилит этого проекта, которые можно было использовать с разработанным ядром.

По факту Linux до сих представляет собой ядро Unix-подобной операционной системы, которое выполняет различные низкоуровневые задачи. В то же время проект GNU нуждался в ядре — разработка Линуса Торвальдса была очень своевременной.

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

Популярные дистрибутивы Linux

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

То есть, как уже было сказано в начале статьи, дистрибутив Linux – это операционная система, которая состоит из ядра Linux и утилит, которые разрабатываются в рамках GNU.

Количество существующих дистрибутивов Linux превышает 600 разновидностей, более 300 из которых постоянно дорабатываются и обновляются.

Ubuntu

Ubuntu — один из самых распространенных дистрибутивов, легко устанавливается и интуитивно понятен в работе. Отлично подходит для персональных компьютеров, ноутбуков и серверов. Разрабатывается и спонсируется компанией Canonical Ltd, но имеет активную поддержку и со стороны свободного сообщества. Самая популярная операционная система для веб-серверов.

Debian

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

Linux Mint

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

Manjaro

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

Arch

Arch — мощный дистрибутив, базирующийся на принципах простоты, современности, прагматизма, гибкости и идеи, что в центре внимания должен быть пользователь. Однако принцип простоты распространяется не на использование системы, а на ее внутреннюю организацию (принципы KISS и Unix-way). Поэтому Arch рассчитан на опытных пользователей, которые самостоятельно настроят и установят необходимые им утилиты.

Обзор Линукс (Linux) — просто о сложном

Это вступительная статья про операционную систему Линукс (Linux). В ней мы пробежимся по основным моментам и особенностям ОС Линукс. Весь материал ориентирован на новичков и написан доступным языком.

1. Что такое Линукс простыми словами

Главная «фишка» операционной системы Линукс в том, что она бесплатна в соответствии с GNU (свободного и открытого программного обеспечения. Например, за привычный всем Windows придется заплатить где-то $100-$200.

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

Существует несколько графических интерфейсов или GUI (мы рассмотрим их далее). В большинстве случаев он очень напоминает X Window System, поэтому, кто умеет пользоваться Windows легко освоит и Linux.

Кто является владельцем

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

Собственно говоря усилиями десятков тысяч программистов и был создан Линукс. Изначально первыми пользователями были опытные пользователи ПК. Сейчас все больше становится и обычных пользователей Линукса.

Читать еще:  Программа для оптимизации игр на андроид

Отличительно и то, что Линукс работает на всех архитектурах: DEC Alpha, x86, x86-64, ARM и PowerPC.

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

Зачастую в различных источниках можно увидеть название «GNU/Linux» (по сути это то же самое, что и Linux). Однако в среде профессионалов даже разгораются жаркие дискуссии по этому поводу.

Тех, кто пользуюется ОС Линукс зачастую называют «линуксойдам».

Говоря про Linux нельзя не упомянуть про проект GNU — это концепция свободного бесплатного программного обеспечения. Основатель Ричард Столлман.

2. История появления Linux

Первым разработчиком и создателем Linux считается «Линус Торвальдс». Собственно в честь его имени и была названа ОС. Торговая марка «Linux» принадлежит его создателю.

В далеком 1981 году он стал работать над собственной операционной системой семейства Unix. В 1984 году на свет появилась первая ее версия доступная для скачивания. В то время ей пользовались буквально пару человек.

Однако широкое распространение система получила лишь 10 лет спустя. После этого сообщество программистов подхватили основную идею GNU и стали вкладывать свои усилия в развитие проекта.

Логотипом и талисманом Linux является пингвин «Tux». От «обычных» пингвинов отличается жёлтым цветом клюва и лап. Придуман и запатентован в 1996 году Ларри Юингом.

В 20 веке Linux стал еще более популярным. Это уже давно не любительский проект, а полноценная операционная система, которая насчитывает миллионы строк кода.

3. Особенности Linux

Перечислим основные особенности ОС Linux.

1 Большинство пользователей среду Линукса являются программисты и администраторы. Это довольно опытные и «прошаренные» пользователи. Поэтому их не пугает то, что очень много действий приходится делать через терминал (консольная строка). Для любителей Windows это покажется настоящим «маразмом», но со временем к терминалу быстро привыкаешь:

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

2 Большинство серверов (хостинги, хранилища и прочее) используют в качестве основной ОС Линукс. Это связано с тем, что она бесплатна, проще настраивается и более стабильна. Однако среди обычных пользователей бесспорное лидерство занимает Windows. Лишь 5% населения пользуются Линуксом в качестве домашней операционной системы.

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

4 В Linux нету жестких дисков, как на Windows. Здесь все хранится в едином каталоге, который начинается с «/» (корневой каталог, root directory). Файлы пользователей лежат в каталогах «/home/name_users/».

5 Программные оболочки bash или tcsh. С помощью них Linux выполняет команды пользователей. Отдаваемая команда относится к текущему каталогу (current directory). Домашний каталог можно обозначать символом «

» (тильда). Это аналог «/home/name_users/»

6 Файловые системы в Linux отличны от Windows:

  • ext4 — журналируемая файловая система (стандарт для Linux)
  • btrfs — новая файловая система, основанная на структурах B-деревьев
  • xfs — данную файловую систему отличает достаточно высокая производительность в части записи и чтения данных.

Стоит отметить, что Линукс поддерживает очень много файловых систем (в том числе Windows-ие NTFS, FAT32). Напомню, что Windows не поддерживает ext4. Про файловые системы Linux будет рассказано более подробно в отдельной статье.

7 Существует два вида дистрибутивов Linux, которые делятся по способу организации и управления программным обеспечением (пакетами)

  1. DEB — используются в дистрибутиве Debian и во всех основанных на нем дистрибутивах
  2. RPM — менеджер пакетов, использующийся в дистрибутиве Red Hat, а также во многих других популярных дистрибутивах (Fedora)

8 Процессы разделены по ресурсам. Чтобы добавить новое устройств нужен драйвер. Его можно написать самостоятельно и запустить в ядре. Драйверы устройств либо интегрируются непосредственно в ядро, либо добавляются в виде модулей, загружаемых во время работы системы.

9 В Linux все считается файлами: жесткие диски, разделы, папки, приводы оптических дисков, съемные носители информации.

4. Дистрибутивы Linux — что это и какие они бывают

Говоря простыми словами:

Существуют множество видов дистрибутивов Linux. Самые распространённые в мире дистрибутивами являются:

  • Linux Mint . Самый простой для пользователя дистрибутив. Очень напоминает Windwos 7. Основан на Ubuntu и Debian
  • Ubuntu . Долгое время считался самым популярным дистрибутивом. Стабильная и интуитивно понятная версия для ежедневного использования Основан на Debian
  • Debian . Лег в основу множества других популярных Линуксов.
  • Mageia . Предок бывшей и популярной ОС Mandriva.
  • Fedora . Универсальный, быстро развивающейся и современный Linux. Каждый год появляются новые версии.
  • OpenSUSE . стабильный и мощный дистрибутив
  • ArchLinux . Современный и быстро обновляющейся дистрибутив.
  • CentOS
  • PCLinuxOS
  • Slackware . Консервативный подход разработки и использования

Интересными дистрибутивами также являются и те, которые можно самостоятельно собрать. К таким относятся LFS, Gentoo, CRUX.

Линукс также практикует такой вид дистрибутивов, которые не требуют установки на жесткий диск. Они работают в режиме «LiveCD». Информация загружается в оперативную память и уже работает с нее. Примеры таких систем: Knoppix, Fedora.

Существуют и чисто российские версии:

  • Rosa
  • ALT Linux
  • ASPLinux
  • НауЛинукс
  • Calculate Linux
  • Runtu
  • Rosinka
  • Astra Linux

5. Интерфейсы Linux

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

  • GNOME (GNU Network Object Model Environment) и Unity . Концепцию значков лаунчеров и отображения в стиле панели мониторинга для выбора
  • KDE (K Desktop Environment). Традиционная среда рабочего стола, но она имеет огромное количество функций и основной набор приложений
  • Cinnamon . Основан на GNOME. Традиционная среда рабочего стола, которая похожа на Windows 7.
  • LXDE (Lightweight X11 Desktop Environment). Легкая и приятная среда.
  • MATE является продолжением классического интерфейса GNOME
  • XFCE быстрая и легкая

6. Репозиторий Linux

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

Для Линукса репозиторий это аналог Play Market для Android.

Чтобы скачать пакет необходимо в терминале написать:

Доклад операционная система linux

Linux произносится как ‘Линукс, с ударением на первом слоге.

Linux — это современная POSIX-совместимая и Unix-подобная операционная система для персональных компьютеров и рабочих станций.

Это многопользовательская сетевая операционная система с сетевой оконной графической системой X Window System. ОС Linux поддерживает стандарты открытых систем и протоколы сети Internet и совместима с системами Unix, DOS, MS Windows. Все компоненты системы, включая исходные тексты, распространяются с лицензией на свободное копирование и установку для неограниченного числа пользователей.

Разработка ОС Linux выполнена Линусом Торвалдсом (Linus Torvalds) из университета Хельсинки и не поддающейся подсчету обширной командой из тысяч пользователей сети Internet, сотрудников исследовательских центpов, фондов, унивеpситетов и т.д.

Возможности, которые предоставляет ОС Linux .

  • дает возможность бесплатно и легально иметь современную ОС для использования как на работе, так и дома;
  • обладает высоким быстродействием;
  • работает надежно, устойчиво, совершенно без зависаний;
  • не подвержена вирусам;
  • позволяет использовать полностью возможности современных ПК, снимая ограничения, присущие DOS и MS Windows по использованию памяти машины и ресурсов процессора(ов);
  • эффективно управляет многозадачностью и приоритетами, фоновые задачи (длительный расчет, передача электронной почты по модему, форматирование дискеты и т.д. и т.п.) не мешают интерактивной работе;
  • позволяет легко интегрировать компьютер в локальные и глобальные сети, в т.ч. в Internet; работает с сетями на базе Novell и MS Windows;
  • позволяет выполнять представленные в формате загрузки прикладные программы других ОС — различных версий Unix, DOS и MS Windows;
  • обеспечивает использование огромного числа разнообразных программных пакетов, накопленных в мире Unix и свободно распространяемых вместе с исходными текстами;
  • предоставляет богатый набор инструментальных средств для разработки прикладных программ любой степени сложности, включая системы класса клиент-сервер, объектно-ориентированные, с многооконным текстовым и/или графическим интерфейсом, пригодных для работы как в Linux, так и в других ОС;
  • дает пользователю и особенно разработчику замечательную учебную базу в виде богатой документации и исходных текстов всех компонент, включая ядро самой ОС;
  • дает всем желающим попробовать свои силы в разработке, организовать общение и совместную работу через Internet с любыми из разработчиков ОС Linux и сделать свой вклад, став соавтором системы.

Кому и зачем может понадобиться ОС Linux .

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

Linux это полноценная 32-х разрядная (64-х разрядная на платформе DEC AXP) операционная система, которая использует компьютер на полную мощность. Linux превращает персональный компьютер IBM PC в настоящую рабочую станцию. По цене персоналки, которая значительно ниже стоимости рабочей станции.

Выигрыш в цене очень большой, так как помимо экономии на оборудовании, программное обеспечение в Linux поставляется со свободной лицензией, разрешающей бесплатное неограниченное копирование системы. Ядро, редакторы, трансляторы, СУБД, сеть, графические интерфейсы, игры и масса другого программного обеспечения объемом в тысячи мегабайт — бесплатно и на законной основе.

Выигрыш только на программном обеспечении может составить от тысяч до десятков тысяч долларов. Для многих пользователей в России свободная лицензия — это единственная возможность легально снабдить себя полноценным набором программного обеспечения.

Для пиратского рынка не платить за программы — обычное дело. Однако в случае с Linux мало того, что за это никто преследовать не будет, еще и полную документацию дадут! Более того, с исходными текстами всех программ! Пиратам такое и не снилось.

Большой интерес Linux представляет для потребителей и разработчиков прикладных систем. Представьте себе фирму, состоящую из нескольких филиалов, территориально разнесенных по разным районам города и даже по разным городам и странам. На головном предприятии работает сервер базы данных, клиенты — рабочие места в филиалах — через сеть взаимодействуют с сервером. Такая система быстро, дешево и удобно делается в Linux. Вспомните об устойчивости Linux. Вот где она сильно пригодится!

Читать еще:  Программа для оптимизации памяти

Допустим, вы разработчик коммерческих программ для коммерческих ОС, например, SCO Unix, Solaris или DOS. Вы используете многоплатформенный компилятор, мощную многооконную систему отладки, эмуляторы и системы совместимости. Все это есть в Linux . Можете поставить его на свою домашнюю персоналку и, если у вас есть модем, ходить на работу только за зарплатой. Кстати, и здесь устойчивость не помешает. Представьте, что вы открыли пару десятков окон, много что в них наработали, а система зависла. В Linux такого не бывает.

А если вы научный работник и пишете статьи в международные журналы? К вашим услугам в Linux издательская система TeX, в формате которой принимаются статьи в эти журналы. Статью можете отправить по электронной почте прямо со своей Linux-машины. Пока вы писали статью, машина делала длительный сложный расчет и вам это совершенно не мешало. И массивы в вашей программе вовсе не ограничены пределом в 640 KB. Хотите массив в 50 мегабайт? Пожалуйста, даже если у вас только 8 MB RAM, так как в Linux работает виртуальная память. Как вы думаете, приятно ли столкнуться с зависанием ОС, когда до окончания трехчасового расчета осталось три минуты? В Linux это вам не грозит.

Может, вам нужно синтезировать рекламную картинку профессионального качества? Пока система рендеринга будет это делать, можете поиграть в DOOM. Или отлаживать описание другой картинки. Рендеринг сложной картинки идет часами. Устойчивость ОС и тут не помешает.

Здесь не зря такой упор сделан на устойчивость ОС. Пользователь, практика которого ограничена системами DOS и особенно MS Windows, привык, что зависание — неотъемлемое свойство ОС. Дело обстоит как раз с точностью до наоборот.

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

Xарактерные особенности Linux как ОС.

  • многозадачность: много программ выполняются одновременно;
  • многопользовательский режим: много пользователей одновременно работают на одной и той же машине;
  • защищенный режим процессора (386 protected mode);
  • защита памяти процесса; сбой программы не может вызвать зависания системы;
  • экономная загрузка: Linux считывает с диска только те части программы, которые действительно используются для выполнения;
  • разделение страниц по записи между экземплярами выполняемой программы. Это значит, что процессы-экземпляры программы могут использовать при выполнении одну и ту же память. Когда такой процесс пытается произвести запись в память, то 4-x килобайтная страница, в которую идет запись, копируется на свободное место. Это свойство увеличивает быстродействие и экономит память;
  • виртуальная память со страничной организацией (т.е. на диск из памяти вытесняется не весь неактивный процесс, а только требуемая страница); виртуальная память в самостоятельных разделах диска и/или файлах файловой системы; объем виртуальной памяти до 2 Гбайт; изменение размера виртуальной памяти во время выполнения программ;
  • общая память программ и дискового кэша: вся свободная память используется для буферизации обмена с диском;
  • динамические загружаемые разделяемые библиотеки;
  • дамп программы для пост-мортем анализа: позволяет анализировать отладчиком не только выполняющуюся, но и завершившуюся аварийно программу;
  • сертификация по стандарту POSIX.1, совместимость со стандартами System V и BSD на уровне исходных текстов;
  • через iBCS2-согласованный эмулятор совместимость с SCO, SVR3, SVR4 по загружаемым программам,
  • наличие исходного текста всех программ, включая тексты ядра, драйверов, средств разработки и приложений. Эти тексты свободно распространяются. В настоящее время некоторыми фирмами для Linux поставляется ряд коммерческих программ без исходных текстов, но все, что было свободным так и остается свободным;
  • управление заданиями в стандарте POSIX;
  • эмуляция сопроцессора в ядре, поэтому приложение может не заботиться об эмуляции сопроцессора. Конечно, если сопроцессор в наличии, то он и используется;
  • поддержка национальных алфавитов и соглашений, в т.ч. для русского языка; возможность добавлять новые;
  • множественные виртуальные консоли: на одном дисплее несколько одновременных независимых сеансов работы, переключаемых с клавиатуры;
  • поддержка ряда распространенных файловых систем (MINIX, Xenix, файловые системы System V); наличие собственной передовой файловой системы объемом до 4 Терабайт и с именами файлов до 255 знаков;
  • прозрачный доступ к разделам DOS (или OS/2 FAT): раздел DOS выглядит как часть файловой системы Linux; поддержка VFAT (WNT, Windows 95);
  • специальная файловая система UMSDOS, которая позволяет устанавливать Linux в файловую систему DOS;
  • доступ (только чтение) к файловой системе HPFS-2 OS/2 2.1;
  • поддержка всех стандартных форматов CD ROM;
  • поддержка сети TCP/IP, включая ftp, telnet, NFS и т.д.

Основные особенности Linux

На сегодняшний день наиболее известными операционными системами для компьютеров являются семейства операционных систем Microsoft Windows и UNIX. Первые ведут свою родословную от операционной системы MS-DOS, которой оснащались первые персональные компьютеры фирмы IBM. Операционная система UNIX была разработана группой сотрудников Bell Labs под руководством Денниса Ричи, Кена Томпсона и Брайана Кернигана (Dennis Ritchie, Ken Thompson, Brian Kernighan) в 1969 году. Но в наши дни, когда говорят об операционной системе UNIX, чаще всего имеют в виду не конкретную ОС, а скорее целое семейство UNIX-подобных операционных систем. Само же слово UNIX (заглавными буквами) стало зарегистрированной торговой маркой корпорации AT&T.

В конце 70-х годов (теперь уже прошлого столетия) сотрудники Калифорнийского университете в Беркли внесли ряд усовершенствований в исходные коды UNIX, включая работу с протоколами семейства TCP/IP. Их разработка стала известна под именем BSD («Berkeley Systems Distribution»). Она распространялась под лицензией, которая позволяла дорабатывать и усовершенствовать продукт, и передавать результат третьим лицам (с исходными кодами или без них) при условии, что будет указано, какая часть кода разработана в Беркли.

Операционные системы типа UNIX, в том числе и BSD, изначально разрабатывались для работы на больших многопользовательских компьютерах — мейнфреймах. Но персональные компьютеры постепенно наращивали мощь своего аппаратного обеспечения, и в наши дни они уже превосходят по возможностям те мейнфреймы, для которых в 70-х годах разрабатывалась ОС UNIX. И вот, в начале 90-х годов студент хельсинкского университета Линус Торвальдс (Linus Torvalds) приступил к разработке UNIX-подобной ОС для IBM-совместимых персональных компьютеров.

25 августа 1991 года Линус написал, что он работает над (свободной) операционной системой для 386-х (486-х) компьютеров, и просит всех заинтересованных лиц сообщить, какие компоненты системы пользователи хотят видеть в первую очередь. Но, как видно из текста послания, оболочка bash и компилятор gcc у него уже работали. Работали они под управлением операционной системы M inix, которая была разработана профессором Э.Таненбаумом (Andy Tanenbaum) как учебное пособие для студентов-программистов. Minix работала на компьютерах с 286-ым процессором и послужила для Торвальдса прообразом новой ОС.

Файлы первого варианта Linux (версия 0.01) были опубликованы в Интернете 17 сентября 1991 года.В силу того, что исходные коды Linux распространяются свободно и общедоступны, к развитию системы с самого начала подключилось большое число независимых разработчиков. Благодаря этому на сегодняшний момент Linux — самая современная, устойчивая и быстроразвивающаяся система, почти мгновенно вбирающая в себя самые последние технологические новшества. Она обладает всеми возможностями, которые присущи современным полнофункциональным операционным системам типа UNIX. Приведем краткий список этих возможностей.

Затем, 5 октября 1991 г. была выпущена версия 0.02, которая уже работала. Л. Торвальдс не стал патентовать или иным образом ограничивать распространение новой ОС. С самого начала Linux распространяется на условиях, определяемых лицензией General Public License (GPL), принятой для программного обеспечения, разрабатываемого в рамках движения Open Source и проекта GNU. Надо сказать, что разработка Линуса Торвальдса представляла собой только ядро операционной системы. Это ядро «упало на подготовленную почву», в том смысле, что в рамках проекта GNU уже было разработано большое количество утилит разного рода. Но для превращения GNU в полноценную ОС не хватало ядра. Разработка ядра велась (оно называлось Hurd), но по каким-то причинам задерживалась. Поэтому появление разработки Л. Торвальдса было очень своевременным. Оно ознаменовало рождение операционной системы, распространяемой с открытыми исходными кодами.

Основные характеристики ОС Linux

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

Реальная многозадачность

Все процессы независимы; ни один из них не должен мешать выполнению других задач. Для этого ядро осуществляет режим разделения времени центрального процессора (ОС с разделением времени — time-sharing system), поочередно выделяя каждому процессу интервалы времени для выполнения. Это существенно отличается от режима «вытесняющей многозадачности», реализованной в Windows 95, когда процесс должен сам «уступить» процессор другим процессам (и может сильно задержать их выполнение).

Если говорить о процессах, то рождение новых процессов в системе организовано таким образом, что любой процесс запущенный пользователем, наследует права от процесса-родителя. А процесс-родитель, как раз обеспечивает вход пользователя под определенным логином (анонимного входа, как в Windows нет!). Таким образом, запустить процесс с привелегиями другого пользователя оказывается невозможно! Напомню, что в Windows процеы могут появляться не от родителей, а самостоятельно, что говорит явно не в пользу её безопасности.

Многопользовательский доступ

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

Свопирование оперативной памяти на диск

Свопирование оперативной памяти на диск позволяет работать при ограниченном объеме физической оперативной памяти; для этого содержимое некоторых частей (страниц) оперативной памяти записываются в выделенную область на жестком диске, которая трактуется как дополнительная оперативная память. Это несколько снижает скорость работы, но позволяет организовать работу программ, требующих большего объема ОЗУ, чем фактически имеется в компьютере. В принципе, эта технология аналогична идее виртуальной памяти за тем лишь исключением, что своппинг включается только тогда, когда в ОЗУ начинает не хватать свободного места. ДЛя этого на диске, куда установлена Linux создается отдельный swap-раздел (/swap).

Читать еще:  Amd программа для оптимизации игр

Страничная организация памяти

Системная память Linux организована в виде страниц объемом 4K. Если оперативная память полностью исчерпана , ОС будет искать давно не использованные страницы памяти для их перемещения из памяти на жесткий диск. Если какие-либо из этих страниц становятся нужны, Linux восстанавливает их с диска. Некоторые старые Unix-системы и некоторые современные платформы (включая Microsoft Windows) переносят на диск все содержимое ОП, относящееся к неработающему в данный момент приложению, (т. е. ВСЕ страницы памяти, относящиеся к приложению, сохраняются на диске при нехватке памяти) что менее эффективно.

Загрузка выполняемых модулей «по требованию»

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

Совместное использование исполняемых программ

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

Общие библиотеки

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

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

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

100%-ное соответствие стандарту POSIX 1003.1. Частичная поддержка возможностей System V и BSD

POSIX 1003.1 (Portable Operating System Interface — интерфейс мобильной операционной системы) задаeт стандартный интерфейс Unix-систем, который описывается набором процедур языка Си. Сейчас он поддерживается всеми новыми ОС. Microsoft Windows NT также поддерживает POSIX 1003.1. Linux 100%-но соответствует POSIX. Дополнительно поддерживаются некоторые возможности System V и BSD для увеличения совместимости.

System V IPC

Linux использует технологию IPC (InterProcess Communication) для обмена сообщениями между процессами, использования семафоров и общей памяти.

Возможность запуска исполняемых файлов других ОС

Linux не является первой в истории операционной системой. Для ранее разработанных ОС, включая DOS, Windows 95, FreeBSD или OS/2, разработана масса различного, в том числе очень полезного и очень неплохого программного обеспечения. Для запуска таких программ под Linux разработаны эмуляторы DOS, Windows 3.1 и Windows 95. Более того, фирмой Vmware разработана система «виртуальных машин», представляющая собой эмулятор компьютера, в котором можно запустить любую операционную систему. Имеются аналогичные разработки и у других фирм. ОС Linux способна также выполнять бинарные файлы других I ntel-ориентированных Unix-платформ, соответствующих стандарту iBCS2 (intel Binary Compatibility).

Поддержка различных форматов файловых систем

Linux поддерживает большое число форматов файловых систем, включая файловые системы DOS и OS/2, а также современные журналируемые файловые системы. При этом и собственная файловая система Linux, которая называется Second Extended File System (ext2fs), позволяет эффективно использовать дисковое пространство. Она поддерживает журналирование и распределение прав доступа.

Сетевые возможности

Linux можно интегрировать в любую локальную сеть. Поддерживаются все службы Unix, включая Networked File System (NFS), удалeнный доступ (telnet, rlogin), работа в TCP/IP сетях, dial-up-доступ по протоколам SLIP и PPP, и т. д. Также поддерживается включение Linux-машины как сервера или клиента для другой сети, в частности, работает общее использование (sharing) файлов и удаленная печать в Macintosh, NetWare и Windows.

Работа на разных аппаратных платформах

Хотя ОС Linux первоначально была разработана для ПК на базе Intel 386/486, сейчас она может работать на всех версиях Intel-овских микропроцессоров, начиная с 386 и кончая многопроцессорными системами на Pentium. Так же успешно Linux работает на различных клонах Intel от других производителей; в Интернете встречаются сообщения о том, что на процессорах Athlon и Duron от AMD Linux работает даже лучше, чем на Intel. Кроме того, разработаны версии для других типов процессоров — ARM, DEC Alpha, SUN Sparc, M68000 (Atari и Amiga), MIPS, PowerPC и других (отметим, что в настоящей книге рассматривается только вариант для IBM-совместимых компьютеров).

Краткое описание Linux и его компонентов

Linux является полноценной операционной системой, которая представляет собой свободный клон операционной системы UNIX. В этой статье мы попытаемся сделать техническое описание Linux.

При загрузке компьютера операционная система Linux перехватывает управление компьютером и управляет следующими его компонентами.

Базовое описание компонентов Linux

  • Процессором — так как ядро Linux обеспечивает одновременную работу нескольких процессов от нескольких пользователей (с поддержкой нескольких процессоров), операционная система нуждается в средствах управления многопоточностью. Планировщик Linux назначает процессам приоритеты и определяет, какой процесс выполняется на конкретном процессоре (если в системе установлено несколько процессоров). Планировщик можно настроить для работы в системах различного типа. При правильной настройке более важные процессы получают более быструю реакцию процессора. Например, планировщик Linux на настольном компьютере предоставляет больший приоритет задаче перемещения окна и меньший — задаче фонового копирования файлов.
  • Памятью — ядро Linux старается держать работающие в данный момент процессы в оперативной памяти. Простаивающие процессы перемещаются в файл подкачки, представляющий собой выделенную область на жестком диске, которая используется для хранения не перемещающихся в оперативную память данных и процессов. При переполнении оперативной памяти процессы выносятся в файл подкачки. При переполнении файла подкачки (но этого допускать нельзя) новые процессы не запускаются.
  • Устройствами — ядро Linux поддерживает тысячи аппаратных устройств. При этом за счет включения в работающее ядро только актуальных драйверов размер ядра удается сохранять на приемлемом уровне. Использование загружаемых модулей позволяет добавить в ядро поддержку дополнительных устройств. Модули можно загружать и выгружать по запросу в результате подключения или отключения устройства. (Ядро, которое будет рассматриваться далее, является сердцем операционной системы Linux.)
  • Файловыми системами — файловые системы предоставляют структуры, в которых файлы хранятся на компакт-дисках, жестких дисках, гибких дисках, DVD и на других носителях. Ядро Linux поддерживает множество типов файловых систем (например, файловые системы Linux: ext3 и reiserfs, а также файловые системы VFAT и NTFS из операционной системы Windows).
  • Безопасностью — как и UNIX, операционная система Linux изначально создавалась для обеспечения, одновременного многопользовательского доступа. Для защиты пользовательских ресурсов каждому файлу назначаются наборы разрешений на чтение, запись и выполнение, которые определяют права доступа. В стандартной системе Linux пользователь root имеет доступ ко всей системе без ограничений, специальные регистрационные записи могут управлять определенными службами (например, службами Web-сервера Apache), а пользователям могут присваиваться разрешения по отдельности или в составе групп. Последние нововведения, например Security-Enhanced Linux, поддерживают более тонкую настройку и защиту безопасных сред обработки информации.

Показанное выше описание является описанием базовых компонентов ядра (kernel) Linux. Название от ядра Linux (которое было создано и до сих пор разрабатывается под руководством Линуса Торвальдса) распространилось на всю операционную систему.

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

Следующая часть в статье о описание Linux повествует, что многие другие компоненты создавались другими проектами, поэтому правильней произносить Linux нужно так: GNU Linux

Проект GNU предоставил множество компонентов, которые сейчас являются частью операционной системы Linux. (GNU, Apache, KDE, GNOME и другие ключевые проекты с открытым исходным кодом в составе операционных систем Linux рассматриваются немного ниже.) На основе других проектов были созданы следующие подсистемы.

  • Графический интерфейс пользователя состоит из графической инфраструктуры (обычно это X WindowSystem), оконных менеджеров, панелей, пиктограмм и меню. Графический интерфейс пользователя позволяет применять комбинацию мыши и клавиатуры вместо простого ввода команд с клавиатуры (как это делалось в добрые старые времена). В ближайшее время графический сервер X смениться на Wayland на всех дистрибутивах Linux. Ubuntu разрабатывает собственный граф. сервер Mir.
  • Инструменты администрирования включают в себя сотни (а возможно и тысячи) команд и графических утилит, которые позволяют добавлять пользователей, управлять дисками, следить за состоянием сети, устанавливать программное обеспечение, а так же гарантировать безопасность и управлять ресурсами компьютера.
  • Приложения — хотя ни один из дистрибутивов Linux не содержит всех существующих приложений, но в каждом присутствуют тысячи игр, офисных приложений, Web-обозревателей, медиа проигрывателей, чат-клиентов и множество других приложений, доступных исключительно для платформы Linux.
  • Инструменты разработчика включают в себя исключительно инструменты для разработки и создания библиотек и приложений для реализации интерфейсов специализации.
  • Серверные возможности позволяют компьютеру под управлением Linux предоставлять службы для клиентов в сети. Иными словами, кроме установки Web-обозревателей для просмотра Web-страниц, компьютер можно превратить в сервер, который предоставляет Web-страницы другим компьютерам. При этом среди популярных серверных функций можно назвать Web-серверы, серверы электронной почты, баз данных, печати, файловые серверы, серверы DNS и DHCP.

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

Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector