Слайд 2
Linux:
Cемейство Unix-подобных операционных систем на базе ядра Linux, включающих тот или
иной набор утилит и программ проекта GNU, и, возможно, другие
компоненты. Как и ядро Linux, системы на его основе как правило создаются и распространяются в соответствии с моделью разработки свободного и открытого программного обеспечения. Linux-системы распространяются в основном бесплатно в виде различных дистрибутивов — в форме, готовой для установки и удобной для сопровождения и обновлений, — и имеющих свой набор системных и прикладных компонентов, как свободных, так возможно и собственнических.
Слайд 3
Слоган компании:
Linux, the future is open
Слайд 5
Характерные особенности Linux:
В силу того, что исходные коды
Linux распространяются свободно и общедоступны, к развитию системы с
самого начала подключилось большое число независимых разработчиков. Благодаря этому на сегодняшний момент Linux — самая современная, устойчивая и быстроразвивающаяся система, почти мгновенно вбирающая в себя самые последние технологические новшества. Она обладает всеми возможностями, которые присущи современным полнофункциональным операционным системам типа UNIX. Приведем краткий список этих возможностей.
Слайд 6
Реальная многозадачность:
Все процессы независимы; ни один из них
не должен мешать выполнению других задач. Для этого ядро
осуществляет режим разделения времени центрального процессора (ОС с разделением времени — time-sharing system), поочередно выделяя каждому процессу интервалы времени для выполнения. Это существенно отличается от режима «вытесняющей многозадачности», реализованной в Windows 95, когда процесс должен сам «уступить» процессор другим процессам (и может сильно задержать их выполнение).
Если говорить о процессах, то рождение новых процессов в системе организовано таким образом, что любой процесс запущенный пользователем, наследует права от процесса-родителя. А процесс-родитель, как раз обеспечивает вход пользователя под определенным логином (анонимного входа, как в Windows нет!). Таким образом, запустить процесс с привелегиями другого пользователя оказывается невозможно! Напомню, что в Windows процеы могут появляться не от родителей, а самостоятельно, что говорит явно не в пользу её безопасности.
Слайд 7
Многопользовательский доступ
Linux — не только многозадачная ОС, она поддерживает
возможность одновременной работы многих пользователей. При этом Linux может
предоставлять все системные ресурсы пользователям, работающим с хостом через различные удаленные терминалы. Поддерживается система викруальных консолей, под каждой из которых можно запустить свой терминал.
Слайд 8
Свопирование оперативной памяти на диск
Свопирование оперативной памяти на
диск позволяет работать при ограниченном объеме физической оперативной памяти;
для этого содержимое некоторых частей (страниц) оперативной памяти записываются в выделенную область на жестком диске, которая трактуется как дополнительная оперативная память. Это несколько снижает скорость работы, но позволяет организовать работу программ, требующих большего объема ОЗУ, чем фактически имеется в компьютере. В принципе, эта технология аналогична идее виртуальной памяти за тем лишь исключением, что своппинг включается только тогда, когда в ОЗУ начинает не хватать свободного места. ДЛя этого на диске, куда установлена Linux создается отдельный swap-раздел (/swap).
Слайд 9
Страничная организация памяти
Системная память Linux организована в виде страниц
объемом 4K. Если оперативная память полностью исчерпана, ОС будет искать
давно не использованные страницы памяти для их перемещения из памяти на жесткий диск. Если какие-либо из этих страниц становятся нужны, Linux восстанавливает их с диска. Некоторые старые Unix-системы и некоторые современные платформы (включая Microsoft Windows) переносят на диск все содержимое ОП, относящееся к неработающему в данный момент приложению, (т. е. ВСЕ страницы памяти, относящиеся к приложению, сохраняются на диске при нехватке памяти) что менее эффективно.
Слайд 10
Загрузка выполняемых модулей «по требованию»
Ядро Linux поддерживает выделение
страниц памяти по требованию, при котором только необходимая часть
кода исполняемой программы находится в оперативной памяти, а не используемые в данный момент части остаются на диске.
Слайд 11
Совместное использование исполняемых программ:
Если необходимо запустить одновременно несколько
копий какого-то приложения (либо один пользователь запускает несколько идентичных
задач, либо разные пользователи запускают одну и ту же задачу), то в память загружается только одна копия исполняемого кода этого приложения, которая используется всеми одновременно исполняющимися идентичными задачами.
Слайд 12
Общие библиотеки
Библиотеки — наборы процедур, используемых программами для обработки
данных. Существует некоторое количество стандартных библиотек, используемых одновременно более
чем одним процессом. В старых системах такие библиотеки включались в каждый исполняемый файл, одновременное выполнение которых приводило к непродуктивному использованию памяти. В новых системах (в частности, в Linux), обеспечивается работа с динамически и статически разделяемыми библиотеками, что позволяет сократить размер отдельных приложений.
Слайд 13
System V IPC
Linux использует технологию IPC (InterProcess Communication) для обмена сообщениями между
процессами, использования семафоров и общей памяти
Слайд 14
Динамическое кеширование диска:
Кеширование диска — это использование части оперативной
памяти для хранения часто используемых данных с диска, что
существенно ускоряет доступ к часто используемым программам и задачам. Пользователи MS-DOS работают со SmartDrive, который резервирует фиксированные области системной памяти для кеширования диска. Linux использует более динамичную систему кеширования: память, зарезервированная под кеш, увеличивается, когда память не используется, и уменьшается, если системе или процессу пользователя требуется больше памяти.
Слайд 15
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 для увеличения совместимости.
Слайд 16
Возможность запуска исполняемых файлов других ОС
Linux не является
первой в истории операционной системой. Для ранее разработанных ОС,
включая DOS, Windows 95, FreeBSD или OS/2, разработана масса различного, в том числе очень полезного и очень неплохого программного обеспечения. Для запуска таких программ под Linux разработаны эмуляторы DOS, Windows 3.1 и Windows 95. Более того, фирмой Vmware разработана система «виртуальных машин», представляющая собой эмулятор компьютера, в котором можно запустить любую операционную систему. Имеются аналогичные разработки и у других фирм. ОС Linux способна также выполнять бинарные файлы других Intel-ориентированных Unix-платформ, соответствующих стандарту iBCS2 (intel Binary Compatibility).
Слайд 17
Поддержка различных форматов файловых систем
Linux поддерживает большое число
форматов файловых систем, включая файловые системы DOS и OS/2,
а также современные журналируемые файловые системы. При этом и собственная файловая система Linux, которая называется Second Extended File System (ext2fs), позволяет эффективно использовать дисковое пространство. Она поддерживает журналирование и распределение прав доступа.
Слайд 18
Сетевые возможности:
Linux можно интегрировать в любую локальную сеть.
Поддерживаются все службы Unix, включая Networked File System (NFS),
удалeнный доступ (telnet, rlogin), работа в TCP/IP сетях, dial-up-доступ по протоколам SLIP и PPP, и т. д... Также поддерживается включение Linux-машины как сервера или клиента для другой сети, в частности, работает общее использование (sharing) файлов и удаленная печать в Macintosh, NetWare и Windows.
Слайд 19
Работа на разных аппаратных платформах
Хотя ОС 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-совместимых компьютеров).
Слайд 20
Отличие Linux от других ОС со свободной лицензией
Существует ряд других операционных систем, которые имеют
лицензию, разрешающую свободное копирование. Из них в России наиболее популярна система FreeBSD.
Работа
вLinux или FreeBSD для опытного специалиста не представляет труда. Но для новичка Linux проще в освоении и удобнее в эксплуатации.
Linux и FreeBSD сильно различаются концепцией развития. Более того, среди операционных систем Linux вообще уникальна по своей философии.
Это система, которую пользователи сделали для пользователей.
Linux не просто свободная система, которую каждый может копировать без ограничений. Это система со свободной открытой разработкой, и любой человек, будь он житель Вашингтона или Екатеринбурга, может стать соавтором Linux, сделав свой вклад, не имеет значения, большой или маленький.