
- •1.Понятие об архитектуре аппаратных средств и её взаимосвязи с программным обеспечением.
- •2.Основные классы задач операционной системы.
- •3.Концептуальные основы операционных систем.
- •4.Средства и алгоритмы управления задачами ос.
- •5.Задачи управления ресурсами.
- •6.Управление памятью в операционных системах.
- •7.Система ввода – вывода
- •8.Защита информации и безопасность в ос.
- •Методы идентификации и аутентификации
- •9.Криптография, шифры, перестановки.
- •10.Шифр гаммирования.
- •11.Стандартные шифры des(Data encryption standart) и гост.
- •12.Шифры с открытым ключом.
- •13.Методы идентификации и аутентификации.
- •14.Специальные методы аутентификации и идентификации и управление доступом. Методы отражения атак.
7.Система ввода – вывода
Это часть ОС, обеспечивающая взаимодействие с физическими устройствами ВС. Основной задачей системы ввода-вывода является обеспечение непрерывной работы, планирования, управления и двусторонней передачи данных между основной памятью и внешними устройствами для достижения максимальной эффективности работы ЦП.
Т.к. аппаратура различается в различных ВС, то для них существует и различие в системах ввода-вывода. Однако в большинстве ОС выделяется ядро системы ввода-вывода, называемая BIOS (basic input output system). Это базовая система разрабатывается изготовителем ВС, хранится в ПЗУ и рассматривается как часть аппаратуры.
При построении систем ввода-вывода аппаратура ввода-вывода рассматривается как совокупность специальных процессоров, которые способны работать параллельно и независимо друг от друга и от ЦП. На таких процессорах развивается так называемые внешние процессы, в отличие от внутренних, которые развиваются в ЦП.
Для сглаживания очевидного эффекта несоответствия скоростей между внутренними и внешними процессами в системах ввода-вывода применяются при основных методах:
Синхронизация по прерываниям ввода-вывода.
Буферизация.
Блокирование данных (формирование блока данных).
По физической организации устройства ввода-вывода делятся на 2 типа: Блок-ориентированные и Байт-ориентированные устройства. Первый хранят информацию в блоках фиксированного размера, самые распространенные типы устройств это диски, они естественно адресуемы. Байт-ориентированные устройства не адресуемые, они генерируют или потребляют последовательности байт. К ним относятся терминалы, строчные принтеры, сетевые адаптеры.
Есть некоторые устройства, которые не относятся к обоим классам: компьютерные часы, которые и не адресуемы и не порождают потока байт, а только выдают сигнал прерывания в некоторый момент времени.
Внешние устройства обычно состоят из механической и электронной компоненты. Электронный компонент называется контроллером устройства или адаптером, и собственно представляет собой процессор этого устройства. Каждый контроллер имеет несколько регистров, которые используются для взаимодействия с ЦП.
В некоторых ЭВМ эти регистры являются частью физического адресного пространства, в системе команд таких машин нет специальных операций ввода-вывода. В других адреса регистров ввода-вывода, называемые портами, образуют собственное адресное пространство за счет введения специальных операций ввода-вывода.
Управление данными в современных ОС осуществляется с помощью файлов. Файловый способ хранения данных – это такой способ, при котором каждый набор данных представляется как именное собрание записей называемых файлами. Файл – это идентифицированная совокупность экземпляров полностью описанных в конкретной программе типа данных, находящихся вне программы на внешнем устройстве и доступна программе посредством специальных операций.
Система управления данными с файловым способом хранения называется файловой системой (ФС). Основные требования к ФС следующие:
Каждый пользователь должен иметь возможность создавать, удалять и изменять файлы.
Иметь контролируемый доступ к файлам других пользователей.
Определять типы доступа к своим файлам.
Пересылать данные между файлами.
Иметь возможность восстановления файлов при их повреждении.
Для поддержания этих требований файловая система должна содержать следующие компоненты:
Средства взаимодействия с процессами пользователей, обеспечивающие прием и интерпретацию запросов пользователя на обработку файлов, и сообщающая ему о результатах такой обработки.
Средства реализации методов доступа к файлу и к его составным элементам.
Средства распределения внешней памяти для хранения файлов и для ее освобождения по мере уничтожения файлов.
Средства учета расположения файлов и их составных элементов.
Все эти средства представляют собой логический уровень управления данными в файловой системе. Физическим уровнем для нее является система ввода-вывода. В таком виде файловая система выступает как интерфейс между программными процессами и файлами.
Физическая организация файлов зависит от физических характеристик внешнего устройства. Существуют устройства, которые допускают только один тип организации – последовательный и устройства, которые допускают различные типы организации файлов, а именно: последовательный, непрерывный и сегментированный. Примеры первых устройств – магнитные ленты, принтеры. 2ой тип – устройства прямого доступа – диски.
Рассмотрим типы организации файлов. Последовательная организация файлов предполагает такую его организацию, при которой доступ к компонентам файла может быть только последовательным в соответствии с упорядоченностью этих компонентов. Такой файл состоит из связанной последовательности блоков. В одном блоке может быть размещена одна или несколько записей последовательного набора данных. Для выборки нужной записи файл должен быть рассмотрен блок за блоком, запись за записью. При этом возможны следующие случаи размещения записей:
Один физический блок под одну запись.
Несколько физических блоков под одну запись.
Один физический блок под несколько логических записей.
Заметим, что последовательный файл необязательно должен располагаться непрерывно физической памяти и может располагаться в различных ее местах при использовании ссылочного механизма между блоками.
Поэтому выделяется непрерывная организация файлов, т.е. это файл, в котором все блоки расположены в одной сплошной области дискового пространства.
Сегментированная организация файлов предполагает использование индексации. Сегментированный файл – это файл, состоящий из последовательного индекса, содержащего адреса соответствующих блоков данных. Поэтому такие файлы иногда называются индексными файлами, а доступ такого типа – индексный (индексно-последовательный или прямой).
Организация хранения файлов осуществляется с помощью специальных таблиц, называемых каталогами и справочниками. Современные файловые системы работают с каталогами, имеющими древовидную структуру, при этом различают главный корневой каталог и подчиненные вложенные каталоги.
Место размещения корневого каталога всегда фиксировано в ОС. Информация в каталогах содержит имя и расширение файла, атрибуты, определяющие его тип, защиту, способ буферизации и т.п. Состав таких атрибутов отличается в разных ОС.
Кроме атрибутов, для эффективного управления файлами выделяется блок управления файлом, называемый дескриптором файла. Он содержит различную информацию необходимую для выполнения операции с файлами. Дескриптор может храниться как вместе с файлом (быть частью файла), так и в каталоге файлов.
Отметим, что среди всех операций с файлами самой важной, но и самой длительной операцией является операция открытия файлов. Общую модель файловой системы можно представить в виде пяти уровней:
Символьный уровень. Задача – определение посимвольного имени файла, его уникального имени в системе.
Базовый уровень. Задача – выделение по уникальному имени файла его характеристик.
Уровень проверки прав доступа. Задача – проверка прав доступа к заданному файлу для заданной операции.
Логический уровень. Задача – определение координат логической записи в файле (местоположение).
Физический уровень. Задача – определение номера физического блока, содержащего логическую запись.
После этого управление передается подсистеме ввода-вывода. Подсистема ввода вывода образует программы, называемые драйверами устройств. В архитектуре современных файловых систем для обеспечения возможностей работы с несколькими файлами системами, как правило, предусматривается два уровня соответствующих драйверов:
Драйверы файловых систем.
Драйверы конкретных устройств.
Они образуют определенную иерархию не только между собой, но и внутри. При этом обращение к устройству рассматривается для системы как последовательность вызовов определенных драйверов, на любом из которых обработка может быть закончена. Так организуется переход с самого верхнего уровня на уровень физического контроллера.
Методы организации данных в ОС опираются на их физическую и логическую структуру. Логическую структуру данных определяет пользователь. Физическая структура данных – это то, как они располагаются на конкретном физическом носителе.
Организация данных – это представление данных и управление ими в соответствии с определенными соглашениями, одна и та же структура данных может отображаться в среду хранения различными способам. В ОС используется в основном последовательная, древовидная и прямая организация данных.
При последовательной организации образуется последовательный набор данных, к физическим записям которого обеспечивается только последовательный доступ в порядке их размещения в памяти.
При древовидной организации данных структура данных организуется в виде дерева, методы представления таких структур могут быть разделены на две группы – методы физически последовательного размещения данных и методы логически последовательного размещения данных. И в том и в другом случае используется представление информации в виде связных списков.
Прямая организация данных рассчитана на произвольную обработку информации. Она характеризуется тем, что идентификатор порции данных или ключ используется для установления адреса этих данных. При прямой организации применяется два способа адресации:
Абсолютная адресация данных.
Относительная адресация данных.
Организация программного обеспечения ввода-вывода образует следующую систему:
Библиотечные функции (специальные библиотеки), в которых расположены специальные программные средства, обращения к подсистеме ввода-вывода (print, printf и т.д.).
Программы системы буферизации данных.
Драйверы устройств.
Команды обработки прерываний ввода-вывода системы команд конкретной ЭВМ.