Главная · Поиск книг · Поступления книг · Top 40 · Форумы · Ссылки · Читатели

Настройка текста
Перенос строк


    Прохождения игр    
Roman legionnaire vs Knight Artorias
Ghost-Skeleton in DSR
Expedition SCP-432-4
Expedition SCP-432-3 DATA EXPUNGED

Другие игры...


liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня
Rambler's Top100
Образование - Различные авторы Весь текст 2311.07 Kb

Программирование и кодирование

Предыдущая страница Следующая страница
1 ... 171 172 173 174 175 176 177  178 179 180 181 182 183 184 ... 198
                ции.

              2. Функция   44h   ("Управление   устройством   ввода-вывода
                 [IOCTL])
                Эта функция  имеет  два  новых  дополнительных параметра в
                операционной системе MS-DOS версии  3.00,  предназначенных
                для  поддержания драйверов устройств (регистр AL = 08h для
                проверки сменного носителя и регистра BL = 0Bh для измене-
                ния счетчика количества попыток исправления сбоя в блочном
                устройстве). В операционной системе MS-DOS версии 3.10 бы-
                ли  добавлены еще два параметра для проверки переадресации
                в сети (при значении регистра AL = 09h происходит проверка
                устройства, в то время, как при значении регистра AL = 0Ah
                происходит проверка управления файлом или устройством).

              3. Функции 5Eh  и 5Fh
                Эти функции  поддерживаются  только  в  версиях 3.1 и выше
                операционной системы MS-DOS. Они используются только в се-
                тевых средах. Каждая функция делится на несколько подфунк-
                ций.  Все они загружаются в регистр AХ в виде четырехзнач-
                ных  шестнадцатиричных  (16-битовых) номеров функций,  две
                последние цифры которых указывают конкретную  функцию (или
                подфункцию).  Функция  5E0h  используется для поиска имени
                вычислительной машины ,  подсоединенной к той же сети, что
                и вычислительная машина, производящая обращение к функции.
                Функция 5E0h используется  для  инициализации  печатающего
                устройства (принтера),  подсоединенного к сети и совместно
                используемого несколькими компьютерами. Функции  5F02h  по
                5F03h  используются  для  управления переадресации  данных
                в сети: функция 5F03h  меняет адрес  устройства,   функция
                5F02h ведет поиск информации по переадресации,  а  функция
                5F04h отменяет процедуру переадресации.


                                      - 13-24 -

                Группа функций работы с каталогом (39h - 3Bh, 47h)

              Эта группа  включает в себя функции,  начиная с 39h по 3Bh и
         функцию 47h. Эти функции существуют в версиях операционной систе-
         мы MS-DOS,  начиная с 2.00 и выше.  Эти функции выполняют команды
         работы с  каталогом:  функция  39h  создает  подкаталог  (команда
         MKDISK  или  команда  MD),  функция  3Al удаляет каталог (команда
         RMDIR или команд RD) и функция 3Bh меняет текущий каталог на дру-
         гой (команда CHDIR или команда CD).  Функция 47h используется для
         поиска информации в текущем каталоге (как если бы команда CD бы-
         ла введена без параметров).


                  Группа управления памятью/процессом (48h - 4Bh)

              Для управления происходящих в системе процессов  и  управле-
         ния памятью могут быть использованы некоторые функции,  добавлен-
         ные в операционную систему MS-DOS версии 2.00.  Большинство функ-
         ций в этой группе имеют дело с управлением распределением памяти.
         Последняя из указанных функций 4Bh используется программами,  ко-
         торые  вызывают  и загружают другие программы или оверлейные сег-
         менты программ. Отметим, что функция 4Сh ("Завершение процесса" -
         EXIT) должна  всегда  использоваться  в программах,  вызываемых и
         загружаемых функцией 4Bh.
              В настоящее  время известно,  что поддержание полной или ра-
         зумной степени совместимости может быть сложной и довольно безна-
         дежной задачей.  Советуем вам на практике заранее определить нуж-
         ный  вам  уровень  совместимости,   а   затем   выбрать   функции
         операционной системы MS-DOS, которые вы будете использовать.

                                    Коды ошибок

              Коды, генерируемые операционной системой MS-DOS,  типы  этих
         кодов и способ работы с ними существенно изменились с момента по-
         явления первых версий операционной системы MS-DOS.  Изменения эти
         связаны   не только с появлением новых кодов ошибок в более позд-
         них версиях, но также и с появлением новых механизмов сообщения о
         них. Ниже описываются различия в управлении ошибками между разны-
         ми версиями операционной системы MS-DOS.

           Коды критических и тяжелых ошибок, полученных при прерывании
                                     "Int 24h"

              В операционной  системе MS-DOS версии 1.0 процессом возврата
         кода ошибок управляет исключительно вектор прерывания  "int 24h".
         Все эти коды ошибок представляют собой ошибки, связанные со сбоя-
         ми аппаратных средств и считаются серьезными или  критическими по
         своей природе.  Эти же самые коды и механизм выдачи отчетов о них
         поддерживаются во всех более поздних версиях, несмотря на то, что
         некоторые  новые коды ошибок появлялись уже в версии 2.0 операци-
         онной системы MS-DOS.
              Для того, чтобы прикладная программа могла взаимодействовать
         с механизмом выдачи отчетов об ошибках,  исходный текст программы
         должен сохранить вектор прерывания "int 24h" и заменить его одним
         из векторов,  указывающим на  стандартную  программу  исправления
         ошибок.  Прежде,  чем произойдет завершение работы программы, ис-

                                      - 13-25 -
         ходный вектор прерывания "int 24h"  должен  быть  восстановлен  в
         свое  исходное  состояние.  Указанный механизм при его работе под
         управлением операционной системы MS-DOS версии 2.0 может  возвра-
         щать до семи кодов, а под управлением операционной системы MS-DOS
         версии 3.0 и выше.
              В таблице 13-3 перечисляются коды и указывается,  которые из
         них поддерживаются операционной системой MS-DOS только версий 2.0
         и выше.  Коды критических ошибок,  представленные в таблице 13-3,
         могут  также быть найдены при помощи другого механизма выдачи от-
         четов об ошибках,  представленного в версии 2.0 операционной сис-
         темы MS-DOS.  При работе под управлением этой версии операционной
         системы определенные обращения к функциям возвращают  коды ошибок
         при возникновении ошибочных ситуаций. Этот механизм описывается в
         разделе, следующем за таблицей 13-3.


             Коды возврата ошибок обращения к функциям (только версий
                      2.0 и выше операционной системы MS-DOS)

              Начиная с версии 2.0 операционной системы  MS-DOS  некоторые
         вызываемые  функции возвращают коды ошибок в определенных регист-
         рах,  если ошибка возникла в результате выполнения функции.  Если
         ошибка произошла, признак переполнения устанавливается в значение
         "1" и соответствующий регистр следует проверить (если   поддержи-
         вается этой функцией) на наличие в нем кода ошибки.  Если признак
         переполнения пуст, вы можете предполагать, что ошибок не возника-
         ло.  Критические или тяжелые ошибки, описанные выше (и определяе-
         мые при помощи механизма прерывания "int  24h"),  также  выдаются
         этим механизмом, несмотря на то, что при этом используются разные
         значения кодов.  При работе под управлением операционной  системы
         MS-DOS версий с 2.0 по 3.1 следующие функции возвращают коды оши-
         бок в регистре Ax, если признак переполнения устанавливается пос-
         ле их выполнения:  с 38h по 4Bh, 4h, 4Fh, 56h, 57h с 5Ah по 5Ch и
         с 5h по 5h.  Al - половина регистра Ax всегда должна  проверяться
         на наличие в ней кода ошибок, потому  что некоторые функции  воз-
         вращают в AH-половине другую информацию.  Для всех  этих  функций
         наличие нуля ("0") в регистре AL говорит об отсутствии ошибок.
              В таблице  13-4  перечислены все коды ошибок,  которые могут
         быть возвращены после обращения к функции. Версия (версии) опера-
         ционной системы MS-DOS, которая обеспечивает выдачу каждого кода,
         также указывается в таблице.  Отметим также, что коды ошибок с 19
         по  31 соответствуют кодам ошибок прерывания "int 24h" с 0 по Ch,
         а код ошибки 34 соответствует коду ошибки Fh прерыванию int 24h.


                                      - 13-26 -
                                                         Таблица 13-3
                 Критические коды ошибок (по прерыванию "Int 24h")
         ДДДДДДВДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
               ¦                     ¦Версия операционной системы MS-DOS
          Код  ¦     Описание        ГДДДДДДДДВДДДДДДДДВДДДДДДДДВДДДДДДД
         ошибки¦                     ¦  1.XX  ¦  2.XX  ¦  3.XX  ¦  4.XX
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДД†ДДДДДДДДБДДДДДДДДБДДДДДДД
          0    ¦Попытка записи на    ¦        ¦
               ¦защищенный от записи ¦  Да    ¦
               ¦диск                 ¦        ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          1    ¦Неизвестное          ¦  Нет   ¦
               ¦устройство           ¦        ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          2    ¦Дисковод не готов    ¦  Да    ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          3    ¦Неизвестная команда  ¦  Нет   ¦             Да
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          4    ¦Ошибка данных (CRC)  ¦  Да    ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          5    ¦Неправильная длина   ¦        ¦
               ¦запроса              ¦  Нет   ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          6    ¦Ошибка поиска        ¦  Да    ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          7    ¦Неизвестный тип      ¦        ¦
               ¦носителя             ¦  Нет   ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          8    ¦Сектор  не  найден   ¦  Да    ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          9    ¦Конец бумаги в       ¦        ¦             Да
               ¦принтере             ¦  Нет   ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          A    ¦Ошибка записи        ¦  Да    ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          B    ¦Ошибка чтения        ¦  Нет   ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДґ
          C    ¦Общий сбой           ¦  Да    ¦
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДД†ДДДДДДДДВДДДДДДДДВДДДДДД
          D    ¦Не определено        ¦ /////  ¦ /////  ¦ /////  ¦ /////
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДД†ДДДДДДДД†ДДДДДДДД†ДДДДДД
          E    ¦Не определено        ¦ /////  ¦ /////  ¦ /////  ¦ /////
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДБДДДДДДДД†ДДДДДДДДБДДДДДД
          F    ¦Неправильная смена   ¦       Нет       ¦       Да
               ¦диска                ¦                 ¦
         ДДДДДДБДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДД



                                      - 13-27 -
                                                         Таблица 13-4
                Коды ошибок обращения к функциям (только для версий
                     2.0 и старше операционной системы MS-DOS)
         ДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДД
          Код  ¦                           ¦    Версия операционной
         ошибки¦                           ¦       системы MS-DOS
         (шест-¦     Описание              ГДДДВДДДВДДДВДДДВДДДВДДДВДДД
         надц.)¦                           ¦2.0¦2.1¦3.0¦3.1¦3.2¦3.3¦4.0
         ДДДДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДД†ДДДБДДДБДДДБДДДБДДДБДДДБДДД
Предыдущая страница Следующая страница
1 ... 171 172 173 174 175 176 177  178 179 180 181 182 183 184 ... 198
Ваша оценка:
Комментарий:
  Подпись:
(Чтобы комментарии всегда подписывались Вашим именем, можете зарегистрироваться в Клубе читателей)
  Сайт:
 

Реклама