Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
У. Стоулинг ГЛАВА 2 Обзор ОС.doc
Скачиваний:
30
Добавлен:
11.05.2015
Размер:
510.46 Кб
Скачать

Защита информации и безопасность

С ростом популярности систем разделения времени — а впоследствии с воз­никновением компьютерных сетей — возникла проблема защиты информации. В зависимости от обстоятельств природа угрозы, нависшей над определенной орга­низацией, может быть самой разнообразной. Однако в компьютеры и операцион­ные системы могут быть встроены некоторые инструменты общего назначения, поддерживающие различные механизмы защиты и обеспечивающие безопас­ность. Если говорить в общих чертах, мы сталкиваемся с проблемой контроля над доступом к компьютерным системам и хранящейся в них информации.

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

  • Контроль над доступом. Связан с регулированием доступа пользователя к системе в целом, к ее подсистемам и данным, а также к различным ресур­сам и объектам системы.

  • Контроль над перемещением информации. Регулирование потока данных внутри системы и при их доставке пользователю.

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

Совместное использование ресурсов и управление ими

Одной из важных задач операционной системы является управление имею­щимися в ее распоряжении ресурсами (основной памятью, устройствами ввода-вывода, процессором), а также их распределение между разными активными процессами. При разработке стратегии распределения ресурсов необходимо при­нимать во внимание следующие факторы.

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

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

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

Задача управления ресурсами и их распределения типична для исследований операционных систем; здесь могут применяться математические результаты, полу­ченные в этой области. Кроме того, важно измерять активность системы, что позво­ляет следить за ее производительностью и вносить коррективы в ее работу.

На рис. 2.11 показаны основные элементы операционной системы, участ­вующие в планировании процессов и распределении ресурсов в многозадачной среде. Операционная система поддерживает несколько очередей, каждая из ко­торых является просто списком процессов, ожидающих своей очереди на исполь­зование какого-то ресурса. В краткосрочную очередь заносятся процессы, кото­рые (или, по крайней мере, основные части которых) находятся в основной па­мяти и готовы к выполнению. Выбор очередного процесса осуществляется краткосрочным планировщиком, или диспетчером. Общая стратегия состоит в том, чтобы каждому находящемуся в очереди процессу давать доступ по очере­ди; такой метод называют циклическим (round-robin). Кроме того, процессам можно присваивать различный приоритет.

Рис. 2.11. Ключевые элементы многозадачной операционной системы

В долгосрочной очереди находится список новых процессов, ожидающих возможности использовать процессор. Операционная система переносит их из долгосрочной очереди в краткосрочную. В этот момент процессу необходимо выделить определенную часть основной памяти. Таким образом, операционная система должна следить за тем, чтобы не перегрузить память или процессор, добавляя в систему слишком много процессов. К одному и тому же устройству ввода-вывода могут обращаться несколько процессов, поэтому для каждого устройства создается своя очередь. И здесь операционная система должна ре­шать, какому процессу предоставить освободившееся устройство ввода-вывода в первую очередь.

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

Далее в этом разделе приводится чисто функциональное описание; эти модули в различных операционных системах имеют разные особенности и устройство.