Прослушивание системных портов...

Тема в разделе "WASM.BEGINNERS", создана пользователем KingT, 16 сен 2007.

  1. KingT

    KingT Member

    Публикаций:
    0
    Написал системный драйвер,который позволяет читать/писать в любой системный порт.
    Не могу понять как можно с его помощью поймать данные,которые проходят через системные порты.
    Допустим у нас есть програма,которая что-то посылает/принимает через LPT порт,и системный драйвер.Процессор выполняет код программы,затем получает прерывание от таймера,сохраняет все регистры в TSS и переключается на системный драйвер,который читает порт LPT,в надежде поймать данные.Но программа,которая передает инпхормацыю в данный момент не выполняется!И ничего прочитать нельзя.
    Получается что из-за псевдомультизадачность таким способом перехватывать данные невозможно?
     
  2. bers

    bers New Member

    Публикаций:
    0
    Фильтром ставь свой драйвер и будешь перехватывать все, что тебе нужно...
     
  3. KingT

    KingT Member

    Публикаций:
    0
    А как это сделать и как это будет работать с точки зрения псевдомультизидачности?
     
  4. n0name

    n0name New Member

    Публикаций:
    0
    прочитай про отладочные регистры.
     
  5. rcarlos

    rcarlos New Member

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


    Тема: Состав и структура системы ввода-вывода современного ПК.
    Тема лабораторной работы: Программирование основных режимов обмена интерфейса IEEE-488 (канал общего пользования).

    Контроллер, управляющий обменом по шине IEEE488, использует три порта ввода-вывода процессора.

    - порт 0200h, определяющий режим работы контроллера "говорящий" - "слушающий". Нулевое значение записываемого в порт байта означает режим "говорящий"; ненулевое - режим "слушающий".
    - порт 0202h обеспечивает управление линиями синхронизации и управления либо прием сигналов по этим линиям в соответствии с таблицей 1.

    Табл.1.
    Номер бита 7 6 5 4 3 2 1 0
    Линия УП СД ГП ДП ЗО ДУ ОИ КП

    - порт 0204h обеспечивает установление байта данных на линиях данных.


    Задание для выполнения лабораторной работы:

    1 Разработать алгоритмы и соответствующие программные процедуры на языке высокого уровня информационного обмена по шине IEEE488:
    - вывода байта данных;
    - ввода байта данных;
    - вывода байта команды.