Автор работы: Пользователь скрыл имя, 05 Февраля 2013 в 17:15, реферат
Стандартизация. Несмотря на многообразие версий UNIX, основой всего семейства являются принципиально одинаковая архитектура и ряд стандартных интерфейсов (в UNIX стандартизовано почти всё — от расположения системных каталогов и файлов до интерфейса системных вызовов и списка драйверов базовых устройств). Опытный администратор без особого труда сможет обслуживать другую версию, тогда как для пользователей переход на другую систему и вовсе может оказаться незаметным. Для системных же программистов такого рода стандарты позволяют полностью сосредоточиться на программировании, не тратя время на изучение архитектуры и особенностей конкретной реализации системы.
1. Особенности архитектуры UNIX
2. Архитектура операционной системы UNIX
3. Ядро UNIX
4. Файловая система UNIX
5. Виртуальная файловая система
6. Дерево каталогов
7. Устройства и драйверы
Резюме
Литература
Содержание
1. Особенности архитектуры UNIX
2. Архитектура операционной системы UNIX
3. Ядро UNIX
4. Файловая система UNIX
5. Виртуальная файловая система
6. Дерево каталогов
7. Устройства и драйверы
Резюме
Литература
1. Особенности архитектуры UNIX
Архитектура UNIX содержит неотъемлемые
характеристические понятия, такие как стандартизация и многозада
Стандартизация. Несмотря на многообразие версий UNIX, основой всего семейства являются принципиально одинаковая архитектура и ряд стандартных интерфейсов (в UNIX стандартизовано почти всё — от расположения системных каталогов и файлов до интерфейса системных вызовов и списка драйверов базовых устройств). Опытный администратор без особого труда сможет обслуживать другую версию, тогда как для пользователей переход на другую систему и вовсе может оказаться незаметным. Для системных же программистов такого рода стандарты позволяют полностью сосредоточиться на программировании, не тратя время на изучение архитектуры и особенностей конкретной реализации системы.
Многозадачность. В системе UNIX может одновременно выполняться множество процессов (задач), причем их число логически не ограничивается и может меняться в ходе работы системы. Благодаря специальному механизму управления памятью, каждый процесс существует в собственном изолированном адресном пространстве, что гарантирует безопасность и независимость от других процессов. Различные системные операции позволяют процессам порождать новые процессы, завершают процессы, синхронизируют выполнение этапов процесса и управляют реакцией на наступление различных событий.
Существует два основных
объекта операционной системы UNIX, с
которыми приходится работать пользователю — файлы и процесс
Все данные пользователя хранятся в файлах; доступ к периферийным устройствам осуществляется посредством чтения и записи специальных файлов; во время выполнения программы операционная система считывает исполняемый код из файла в память и передает ему управление. Принципы хранения и доступа к файлам объединяются понятием файловой системы.
С другой стороны, вся функциональность
информационной системы определяется
выполнением соответствующих пр
2. Архитектура операционной системы UNIX
Самый общий взгляд на архитектуру
UNIX позволяет увидеть двухуровневую модель
системы, состоящую из пользовательской и системно
Рисунок 1.2. Архитектура операционной системы UNIX
Важную часть системных программ составляют демоны. Демон — это процесс, выполняющий определенную функцию в системе, который запускается при старте системы и не связан ни с одним пользовательским терминалом. Демоны предоставляют пользователям определенные сервисы, примерами которых могут служить системный журнал, веб-сервер и т. п. Аналогом демонов в операционной системе Windows NT и более поздних версиях являются системные службы.
3. Ядро UNIX
Операционная система UNIX обладает классическим монолитным ядром, в котором можно выделить следующие основные части:
Рисунок 1.3. Ядро операционной системы UNIX
Благодаря тому, что в UNIX
аппаратно-независимая часть
Видно, что ядро операционной
системы UNIX является классическим для
многозадачной
4. Файловая система UNIX
Термин файловая система по историческим причинам обозначает одновременно и иерархию каталогов и файлов, и часть ядра, управляющую доступом к каталогам и файлам.
Особенности файловой системы. Организация файловой системы в первом значении этого термина означает рассмотрение структур, в которые могут быть организованы файлы на носителях данных. Существует несколько видов таких структур: линейные, древовидные, объектные и другие, но в настоящее время широко распространены только древовидные структуры.
Каждый файл в древовидной структуре расположен в определенном хранилище файлов — каталоге, каждый каталог, в свою очередь, также расположен в некотором каталоге. Таким образом, по принципу вложения элементов файловой системы (файлов и каталогов) друг в друга строится дерево, вершинами которого являются непустые каталоги, а листьями — файлы или пустые каталоги. Корень такого дерева имеет название корневой каталог и обозначается каким-либо специальным символом или группой символов (например, «/» в UNIX или «C:» в операционной системе Windows). Каждому файлу соответствует некоторое имя, определяющее его расположение в дереве файловой системы. Полное имя файла состоит из имен всех вершин дерева файловой системы, через которые можно пройти от корня до данного файла (каталога), записывая их слева направо и разделяя специальными символами-разделителями.
Рисунок 1.4. Индексная файловая система UNIX
В настоящее время существует огромное количество файловых систем, каждая из которых используется для определенной цели:
Файлы и каталоги имеют несколько идентификаторов: помимо имён, с которыми обычно работают пользователи, каждому файлу соответствует уникальный в рамках файловой системы номер. Этот номер, называемый индексом файла, соответствует индексному узлу (i-node) — структуре на диске, в которой хранится служебная информация (так называемые «метаданные») о файле: расположение данных файла на диске, длина файла, владелец файла, права доступа и т. п. Таблица же связок типа «имя файла—i-node» — есть не что иное как содержимое каталогов.
Таким образом, каждый файл характеризуется одним i-node, но может быть связан с несколькими именами — в UNIX это называют жёсткими ссылками (см. Рисунок 1.5, «Пример жесткой ссылки»). При такой схеме физическое удаление данных файла с носителя происходит только тогда, когда удаляется последняя из существующих жёстких ссылок на этот файл.
Рисунок 1.5. Пример жесткой ссылки
Важной особенностью таких
файловых систем является то, что имена
файлов зависят от регистра, другими
словами файлы test.txt и TEST.
В определенных блоках физического носителя данных находится т. н. суперблок (см. рисунок Рисунок 1.4, «Индексная файловая система UNIX»). Местоположение суперблока на носителе определяется при создании файловой системы. Суперблок — это наиболее ответственная область файловой системы, содержащая информацию, необходимую для работы файловой системы в целом, а также — для её идентификации. В суперблоке находится «магическое число» — идентификатор файловой системы, отличающий её от других файловых систем, список свободных блоков, список свободных индексных узлов (i-node) и некоторая другая служебная информация.
Помимо каталогов и обычных файлов для хранения информации, ФС может содержать следующие виды файлов:
Специальный файл устройства
Обеспечивает доступ к физическому устройству. При создании такого устройства указывается тип устройства (блочное или символьное), старший номер — индекс драйвера в таблице драйверов операционной системы и младший номер — параметр, передаваемый драйверу, поддерживающему несколько устройств, для уточнения о каком «подустройстве» идет речь (например, о каком из нескольких IDE-устройств или COM-портов). Устройства рассматриваются в разделе «Устройства и драйверы».
Именованный канал
Используется для передачи данных между процессами, работает по принципу двунаправленной очереди (FIFO). Является одним из способов обмена данными между изолированными процессами.
Символьная ссылка
Особый тип файла, содержимое которого — не данные, а имя какого-либо другого файла (см. Рисунок 1.6, «Пример символьной ссылки»). Для пользователя, такой файл в большинстве ситуаций неотличим от того, на который он ссылается: операции чтения, записи и пр. над символьной ссылкой работают так, как если бы они производились непосредственно над тем файлом, на который указывает ссылка. Символьные ссылки могут указывать также и на каталог: в этом случае они «работают» как каталоги.
Символьная ссылка имеет
ряд преимуществ по сравнению
с жёсткой ссылкой: она может
использоваться для связи файлов
в разных файловых системах (ведь номера
индексных узлов уникальны
Рисунок 1.24. Пример символьной ссылки
Сокет предназначен для взаимодействия между процессами через специальное API, схожее с TCP/IP-сокетеми. Устроенные подобным образом файловые системы наследуют особенности оригинальной UNIX. К ним можно отнести, например: s5 (используемая в версиях UNIX System V), ufs (BSD UNIX), ext2, ext3, reiserfs (Linux), qnxfs (QNX). Все эти файловые системы различаются форматами внутренних структур, но совместимы с точки зрения основных концепций.
5. Виртуальная файловая система
Рассмотрение второго значения термина файловая система приводит уже к обозначенной ранее совокупности процедур, осуществляющих доступ к файлам на различных носителях.
Файловая подсистема операционной
системы UNIX имеет специальный уровень
абстракции для обработки запросов
к файлам — переключатель файловых
систем или виртуальная файловая
система (VFS). VFS
Рисунок 1.7. Виртуальная файловая система
Пользовательская программа
имеет стандартный набор
В мире стандартов UNIX определено,
что корневой каталог единого
дерева файловой системы должен иметь
имя /, как и символ-разделитель при формировании
полного имени файла. Тогда полное имя
файла может быть, например, /usr/share/doc/
6. Дерево каталогов
Особенностью операционных систем семейства UNIX является объединение файловой системы в единое дерево для любого количества носителей данных с одинаковыми или разными типами файловых систем на них. Это достигается путем операции монтирования — временной подстановкой вместо каталога одной файловой системы дерева другой файловой системы. В результате вместо нескольких, изначально никак не связанных друг с другом деревьев образуется большое разветвленное дерево с единым корневым каталогом.
Использование общепринятых
имен основных файлов и структуры
каталогов существенно
Например, все каталоги можно разделить на две группы: для статических (редко меняющихся) данных — /bin, /usr и для динамических (часто меняющихся) данных — /var, /tmp. Исходя из этого администраторы могут разместить каждый из этих каталогов на собственном носителе, обладающем соответствующими характеристиками: скоростью доступа, объёмом, надёжностью и т. п.
Рисунок 1.8. Стандартные каталоги в файловой системе UNIX
Корневой каталог
Корневой каталог / является основой любой ФС UNIX. Все остальные каталоги и файлы располагаются в рамках структуры (дерева), порождённой корневым каталогом, независимо от их физического местонахождения.
/bin
В этом каталоге находятся часто употребляемые команды и утилиты системы общего пользования. Сюда входят все базовые команды, доступные даже в том случае, если была примонтирована только корневая файловая система. Примерами таких утилит являются: ls, cp, sh и т. п.