The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Линус Торвальдс выразил опасения в связи со стремительным ус..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]

. "Линус Торвальдс выразил опасения в связи со стремительным ус..." +/
Сообщение от Ваня (??), 19-Янв-12, 15:24 
Пример простейшего счётчика тактов таймера в монолитном ядре:

irq00:
  inc [counter] ; <<<< собственно наш обработчик

  ; проверяем не пришло ли время остановить мотор дисковода
  cmp [fdd_tick_to_stop]
  jz  @f
  dec [fdd_tick_to_stop]
  jz  @f
  call fdd_stop_motor
@@:

  ; проверяем не пришло ли время запустить экранную заставку

.... ля-ля-ля, ещё 200 проверок ...

eoi
iret

Пример того же драйвера в микроядре:

init:
AddHandler(0,irq00_handler); // номер прерывания и обработчик

irq00_handler:
inc [counter]
ret

И соотв. код ядра, обрабатывающий данные вызовы: обход L1 с вызовами сохранённых указателей на обработчики.

Всё :) Разницу в сложности и возможности масштабирования все заметили?

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Линус Торвальдс выразил опасения в связи со стремительным ус..., opennews, 18-Янв-12, 17:48  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру