Контакт:
  • Наши кнопки

  • Карта сайта
  • Вход для админа:

Для идентификации переменных и команд используются символьные имена (мотки), виртуальные адреса и физические адреса (рисунок 2.7).

Символьные имена присваивает пользователь при написании программы на алгоритмическом языке или ассемблере.

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

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

.

Хорошо известный механизм для реализации распределенных вычислений, RPC, расширяет традиционную модель программирования - вызов процедуры - для использования в сети. RPC может составлять основу распределенных вычислений. Теоретически программист не должен становиться экспертом по коммуникационным средствам для того, чтобы написать распределенное сетевое приложение. При использовании RPC программист будет применять специальный язык для описания операций. Данное описание обрабатывает компилятором, который создает код как для клиента, так и для серверу.

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

Рис. 3.23.  Модель с полными доверительными отношениями

Через резкое увеличение числа доверительных отношений эта модель не подходит для больших предприятий.

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

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

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

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

Сервер времени OSF DCE - это система, которая поставляет время другим системам с целью синхронизации. Любая система, которая не содержит серверу времени, называется клерком (clerk).

Служба NDS представляет собой значительный шаг вперед в сравнении с предыдущими версиями за счет:

распределенности;

реплицируемости; прозрачности;

глобальности.

Распределенность заключается в том, что информация не хранится на одном сервере, а разделенная на части, называемые делениями (partitions). Netware бережет эти деления на нескольких серверах сети (рисунок 3.24). Это свойство значительно упрощает администрирование и управление большой сетью, потому что она рекомендуется администратору единой системой.

Для пользователей Windows объектно-ориентированный подход оказывается при работе с программами, которые используют технологию OLE фирмы Microsoft. В первой версии OLE, что дебютировала в Windows 3.1, пользователи могли вставлять объекты в документы-клиенты. Такие объекты устанавливали ссылку на данные (в случае связывания) или содержали данные (в случае внедрения) в формате, распознаваемом программой-сервером. Для запуска программы-серверу пользователи делали двойной щелчок на объекте, с помощью чего передавали данные серверу для редактирования.

Приведенный выше пример поможет нам проиллюстрировать еще одну проблему синхронизации - взаимные блокирования, называемые также дедлоками (deadlocks), клинчами (clinch) или безысходностями. Если переставить местами операции P(e) и P(b) в программе "писателю", то при некоторому стечению обстоятельств эти два процессы могут взаимно заблокировать друг друга. Действительно, пусть "писатель" первым войдет в критическую секцию и окажет отсутствие свободных буферов; он начнет ждать, когда "читатель" возьмет очередную запись из буфера, но "читатель" не сможет этого сделать, потому что для этого необходимо войти в критическую секцию, вход в который заблокирован процессом "писателем".

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

выжимает и не выжимает многозадачность. Самым важным что разделяется ресурсом является процессорное время. Средство распределения процессорного времени между несколькими одновременно существующими в системе процессами (или нитями) во многом определяет специфику ОС.

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

Ниже приведенная классификация ОС по нескольким более всего основных признаках.

Особенности алгоритмов управления ресурсами

От эффективности алгоритмов управления локальными ресурсами компьютера во многом зависит эффективность всех сетевой ОС в целом.

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

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

Сети кампусов - соединяют несколько сетей отделов внутри отдельного дома или внутри одной территории предприятия.

Весь зависимый от устройства код помещается в драйвер устройства. Каждый драйвер управляет устройствами одного типа или, может быть, одного класса.

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

Драйвер устройства принимает запрос от устройств программной прослойки и решает, как его выполнить.

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


s#0