Волгоградский государственный технический университет кафедра ЭВМ и систем




НазваниеВолгоградский государственный технический университет кафедра ЭВМ и систем
страница1/7
Дата конвертации11.02.2016
Размер0.75 Mb.
ТипМетодические указания
источникhttp://evm.vstu.ru/files/osmeth1.rtf
  1   2   3   4   5   6   7
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ


ВОЛГОГРАДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ


КАФЕДРА ЭВМ И СИСТЕМ


Управление вводом выводом и дисковая подсистема MS-DOS


Методические указания к лабораторной работе № 1

по курсу "Операционные системы"


Волгоград 2005


УДК 681.31


Управление вводом выводом и дисковая подсистема MS-DOS: Методические указания к лабораторной работе № 1 по курсу "Операционные системы" /Cост. Деревенсков С.О., Стрельников О. И.; Волгоград. гос. техн. ун-т. – Волгоград, 2005. – 28 с.


Содержатся сведения, необходимые для изучения студентами подсистемы ввода/вывода и структуры дисков ОС MS DOS и освоения основных приемов программирования операций ввода/вывода и дисковых операций под управлением MS DOS. Приведены варианты заданий к лабораторным работам.

Предназначены для студентов, обучающихся по направлению 5528 "Информатика и вычислительная техника" и специальности 2201 "Вычислительные машины, комплексы, системы и сети" всех форм обучения.


Табл. 14. Библиогр. 4 назв.


Рецензент Игнатьев А.Н.


Печатается по решению редакционно-издательского совета Волгоградского государственного технического университета


ISBN


© Деревенсков С. О., 2005

© Стрельников О. И., 2005

© Волгоградский государственный технический университет, 2005

В В Е Д Е Н И Е


Несмотря на бурное развитие в настоящее время мультизадачных операционных систем с графическим интерфейсом, таких как ОС семейства WINDOWS, и ОС семейства UNIX (в том числе Linux) с оконной системой X Window, интерес пользователей персональных компьютеров и программистов к ОС MS DOS остается достаточно высоким. Это связано с наличием большого числа ранее выпущенных программ под MS DOS, которые до сих пор успешно используются в системах, не требующих мультизадачности, например, в торговых терминалах. Разработчики современных ОС включают в свои изделия эмуляторы MS DOS, обеспечивающие выполнение сеансов DOS в мультизадачной среде. DOS также хорошо подходит в качестве среды для тестирования аппаратуры, поскольку способна работать в реальном режиме микропроцессора или в нулевом кольце защиты процессора в защищенном режиме. До сих пор поддерживается проект свободно распространяемой версии DOS – FreeDOS.

Предлагаемый курс лабораторных работ ориентирован на изучение студентами внутренней структуры MS DOS, принципов работы ее основных подсистем, способов и приемов программирования с использованием интерфейса прикладных программ (API) MS DOS. Лабораторные работы посвящены изучению подсистемы ввода/вывода, файловой системы, структуры дисков, подсистем управления процессами и оперативной памятью. Изучаются способы создания резидентных программ и драйверов устройств в MS DOS. Материал, включенный в настоящие методические указания, основан на последней версии MS DOS, выпущенной в качестве самостоятельного продукта – MS DOS 6.22.

Приведенные в настоящих указаниях варианты заданий к лабораторным работам ориентированы на программирование на языке ассемблер (Turbo Assembler фирмы Borland или подобный) как языке, позволяющем наиболее просто получить доступ к API MS DOS и элементам ее внутренней структуры. Предполагается, что студенты имеют навык программирования на языке ассемблер и отладки программ, написанных на этом языке.


Л А Б О Р А Т О Р Н А Я Р А Б О Т А № 1


Управление вводом выводом и дисковая подсистема MS-DOS


Цель работы - изучение подсистемы ввода/вывода и структуры дисков ОС MS DOS, основных приемов программирования операций ввода/вывода под управлением MS DOS и основных приемов программирования с использованием элементов структуры диска.


1. Основные сведения


Подсистему ввода/вывода MS DOS образуют внутренние и внешние (загружаемые) драйверы устройств и обработчики соответствующих функций DOS (функций прерывания 21h). Часто к подсистеме ввода/вывода относят также обработчики прерываний BIOS, связанные с конкретными устройствами.

С точки зрения MS DOS, ввод и вывод всегда осуществляются на некоторое логическое устройство, при этом DOS поддерживает общие операции с любым устройством, независимо от его физической природы. Для связи с устройствами используются вызовы функций прерывания 21h, описание которых приведено в таблице 1. В таблице 2 приведены коды ошибок, возвращаемые DOS прикладной программе, если выполнить запрашиваемую операцию невозможно.

Каждому логическому устройству (или группе устройств) соответствует драйвер, который должен быть размещен в ОЗУ и проинициализирован в процессе загрузки DOS. В состав DOS входят внутренние драйверы следующих устройств:

NUL - пустое устройство;

COM1 (AUX1) - первый последовательный порт;

COM2–COM4 - 2–4 последовательные порты;

CON - консоль оператора;

PRN (LPT1) - порт принтера (1 параллельный порт);

LPT2–LPT3 - 2 и 3 параллельные порты;

CLOCK$ - системные часы;

A: ... Z: - накопители на МД.

Пользователь имеет возможность загрузить внешние драйверы других устройств, включив их в файл config.sys.

Для управления логическими устройствами DOS присваивает каждому устройству идентификатор - дескриптор. При работе с файлами каждому файлу присваивается собственный дескриптор. Фактически дескриптор представляет собой номер элемента в специальной системной таблице файлов (SFT), соответствующего устройству (файлу). SFT содержит 56-байтные управляющие блоки DFCB, в которых хранится основная информация об устройстве (файле).

Операция открытия (функция DOS 3Dh) помещает соответствующий DFCB в SFT. Число одновременно открытых устройств (файлов) ограничено и по умолчанию равно 8. Функция DOS 67h позволяет изменить максимальное число одновременно открытых устройств (файлов) для текущего процесса от 20 до 255 (если достаточно памяти). Аналогичные действия выполняются командой FILES из config.sys. После открытия можно выполнять операции чтения/записи с помощью функций DOS 3Fh и 40h. Функция DOS 46h копирует блок DFCB, определяемый заданным дескриптором, на место блока DFCB, определяемого перенаправляемым дескриптором, что позволяет перенаправлять ввод/вывод с одного устройства (файла) на другое. Функция DOS 68h принудительно сбрасывает все внутренние буферы обмена DOS, связанные с устройством (файлом), на физическое устройство. Операция закрытия (функция DOS 3Eh) выполняет необходимые действия по завершению обмена и освобождает соответствующий блок DFCB. Для обеспечения сохранности данных и корректной работы DOS прикладная программа должна закрыть все открытые ею устройства (файлы) перед завершением работы.

В процессе загрузки DOS открывает пять стандартных устройств, заносит соответствующие им DFCB в начало SFT и присваивает устройствам предопределенные дескрипторы:

0 - стандартное устройство ввода (CON);

1 - стандартное устройство вывода (CON);

2 - стандартное устройство вывода информации об ошибке(CON);

3 - стандартное последовательное устройство (AUX, COM1);

4 - стандартный принтер (PRN, LPT1).

Таблица 1

Функции DOS (INT 21h) ввода/вывода на логическое устройство

Функция

Вход

Выход

Открытие

AH = 3Dh

DS:DX - адрес строки с именем устройства

AL = режим доступа:

бит 7 - флаг наследования (0/1 - дескриптор наследуется/не наследуется дочерним процессом);

биты 4-6 - режим разделения ( в сети )

(000-режим совместимости,

001-запрещен любой доступ,

010-запрещена запись ,

011-запрещено чтение ,

100-разрешен любой доступ)

бит 3 = 0 - резерв

биты 0-2 - вид доступа

(000 - чтение ,

001 - запись ,

010 - чтение и запись)

CF=0 - AX = дескриптор

устройства

CF=1 - AX = код ошибки

Закрытие

AH = 3Eh

BX = дескриптор устройства

CF=0 - успешное

выполнение

CF=1 - АХ = код ошибки

Чтение

AH = 3Fh

BX = дескриптор открытого

устройства

CX = количество читаемых

байт

DS:DX = указатель на буфер

обмена

CF=0 - AX = фактическое

количество прочитанных

байт

CF=1 - АХ = код ошибки

Запись

AH = 40h

BX = дескриптор открытого

устройства

CX = количество записываемых байт

DS:DX = указатель на буфер

обмена

CF=0 - AX = фактическое

количество записанных

байт

CF=1 - АХ = код ошибки

Перенаправить

дескриптор

AH = 46h

BX = дескриптор устройства

СХ = перенаправляемый

дескриптор

CF=0 - успешное

выполнение

CF=1 - АХ = код ошибки

Изменить

число дескрипторов

для текущего процесса

AH = 67h

BX = число дескрипторов

(от 20 до 255)

CF=0 - успешное

выполнение

CF=1 - АХ = код ошибки

Сбросить

буферы на

устройство

AH = 68h

BX = дескриптор устройства

CF=0 - успешное

выполнение

CF=1 - АХ = код ошибки


Таблица 2

Коды ошибок DOS

К о д

О п и с а н и е

01h

Указан неправильный код функции

02h

Устройство (файл) не найдены

03h

Путь не найден

04h

Слишком много открытых файлов

05h

Доступ запрещен

06h

Неправильный идентификатор (дескриптор)

07h

Разрушен блок управления памятью

08h

Недостаточно памяти

09h

Неправильный адрес блока памяти

0Ah

Неправильная среда

0Bh

Неправильный формат

0Ch

Неправильный доступ

0Dh

Неправильные данные

0Eh

Зарезервировано

0Fh

Ошибка при указании диска

10h

Невозможно удалить текущий каталог

11h

Другое устройство

12h

Больше нет файлов

Рассмотренные функции DOS являются универсальными и обеспечивают выполнение минимально необходимых операций ввода/вывода. Однако DOS имеет дополнительный набор функций по управлению конкретными типами устройств ввода/вывода.


  1   2   3   4   5   6   7

Похожие:

Волгоградский государственный технический университет кафедра ЭВМ и систем iconВолгоградский государственный технический университет кафедра ЭВМ и систем
Подсистема управления процессами ms-dos: Методические указания к лабораторной работе №2 по курсу "Операционные системы" /Cост. Деревенсков...
Волгоградский государственный технический университет кафедра ЭВМ и систем iconПермский Государственный Технический Университет Кафедра государственного управления и истории История создания ос linux
План
Волгоградский государственный технический университет кафедра ЭВМ и систем iconКарциноидные опухоли легких: вопросы диагностики, классификации и варианты хирургического лечения
Волгоградский государственный медицинский университет,кафедра онкологии с курсом онкологии фув
Волгоградский государственный технический университет кафедра ЭВМ и систем iconНижегородский Государственный Технический Университет Кафедра: ”Инженерная экология, охрана труда ”
Чрезвычайные ситуации антропогенного происхождения связанные с промышленными выбросами в окружающую среду на территории Нижегородской...
Волгоградский государственный технический университет кафедра ЭВМ и систем iconМосковский автомобильно-дорожный институт (государственный технический университет) утверждаю проректор по учебной работе
Московский автомобильно-дорожный институт (государственный технический университет)
Волгоградский государственный технический университет кафедра ЭВМ и систем iconПрограмма вступительных испытаний
Значение и содержание дисциплины "Архитектура эвм, систем, сетей" и связь ее с другими общепрофессиональными и специальными дисциплинами....
Волгоградский государственный технический университет кафедра ЭВМ и систем iconФилософия
Пятигорский филиал гбоу впо «Волгоградский государственный медицинский университет» мз РФ
Волгоградский государственный технический университет кафедра ЭВМ и систем iconПатентам и товарным знакам (19)
Волгоградский государственный архитектурно-строительный университет (Волггасу) (RU)
Волгоградский государственный технический университет кафедра ЭВМ и систем iconРоссийской Федерации Новосибирский Государственный Технический Университет Кафедра прикладной математики
Проверить, является ли заданный граф транзитивным, т е для любых трёх вершин u, V и w выполняется условие: если u и w, а также V...
Волгоградский государственный технический университет кафедра ЭВМ и систем icon«Сети ЭВМ и средства коммуникаций»
На тему: 3 Основные виды архитектур эвм, микро-эвм и пк. Эвм и мультимедиа. 4 Состав устройств, структура и порядок функционирования...
Разместите кнопку на своём сайте:
Документы


База данных защищена авторским правом ©kzdocs.docdat.com 2012
обратиться к администрации
Документы
Главная страница