Системные ресурсы и их распределение

Основные сведения о ресурсах

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

Системными являются следующие ресурсы.

1.Прерывания. С их помощью устройства могут использовать процессор для обработки возникших в них событий. Далее мы рассмотрим распределение прерываний более подробно.

2.Каналы прямого доступа к памяти (DMA). Используются для обмена данными между устройством и оперативной памятью без участия процессора. Для реали­зации этой технологии в каждой системной плате есть контроллер DMA, под­держивающий до восьми каналов обмена данными. За контроллером дискет, например, закреплен канал DMA 2; для параллельного порта, работающего в ре­жиме ESP, обычно выделяется DMA 3; DMA 4 используется самим контролле­ром DMA. Остальные каналы часто свободные, поскольку эта технология редко применяется в новых устройствах. Распределение каналов DMA почти всегда выполняется успешно, и во многих современных версиях BIOS вообще нет на­строек, с ним связанных.

3.Порты ввода/вывода. Служат для обмена данными между устройством и про­цессором. Это диапазоны адресов в шестнадцатеричпом виде, по которым про­цессор может записывать или читать данные с помощью специальных команд IN или OUT. Для этих портов выделен диапазон в 64 Кбайт, большая часть которого свободна, поэтому конфликты с их использованием очень редки.

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

Прерывания

 

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

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

2. запрос на прерывание обрабатывается контроллером прерываний, после чего передается процессору;

3. процессор, получив запрос на прерывание, приостанавливает выполнение ос­новной программы, сохраняет в оперативной памяти текущее состояние своих регистров и запускает подпрограмму обработки данного прерывания;

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

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

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

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

Системные ресурсы и их распределение

Системные ресурсы и их распределение

1. Немаскируемые прерывания (Non-Maskable Interrupt, NMI). Они имеют наивысший приоритет. Эти прерывания обрабатываются при аварийных си­туациях, связанных с ошибками в работе оперативной памяти или других устройств.

Все современные процессоры также поддерживают другой тип немаскируемого прерывания SMI (System Management Interrupt), которое используется в схемах управления электропитанием.

2. Маскируемые прерывания. В отличие от немаскируемых, их выполнение может быть временно приостановлено программным способом. К ним относят все прерывания от устройств, обрабатываемые контроллером прерываний. Обычно он позволяет обращаться к 16 прерываниям от различных устройств; их назна­чение приведено в таблице ниже:

В большинстве современных компьютеров используется так называемый рас­ширенный контроллер прерываний (ЛР1С), который изначально разрабатывал­ся для многопроцессорных систем. APIC ускоряет обработку прерываний и уве­личивает их количество до 24.

3. Программные прерывания. Они полностью реализуются программным спосо­бом без участия контроллера прерываний. Эти прерывания, по сути, — подпро­граммы, решающие определенные задачи. Например, все версии BIOS содержат набор программных прерываний, которые выполняют основные операции вво­да/вывода, и любая программа может их использовать, или, другими словами, . вызывать прерывания BIOS. Свои программные прерывания есть у операцион­ной системы, а также у некоторых прикладных программ.

 

Назначение аппаратных прерываний

Назначение аппаратных прерываний


Назначение аппаратных прерываний

Назначение аппаратных прерываний

Технология Plug and Play

В старых компьютерах ресурсы для некоторых плат расширения настраивались вручную, при этом нередко возникали конфликты, особенно после установки новой платы расширения. Решить проблему распределения ресурсов позволила техно­логия Plug and Play, которая выполняет автоматическое конфигурирование под­ключаемых устройств.

Чтобы воспользоваться всеми преимуществами Plug and Play, необходима поддержка этой технологии со стороны BIOS, операционной системы и подключаемого устрой­ства. На сегодняшний день она полностью применяется как в аппаратном, так и про­граммном обеспечении, а устройства без ее поддержки уже являются редкостью.

В системе, отвечающей стандарту Plug and Play, ресурсы частично распределяют­ся операционной системой, а системная BIOS во время загрузки выполняет сле­дующие операции:

1. инициализирует устройства, которые используются в процессе загрузки системы;

2. распределяет ресурсы между устройствами, не поддерживающими Plug and Play;

3. опрашивает устройства, поддерживающие Plug and Play, и распределяет между ними оставшиеся ресурсы;

4. формирует таблицы распределения ресурсов ESCD (Extended System Configuration Data — данные расширенной системной конфигурации);

5. записывает данные ESCD, которые будут использованы для распределения ре­сурсов при следующей загрузке, в NVRAM — память с автономным питанием.

Работа с ресурсами в Windows

Операционные системы семейства Windows полностью совместимы со стандартом Plug and Play и предоставляют пользователям удобные средства, управляющие ресурсами. Рассмотрим особенности работы с ними на примере наиболее популяр­ной системы — Windows ХР.

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

Яндекс.Метрика