69772

Перемикання контексту й обробка переривань

Лекция

Информатика, кибернетика и программирование

Найважливішим завданням операційної системи під час керування процесами і потоками є організація перемикання контексту передачі керування від одного потоку до іншого зі збереженням стану процесора. Звичайно потрібно виконати такі операції: зберегти стан процесора потоку в деякій ділянці...

Украинкский

2014-10-10

28 KB

1 чел.

Тема 2. Перемикання контексту й обробка переривань.

2.1. Організація перемикання контексту

Найважливішим завданням операційної системи під час керування процесами і потоками є організація перемикання контексту — передачі керування від одного потоку до іншого зі збереженням стану процесора.

Загальних принципів перемикання контексту дотримуються у більшості систем, але їхня реалізація обумовлена конкретною архітектурою. Звичайно потрібно виконати такі операції:

♦  зберегти стан процесора потоку в деякій ділянці пам'яті (області зберігання стану процесора потоку);

визначити, який потік слід виконувати наступним;

завантажити стан процесора цього потоку із його області зберігання;

продовжити виконання коду нового потоку.

Перемикання контексту звичайно здійснюється із залученням засобів апаратної підтримки. Можуть бути використані спеціальні регістри та ділянки пам'яті, які дають можливість зберігати інформацію про поточну задачу (коли розглядають апаратне забезпечення, аналогом поняття «потік» є поняття «задача»), а також спеціальні інструкції процесора для роботи з цими регістрами та ділянками пам'яті.

Розглянемо апаратну підтримку перемикання задач в архітектурі ІА-32. Для збереження стану процесора кожної задачі (вмісту пов'язаних із нею регістрів процесора) використовують спеціальну ділянку пам'яті — сегмент стану задачі TSS. Адресу цієї області можна одержати з регістра задачі TR (це системний адресний регістр).

Для перемикання задач досить завантажити нові дані в регістр TR. У результаті значення регістрів процесора поточної задачі автоматично збережуться в її сегменті стану, після чого в регістри процесора буде завантажено стан процесора нової (або раніше перерваної) задачі й почнеться виконання її інструкцій.

Наступний потік для виконання вибирають відповідно до принципів планування потоків, які ми розглянемо в розділі 4.

2.2. Обробка переривань

У процесі виконання потік може бути перерваний не лише для перемикання контексту на інший потік, але й у зв'язку із програмним або апаратним перериванням (перемикання контексту теж пов'язане із перериваннями, власне, із перериванням від таймера). Із кожним перериванням надходить додаткова інформація (наприклад, його номер). На підставі цієї інформації система визначає, де буде розміщена адреса процедури оброблювача переривання (список таких адрес зберігають у спеціальній ділянці пам'яті і називають вектором переривань).

Наведемо приклад послідовності дій під час обробки переривання:

  •  збереження стану процесора потоку;

встановлення стека оброблювача переривання;

початок виконання оброблювача переривання (коду операційної системи); для цього з вектора переривання завантажується нове значення лічильника команд;

відновлення стану процесора потоку після закінчення виконання оброблювача і продовження виконання потоку.

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

Контрольні запитання:

1. Організація перемикання контексту.

2. Обробка переривань.


 

А также другие работы, которые могут Вас заинтересовать

39375. Збільшення прибутку на підприємстві на прикладі ВАТ «Биттехніка» 910 KB
  Мета в дипломної роботи складається у вивченні економічного аналізу прибутку, витрат та обсяг виробництва на підприємстві. Визначити взаємозв’язок впливу на прибуток таких факторів як обсяг та витрати виробництва методом CVP аналізу й побудови графіку беззбитковості.
39376. Проектирование двухступенчатого механического привода 1.61 MB
  механизм лебедки по рекомендациям [Чернилевский с. Определим угловую скорость 3го вала: Определим мощность 3го вала: Для двухступенчатого привода подберем двигатель и произведем кинематический и силовой расчет если мощность и угловая скорость выходного вала известны и соответственно равны: Мощность требуемая от электродвигателя: где общий КПД привода: По ГОСТ 1952381 выбираем ближайший по мощности электродвигатель 4А200М6У3 [Чернилевский с. 227] выполняя условие для которого При данной частоте вращения общее передаточное...
39377. ОБЩАЯ ХАРАКТЕРИСТИКА РЫНОЧНОГО ХОЗЯЙСТВА 489 KB
  Общественное разделение труда предполагает специализацию, обособление отдельных видов конкретного труда (труда в особой целесообразной форме - например, труд пекаря, гончара). Развитие общественного разделения труда выражается в увеличении числа профессий и специальностей
39378. Процесуальний порядок оскарження постанови про порушення кримінальної справи 539.75 KB
  Кожна кримінальна справа може бути порушена лише за на- явності приводу і достатньої підстави за відсутності обставиш що виключають провадження у справі.
39379. Структурно-функциональная теория социальных систем Т. Парсонса 15.3 KB
  Из бесчисленного множества человеческих действий и взаимодействий (интеракций), соответствующих определенным социальным ролям, складывается социальная система. Парсонс сформулировал положение о трехкомпонентной структуре социальной системы...
39380. Расчет привода 518 KB
  Выбор двигателя. От типа двигателя его мощности частоты вращения и прочего зависят конструктивные и эксплуатационные характеристики рабочей машины и ее привода. Мощность двигателя зависит от требуемой мощности рабочей машины а его частота вращения от частоты вращения приводного вала рабочей машины.3 Определяем требуемую мощность двигателя по формуле 3 2.
39381. Г. Зиммель о принципе понимания и социологии конфликтов 15.78 KB
  Принцип понимания занимает особое место в социологии Зиммеля. Он позволяет разрушить барьер бесстрастного объективизма-рационализма, отделяющий познающего субъекта от познаваемого объекта
39382. ПРОБЛЕМА ЭКОНОМИЧЕСКОЙ ЗАВИСИМОСТИ КАНАДЫ ОТ США 93 KB
  Библиографический фон исследования включает в себя достаточно широкий круг отечественных и иностранных исследовательско-аналитических работ, посвященных экономической зависимости Канады от США, выражающейся в особой чувствительности к изменению экономической и политической ситуации в США
39383. Процент, прибыль и рента 70 KB
  Сущность процента. Механизм процента. Выбор вариантов инвестирования. Прибыль и рентабельность. Показатели прибыльности. Ценные бумаги. Дивиденд. Курс акций. Рента. Цена земли.