Безопасность операционных систем. Безбогов А.А - 52 стр.

UptoLike

Метод косвенной адресации основан на применении преобразований, выполняемых над ключом порции данных, для по-
лучения адреса этой порции. Эти преобразования значительно сложнее, чем в методе прямой адресации, так как имеют более
общий характер. Преобразования ключа в методе косвенной адресации носят название рандомизации. Косвенная адресация эф-
фективна, когда диапазон изменения значения ключей значительно шире диапазона количества порций данных в наборе и, соот-
ветственно, диапазона возможных адресов. Несомненным достоинством метода косвенной адресации является высокая плот-
ность заполнения памяти на носителе даже при существенно неравномерном распределении значений ключей в их диапазоне
изменения. Недостатками этого метода являются, во-первых, высокая вероятность появления синонимов адресов, т.е. ситуации,
когда на одно и то же место в памяти претендуют две и более порции данных с различными значениями ключей, и, во-вторых,
отсутствие возможности восстановить значение ключа по значению адреса порции данных, как это можно сделать в методе пря-
мой адресации.
Метод адресных таблиц универсален и характеризуется тем, что порции данных заносятся в набор в произвольном
порядке, а в памяти создается таблица соответствия значений ключей этих порций их физическим адресам. Вся дальнейшая
работа с данными реализуется через эти таблицы.
Логической единицей любого набора данных является запись.
Записьсовокупность данных, которая используется средствами системы как единое целое.
Запись может быть фиксированной, переменной или неопределенной длины.
Запись фиксированной длиныэто логическая запись, длина которой задана вне этой записи.
Запись переменной длинылогическая запись, длина которой определяется значением одного из ее полей.
Запись неопределенной длины логическая запись, в которой отсутствует специализированное поле для описания ее
длины, а длина определяется в момент обработки этой записи.
5.2. МЕТОДЫ ДОСТУПА К ДАННЫМ
Управление доступом к данным, размещенным на внешних запоминающих устройствах (ВЗУ), состоящим в выполне-
нии операций передачи данных от внешних устройств в основную память (операция ввода) или пересылки данных из основ-
ной памяти на внешнее устройство (операция вывода), может быть выполнено с применением методов прямого и косвенного
управления доступом.
Метод прямого управления доступом к данным основан на наличии непосредственной связи между центральным
процессором и внешним запоминающим устройством (см. рис. 5.5, а).
На центральный процессор возлагается обязанность непосредственно управления работой устройства, что предполагает
наличие в составе команд процессора специальных команд по управлению работой этого устройства (инициирование ВЗУ,
проверка готовности к работе, остановка ВЗУ, запись/чтение данных и т.п.).
Главным недостатком метода прямого управления доступом является невозможность реализация на его основе режимов
мультипрограммной обработки данных.
Метод косвенного управления доступом (рис. 5.5, б) основан на том, что между центральным процессором и внешни-
ми запоминающими устройствами помещается специальный процессор, называемый каналом ввода-вывода (контроллер
ввода-вывода), который осуществляет фактическое управление внешним запоминающим устройством при выполнении опе-
раций ввода и вывода данных. На центральный процессор теперь возлагается функция управления каналом ввода-вывода.
Синхронизация параллельной работы центрального процессора и канала ввода/вывода осуществляется с применением сис-
темы прерываний. Канал через систему прерываний прерывает работу центрального процессора всякий раз при завершении
операции ввода-вывода или при условии возникновения ошибок ввода/вывода. Сигнал пребывания является по смыслу син-
хронизирующим.
Центральный
процессор
ВЗУ
Центральный
процессор
ВЗУ
Канал
ввода/вывода
б)
а)
Рис. 5.5. Методы доступа к данным:
апрямой; бкосвенный
Независимо от принятого в системе метода управления доступ к данным в программах пользователя может осуществ-
ляться разными методами. Наиболее распространенными в настоящее время являются два доступа к данным из программ
пользователя: доступ к данным на низком уровне; доступ к данным на высоком уровне.
Способ доступа на низком уровне, называемый также низкоуровневым доступом или физическим способом доступа,
характеризуется тем, что для обеспечения выполнения операции ввода-вывода пользователь обязан самостоятельно создать
программу управления соответствующим устройством ввода/вывода.
Доступ к данным на высоком уровне, называемый также высоко уровневым доступом или способом доступа на логи-
ческом уровне, предназначен для повышения уровня автоматизации выполнения операций ввода-вывода в программах поль-
зователя. В этом случае пользователь работает с необходимыми ему данными опосредованно, через драйверы операционной
системы.
В системах с виртуальной памятью могут применяться
виртуальные методы доступа, которые предназначены для
обработки наборов данных с виртуальной организацией.