Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ekzamen_po_kursu_OS_i_OST2012.doc
Скачиваний:
3
Добавлен:
27.09.2019
Размер:
431.62 Кб
Скачать
  1. Операционная система. Прерывания.

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

Прерывания:

Внешние ( аппаратные ) – нажатие клавиш, окончание операций ввода/вывода, прерывание таймера,… ( асинхронные события )

- это события, генерируемые внешними ( по отношению к процессору ) устройствами

- посредством аппаратных прерываний аппаратура либо информирует ЦП о том, что произошло какое – либо событие, требующее немедленной реакции

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

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

Внутренние ( исключительные ситуации ) – деление на 0, обращение к ресурсу без достаточных привилегий, … ( синхронные события )

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

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

Исключительные ситуации:

- исправимые ( отсутствие информации в оперативной памяти ),

- неисправимые ( ошибка в программе ).

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

  1. Взаимодействие прикладной программы с ОС. POSIX – совместимость.

POSIX ( Portable Operation System Interface for Unix ) - это стандарт, обеспечивающий переносимость исходных текстов программ между ОС разных производителей. За основу POSIX взяты ОС семейства UNIX.

  1. ОС UNIX. Варианты ОС UNIX

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

1 Семейство System V: SVR. 4x; UNIX Ware; Solaris; HP/UX; AIX ( IBM );…

2 Семейство Berkley: BSD 4.3; UNIX BSD; Free BSD; BSD Net;…

3 Linux: Red Hat Linux 6.x; Turbo Linux 6.x; Open Linux 2.x;…

4 SCO UNIX

  1. ОС UNIX. Основные события в истории ОС UNIX

  1. Шестая редакция системы (1975 г.) – первый широко известный в техническом сообществе коммерческий вариант и основа первой версии Berkeley UNIX.

  2. XENIX (1980 г.) – версия от Microsoft. Один из коммерческих вариантов UNIX, возникший в начале 80-х годов.

  3. System V (1983 – 1992 г.г.) – одна из наиболее важных версий от создателей UNIX’а корпорации AT&T. Наследница версии 7 и System III.

  4. Berkeley UNIX (4.2 – 1984 г, 4.4 – 1993 г.) – разработанная в Berkeley, эта версия была одной из наиболее важных версий UNIX и ввела в семейство UNIX много новых средств.

  5. POSIX (1988 г. и далее) – ключевой набор стандартов комитета IEEE, сыгравший важную роль в развитии UNIX.

  6. Open Portability Guides – практическая спецификация, объединившая целый ряд основных стандартов и рецептов использования UNIX-систем. Консорциум X/OPEN приобрёл торговую марку UNIX.

  1. ОС UNIX Основные концепции ОС UNIX.

- базовый пользовательский и программный интерфейс

- назначение основных компонентов, их архитектура и взаимодействие

Базовые понятия концепции ОС UNIX:

  1. Пользователь – зарегистрированное в среде UNIX лицо, которому после надлежащей проверки разрешается работать в системе

  2. Терминал ( интерфейс ) – основной инструмент пользователя для работы с системой в интерактивном режиме

  3. Процесс – акт выполнения заранее подготовленной программы в отдельном адресном пространстве

  4. Файл – универсальная абстракция ОС UNIX, означающая в частности именованную область внешней памяти со структурой: последовательность байт, а иногда служащая для определения ( обращения ) к физическим устройствам компьютера, либо для связи процессов

  1. ОС UNIX. Граф состояний процесса.

Существует две концепции организации многозадачности:

- вытесняющая ( принудительная, используется почти во всех ОС )

- согласующаяся ( отличается от предыдущей отсутствием перехода «процесс вытеснен» в графе состояний процесса )

  1. ОС UNIX и концепция открытых систем.

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

- масштабируемость – возможность почти линейного возрастания эффективности приложений при возрастании аппаратных возможностей

- интерперабильность – возможность совместного использования независимо разработанных приложений

  1. POSIX – совместимость. POSIX.1.

- 1 базовый API операционных систем

- 1а некоторые расширения API

- 1b расширения для поддержки реального времени

- 1c интерфейсы потоков, выполняющихся внутри POSIX – процессов

- 1d дополнительные расширения реального времени

- 1g независимый от протокола интерфейс сокетов

- 1j ещё одно дополнительное расширение реального времени

  1. POSIX – совместимость. POSIX.2 и POSIX.3.

-2 определяет набор утилит ( команд ) и командных интерпретаторов

-3 определяет набор тестов, позволяющих определить POSIX – совместимость операционной системы

  1. Файловые системы (ФС) ОС UNIX. Основные принципы.

- в основном используется в смысле иерархии каталогов и файлов

- в ОС UNIX представляет собой единое дерево, которое создаётся с помощью использования концепций монтирования

Файловая система:

- иерархия каталогов и файлов

- часть ядра ОС, которая управляет каталогами и файлами

  1. Физическая модель магнитного диска.

Доступная BIOS геометрия диска описывается в терминах цилиндр – головка – сектор ( C – H – S ). Головки чтения/записи считывают информацию с концентрических магнитных дорожек ( tracks ), на которые поделена каждая дисковая пластина. Вертикальная совокупность треков с одинаковыми номерами на всех пластинах, составляющих диск как физическое устройство, образует цилиндр. Сектора ( блоки ) делят пластину, вместе с её треками на радиальные фрагменты размером в 512 байтов. Обмен с диском возможен минимум на уровне сектора. Головки диска механически двигаются синхронно по поверхности всех пластин.

  1. Логическая модель магнитного диска.

Логическая модель диска основана на том, что вся совокупность ( объём ) секторов диска представляется в формате линейного пространства, т.е. как последовательность номеров секторов ( 001 – NNN ).

Распределение ресурсов:

- единица распределения ресурсов кратна размеру сектора ( в UNIX’е – блок, в DOS’е – кластер ).

- состояние единицы распределения ресурса ( либо занято, либо свободно ).

Файловая система не может располагаться в нескольких разделах.

  1. Файловые системы ОС UNIX. Классификация ФС

Типы файловых систем:

- локальная файловая система ( иерархия каталогов и файлов на локальном устройстве ):

S5, UFS, proc, ext2

Так же выделяют группы:

- псевдо – файловые системы ( proc, sysfs ) – располагаются в оперативной памяти

- нормальные ( disc – based ) файловые системы ( s5, ufs, ext2, ext3, XFS )

- распределённая ( сетевая ) файловая система ( иерархия каталогов и файлов не только на локальном устройстве, но и на уделённых устройствах ):

NFS, RFS

Примеры файловых систем:

/proc – псевдо файловая системы, которая используется в качестве интерфейса к структурам данных в ядре. Большинство расположенных в ней файлов доступны только для чтения, но некоторые файлы позволяют изменить переменные ядра.

/tmpfs – псевдо файловая система, которая позволяет некоторые файлы не записывать на физические диски. Эти файлы ( являются временными ) формируются в оперативной памяти, а затем удаляются. Поддерживает работу с виртуальной памятью.

/devfs – файловая система, хранящая информацию о виртуальных консолях

/sysfs – используется для получения информации о всех устройствах и драйверах

  1. Организация ФС s5 и ufs.

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

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

  3. Область индексных дескрипторов состоит из inode. С каждым файлом связан один inode, но одному inode может соответствовать несколько файлов. В inode хранится вся информация о файле, кроме его имени. Область индексных дескрипторов имеет фиксированный формат и располагается непосредственно за суперблоком. Размер индексного дескриптора фиксирован - 128 байт. Размер таблицы индексных дескрипторов задаётся при создании файловой системы на разделе.

  4. Область данных – в ней расположены как обычные файлы, так и файлы каталогов ( в том числе корневой каталог ).

  1. ФС ОС UNIX. Проблемы работы с магнитными дисками. Краткая характеристика.

- скорость работы с файлами ( дальнее перемещение головок чтения/записи )

- эффективность использования дисковой памяти ( внутренняя фрагментация ). Файлы могут занимать 5 – 10% целого блока ( сектора ) – получается, что оставшаяся часть блока остаётся не занятой

- эффективность восстановления файлов системы ( для решения этой проблемы используется концепция журналирования )

- маленькие файлы ( < 0,5 КБ )

  1. ФС ОС UNIX. ФС s5. Структура ФС.

  1. ФС ОС UNIX. ФС ufs. Концепция группы цилиндров.

Каждая группа цилиндров описывается своим блоком группы цилиндров.

  1. Загрузчик

  2. Суперблок

  3. Область индексных дескрипторов inode

Блоки данных

Загрузчик

Суперблок

Копия суперблока

Блок группы цилиндров

Таблица индексных дескрипторов inode

Блоки данных

Копия суперблока

Блок группы цилиндров

Таблица индексных дескрипторов inode

Блоки данных

Line 8 Line 9 Line 10 Line 16 Line 17

.

Line 21 AutoShape 25 AutoShape 26

Первая группа цилиндров

Вторая группа цилиндров

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

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

- выигрыш достигается за счёт того, что дальние перемещения головок осуществляются после того, как прочиталось или записалось 2 Мб информации.

- эффективность схемы размещения падает, если системе не хватает места для перемещения информации. Процессы чтения и записи замедляются, если свободно менее 10% ФС.

  1. ФС ОС UNIX. ФС ufs. Концепция фрагментов.

Фрагмент = 1 Кб

Блок = 8 Кб

Преимуществом большого блока является то, что ускоряется обмен данными с диском при передаче больших объёмов информации.

Недостаток: блоки больших размеров неэкономно используют дисковое пространство.

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

Размер фрагмента не меньше размера сектора.

  1. ФС ОС UNIX. ФС ufs. Структура индексного дескриптора.

  1. ФС ОС UNIX. ФС ufs. Структура адресной информации индексного дескриптора.

ФС ufs является развитием s5. В ufs следует отметить две особенности, которые призваны решить две проблемы:

- дальние перемещения головок чтения – записи ( концепция группы цилиндров )

- внутренняя фрагментация ( концепция фрагментов )

  1. ФС ОС UNIX. ФС ufs. Взаимосвязь между элементами каталогов и индексными дескрипторами.

  1. Каталоги – это файлы особого типа ( хранятся в области данных ).

  2. Структура файла каталога очень проста. Каталог – это таблица, каждый элемент которой состоит минимум из 2-х полей:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]