Курсовая работа

«Драйвер для Windows»

  • 29 страниц
Содержание

Введение 4

Структура загружаемого драйвера 5

Связь драйвера с операционной системой 10

Инициализация драйвера 15

Hclient 17

СБОРКА ПРИМЕРА 19

Заключение 29

Введение

Фирмы-разработчики аппаратного обеспечения постоянно совершенст-вуют внешние устройства и другие узлы персонального компьютера. Постоян-но появляются новая периферийная аппаратура и новые модификации уже су-ществующих устройств. Старые устройства наделяются новыми возможностя-ми, новые делают такое, о чем раньше не приходилось и мечтать. Интуитивно ясно, что должна существовать какая-то программная прослойка между аппа-ратным и программным обеспечением, выполняющая "согласующие" и "уни-фицирующие" действия. Эта прослойка работает напрямую с аппаратурой, а прикладное (да и системное) программное обеспечение имеет дело только с этой интерфейсной прослойкой.

Операционная система MS-DOS, работающая на компьютерах фирмы IBM или совместимых с ними, тоже использует механизм драйверов. Однако драйверы MS-DOS не всегда обращаются напрямую к аппаратуре. Обычно они вызывают функции BIOS, и уже BIOS выполняет все действия по вводу/выводу. Конечно, BIOS содержит программы обслуживания только стандартных уст-ройств ввода/вывода, нестандартные устройства обслуживаются драйверами на-прямую. Использование BIOS как дополнительного интерфейса между драйвера-ми стандартных устройств и аппаратурой резко повышает "живучесть" MS-DOS на не вполне совместимых с IBM персональных компьютерах. И это действитель-но так - самая распространенная на сегодняшний день операционная система MS-DOS версии 3.30 работает на всех компьютерах, хоть сколько-нибудь совмести-мых с IBM PC. Это возможно благодаря тому, что производители совместимых компьютеров учитывают в программах BIOS все аппаратные особенности, и DOS "не видит" отличий. А прикладная программа - тем более.

Почему же этот способ не используется в операционных системах UNIX или OS/2? Дело в том, что к сожалению, программы BIOS не являются реенте-рабельными. Это не имеет значения для однозадачной MS-DOS, а мультизадач-ные операционные системы вынуждены сами организовывать обслуживание аппаратуры реентерабельным способом. (Существуют еще проблемы разделе-ния ресурсов между параллельно выполняющимися процессами, которые тоже не решаются в рамках BIOS). Таким образом, независимость аппаратного и программного обеспечения в DOS обеспечивается, с одной стороны, BIOS для стандартных устройств, с другой стороны - драйверами.

Пользователи могут легко дополнять операционную систему своими драйверами, составленными для нестандартных устройств. Возможна также за-мена стандартных драйверов, замена или расширение функций BIOS.

Фрагмент работы

Структура загружаемого драйвера

Иногда говорят, что драйверы - это разновидность COM-программ, но это не так. Скорее способ получения загрузочного модуля драйвера похож на способ получения программы в формате COM. Есть еще одно сходство драйве-ров и программ в формате COM (которое как раз и появляется из-за одинаково-го способа их получения) - загрузочные модули этих программ являются точ-ным отображением исходного текста на языке ассемблера без добавления ка-ких-либо управляющих блоков в начало файла, как это происходит в програм-мах формата EXE

Но, оказывается, управляющий блок в самом начале модуля драйвера имеется. Это так называемый заголовок драйвера. Только в отличие от про-грамм формата EXE, этот заголовок создается не редактором связи, а самим программистом и должен быть помещен в самое начало исходного текста про-граммы-драйвера.

При загрузке драйвера в память заголовок драйвера тоже помещается в оперативную память, и в нем операционная система производит некоторые из-менения, о которых мы еще будем говорить. Таким образом, можно говорить и о сходстве драйвера с программами в формате EXE, так как в начале загрузоч-ного модуля драйвера имеется управляющий блок.

Только этот управляющий блок в отличие от заголовка EXE-файла яв-ляется принадлежностью самой программы и загружается вместе с ней в па-мять. Заголовок EXE-программы используется при загрузке EXE-программы, но после загрузки операционная система убирает его из памяти. Не стоит пы-таться запускать драйвер как программу в формате COM, так как управление будет передано в область памяти, содержащую заголовок драйвера, а там нет правильных машинных команд. Поэтому обычно файлы драйверов имеют рас-ширения имени, отличные от COM или EXE. Чаще всего используются расши-рения SYS, DRV, иногда BIN. На самом деле расширение имени можно зада-вать любое, так как при описании драйвера в файле CONFIG.SYS указывается его полное имя.

Для драйвера никогда не создается префикс программного сегмента PSP. В начале исходного текста программы-драйвера не ставится директива ORG 100H, как это делается для COM-программы, так как не надо резервиро-вать место для PSP.

Что же представляет из себя загрузочный модуль драйвера?

Как уже было сказано, в начале модуля находится заголовок драйвера. Мы уже немного говорили о нем при описании векторной таблицы связи опе-рационной системы. Приведем формат заголовка:

Заключение

Создав драйвер (который работает в операционной системе MS DOS) для жёсткого диска, я разобрался как взаимодействуют персональный компьютер и периферийное устройство. Также я научился как заменять драйвер стандартного устройства,используя системный конфигурационный файл CONFYG.SYS, разобрался в стандартных процедурах и функциях, которые используются при написании драйвера, и получил навыки написания драйверов устройств.

Покупка готовой работы
Тема: «Драйвер для Windows»
Раздел: Информатика
Тип: Курсовая работа
Страниц: 29
Цена: 1300 руб.
Нужна похожая работа?
Закажите авторскую работу по вашему заданию.
  • Цены ниже рыночных
  • Удобный личный кабинет
  • Необходимый уровень антиплагиата
  • Прямое общение с исполнителем вашей работы
  • Бесплатные доработки и консультации
  • Минимальные сроки выполнения

Мы уже помогли 24535 студентам

Средний балл наших работ

  • 4.89 из 5
Узнайте стоимость
написания вашей работы

У нас можно заказать

(Цены могут варьироваться от сложности и объема задания)

Контрольная на заказ

Контрольная работа

от 100 руб.

срок: от 1 дня

Реферат на заказ

Реферат

от 700 руб.

срок: от 1 дня

Курсовая на заказ

Курсовая работа

от 1500 руб.

срок: от 3 дней

Дипломная на заказ

Дипломная работа

от 8000 руб.

срок: от 6 дней

Отчет по практике на заказ

Отчет по практике

от 1500 руб.

срок: от 3 дней

Решение задач на заказ

Решение задач

от 100 руб.

срок: от 1 дня

Лабораторная работа на заказ

Лабораторная работа

от 200 руб.

срок: от 1 дня

Доклад на заказ

Доклад

от 300 руб.

срок: от 1 дня

682 автора

помогают студентам

42 задания

за последние сутки

10 минут

время отклика