Драйвера DOS. Визначення драйверів, резидентних в пам'ятi комп'ютера на даному робочому мiстi

Страницы работы

5 страниц (Word-файл)

Содержание работы

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ «ХПІ»

Кафедра “Обчислювальна техніка та програмування”

Лабораторна робота №8

з курсу “Системне програмне забезпечення”

 на тему: “Драйвера DOS “.

Виконав:             

                                 студент  групи АП-30б   

                                               Попов О.С.

Перевірив:

       Межерицький С. Г.

Харків 2002

Тема: “Драйвера DOS.”

Мета: Подивитися список   драйверiв, які в даний час  знаходяться на даній ЕОМ.

Постановка задачі: Визначити драйвери, резидентнi в пам'ятi комп'ютера на даному  робочому мiстi.

Структура програми.

Програма складається з основної функції  main () i 9 допоміжних функцiй. Функцiї Getsym, Getat, Putsym, Putatr описанi у лабораторнiй роботi номер 8.
void   clrbuf (void) – функція, яка  очищує  буфер клавiатури.
void   Memw (x,y,xr,yr) – функція, яка запам'ятовує змiст областi екрану.
void  Rmmw (x,y,xr,yr) – функція, яка вiдбудовує область екрану, яку запам'ятала функцiя Memw.
void   Clrw (x1,y1,x2,y2,s,a) – функція, що очищує прямокутну область на екранi заданим символом i атрибутом.
void   Fldrv (void) – функція, що виводить у вiкні докладний опис атрибутiв  драйвера.
Опис змінних.

Змінні глобальні для всієї програми :

xk,   yk - координати курсору;

cc – змiнна для зберігання коду натиснутої клавiшi;

bm [rx][ry][2] - буфер для запам'ятовування областi екрану.

      В програмi описана наступна структура заголовку   драйвера :

         struct   Dr_head   {

                                       struct dr_head *next;   /* адресса наступного/

                                       word   attr;   /* атрибут/

                                       word   strat_off,   intr_off;   /* змiщення секцiй/

                                       char   name[8];   /* iм'я/

                                       };

Опис алгоритму програми.

  Основна функція   main ( ) продивляється   список   драйверів i виводить на екран iнформацiю про них за допомогою допоміжних функцiй.

  Функцiя  clrbuf(void) читає  символи з буферу клавiатури, доки вiн не спорожнiй .

  Функцiя  Memw(x,y,xr,yr) використовуїться  для звернення до вiдеопам'ятi функцiй Getsym,Getatr.  x,y - координати лівого верхнього куту прямокутноЇ областi екрану. xr,yr - розмiри областi по горизонталi i вертикалi вiдповiдно.

  Функція Rmmw (x,y,xr,yr) використовується  для звернення до вiдеопам'ятi функцiй   Putsym, Putatr.   x,y - координати лiвого  верхнього куту прямокутної областi екрану.  xr, yr - розмiри областi по горизонталi i вертикалi вiдповiдно.

  Функцiя  Clrw(x1,y1,x2,y2,s,a) - використовується  для звернення до відеопам'ятi функцiй  Putsym,Putatr. x1, y1, x2, y2 - координати прямокутної областi. s,a - символ i атрибут вiдповiдно для заповнення областi екрану.

  Функцiя Fldrv (void) розглядає  побiтно байт атрибуту драйверу i може видавати iнформацiю у вiдповiдностi з значенням атрибуту. Слово атрибутiв   драйвера в старшiм розрядi мiстить признак символьного(1) чи блокового (0) влаштування. Інтерпрітацiя iнших розрядiв слова атрибутiв iстотно рiзна для символьних i блочних приладiв. Для символьних приладiв слово атрибутiв маї формат :

1   e   b 0   p 0 0 0 0   l 0 0   c   n   o   i,

а для блокових приладiв :

0   e   m 0   p 0 0 0 0   l 0 0 0 0   s 0,

де:           i -   драйвер   консолi запровадження;

                o -   драйвер   консолi висновку;

                n -   драйвер   нульового ( пустого ) влаштування;

                c -   драйвер   годин;

                l -   драйвер   пiдтримки  функцiй, впроваджених в DOS  3.2;

                p -   драйвер   виконує  операцiї   Open  /close;

                b -   драйвер   неibm - овського блокового влаштування;

                e -   драйвер   пiдтримки  функцiї   Ioctl;

                s -   драйвер   пiдтримки  32-бiтну адресації сектору;

                m -  драйвер   визначає  тип диску перевiркою 1-го байта   Fat.

Похожие материалы

Информация о работе