Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

4 - Архитектура, составные части и характеристики ОС

(Архитектура Windows, UNIX, QNX)

С монолитным Винда)

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

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

Ядро состоит из трех основных подсистем:

1. Файловая подсистема

2. Подсистема управления процессами и памятью

3. Подсистема ввода/вывода

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

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

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

Файловая подсистема обеспечивает перенаправление запросов, адресованных периферийным устройствам, соответствующим модулям подсистемы ввода/вывода.

НЕ нашли? Не то? Что вы ищете?

Подсистема управления процессами

Запущенная на выполнение программа порождает в системе один или более процессов (или задач). Подсистема управления процессами контролирует:

·  Создание и удаление процессов

·  Распределение системных ресурсов (памяти, выч. ресурсов) между процессами

·  Синхронизацию процессов

·  Межпроцессное взаимодействие

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

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

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

Подсистема ввода/вывода

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

ОС с микроядром (ex: QNX)

 

В состав ядра входят наиболее необходимые низкоуровневые функции ОС. Все остальные сервисы вынесены в адресное пространство пользователя и работают в качестве серверов.

1 – Match

2 – L4 и mCOS

Преимущества (QNX)

·  Единообразный интерфейс

·  Расширяемость

·  Гибкость

·  Переносимость

·  Надежность

·  Поддержка распределенных систем (масштабируемость)

·  Хорошая поддержка объектно-ориентированных систем

ОС с гибридным ядром (ex: Win 2000)

00041.bmp

Hardware Abstraction Level (HAL) – уровень аппаратных абстракций.

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

Функции ядра :

§  Планирование выполнения процессов

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

§  Выполнение низкоуровневой многопроцессорной синхронизации

§  Обеспечение восстановления системы после сбоя питания

Модули, которые находятся в адресном пространстве ядра :

1.  Диспетчер ввода/вывода – поддержка независимых от устройств функций ввода/вывода, управление файлами и сетевыми буферами.

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

3.  Диспетчер локального вызова процедур (LPC) – поддержка взаимодействия между клиентами и сервером, расположенными на одном компьютере.

4.  Диспетчер процессов – отвечает за управление процессами и потоками; при создании процесса – в его состояние включается один поток, в последующем потоки могут быть добавлены (в Unix ……)

5.  Монитор безопасности обращений – обеспечивает защиту объектов во время работы системы, участвует в операциях с объектами и может обеспечить аудит использования.

6.  Менеджер объектов – создает и удаляет объекты исполнительной подсистемы. Дескрипторы объектов – расширение идеологии дескрипторов файлов в UNIX. С помощью них можно адресовать процессы, потоки и кон. точки монтирования.