Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Alexandr1966
25 / 25 / 1
Регистрация: 17.12.2012
Сообщений: 431
#1

Организация обработки прерываний - C++

23.12.2012, 15:07. Просмотров 1199. Ответов 3
Метки нет (Все метки)

Здравствуйте! Пытаюсь разобраться с механизмом обработки прерывания. Нужно написать такую программку, чтобы показать программное прерывание процесса, ДРУГИМ процессом с ВЫСШИМ ПРИОРИТЕТОМ. Допустим, изначально был запущен какой то базовый процесс, и тут происходит запуск одного из процессов с более высоким приоритетом. Вследствие чего базовый процесс находится в ожидании завершения запущенного процесса.
Буду рад и благодарен вашим предложениям и программным кодам
Программу реализовать желательно в консольном приложении Visual Studio 2008.
Реализовать можно на цифрах, вот примерно так как реализован планировщик вот здесь Алгоритм планирования Round Robin с квантом времени (переделать программу)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.12.2012, 15:07     Организация обработки прерываний
Посмотрите здесь:

Вызов функций через таблицу прерываний C++
Организация цикла С++ C++
Организация счетчика C++
Как реализовать обработку прерываний в С++? C++
Организация прерываний в DOS C++
C++ Организация наследования
C++ Организация библиотеки
C++ Обработчик прерываний
Обработка прерываний C++
Обработка прерываний с клавиатуры на С++ с применением библиотеки dos.h C++
C++ Литература для написания обработчика прерываний MS DOS
Организация программы C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
eremeeva14
-3 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 14
24.12.2012, 05:55     Организация обработки прерываний #2
может тебе это материал поможет http://www.intuit.ru/department/hardware/archhard2/14/ =))
Alexandr1966
25 / 25 / 1
Регистрация: 17.12.2012
Сообщений: 431
26.12.2012, 03:16  [ТС]     Организация обработки прерываний #3
я уже ознакамливался с этим материалом, и все равно не могу понять что к чему(((

Добавлено через 3 часа 8 минут
готов еще посмотреть ваши предложения и советы))

Добавлено через 2 часа 59 минут
кто-нибудь сталкивался с такой реализацией??

Добавлено через 2 часа 24 минуты
друзья, кто-нибудь подскажите как сделать код...

Добавлено через 12 часов 28 минут
кто ОС изучает, помогите разобраться)
WhiteP
606 / 204 / 23
Регистрация: 20.11.2012
Сообщений: 426
26.12.2012, 10:31     Организация обработки прерываний #4
Alexandr1966,
Что значит процесс с более высоким приоритетом? И причем тут прерывания? Не понятно о чем речь - о планировании потоков планировщиком, или же все-таки прерывания?

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

Прерывания - также зависят от поддержки аппаратного обеспечения. При поступлении прерывания от устройств контроллер кидает процессору (одному из, в случае многопроцессорности) сигнал. При этом процессор прерывает работу выполняющегося потока, сохраняет его контекст в стеке и переходит по заранее заданному адресу в одной из системных таблиц к выполнению процедуры, связанной с данным конкретным прерыванием, при этом прерывания с тем же и более низким приоритетом маскируются (запрещаются). При поступлении прерывания с более высоким приоритетом - ситуация повторяется (т.е. процессор переходит к обработке более приоритетного прерывания и откладывает текущее на потом). После обработки прерываний продолжается исполнение прерванного потока или отложенного прерывания.
Yandex
Объявления
26.12.2012, 10:31     Организация обработки прерываний
Ответ Создать тему
Опции темы

Текущее время: 14:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru