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

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


    Прохождения игр    
Demon's Souls |#13| Storm King
Demon's Souls |#12| Old Monk & Old Hero
Demon's Souls |#11| Мaneater part 2
Demon's Souls |#10| Мaneater (part 1)

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


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

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

Предыдущая страница Следующая страница
1 ... 63 64 65 66 67 68 69  70 71 72 73 74 75 76 ... 198
         определяется часами или каким-либо другим устройством в компьюте-
         ре. При определении требуемого временного интервала  надо  учиты-
         вать максимально возможную в любое время загрузку. Иначе в период
         пика загрузки могут быть потеряны данные, что неприемлемо.
              Подобно времени ответа, временной интервал может  изменяться
         от частей миллисекунды (или меньше), до нескольких минут.Разветв-
         ленная система сберегательных банков в  напряженное  время  ленча
         может иметь одну транзакцию в секунду. Оператор может печатать от
         5 до 10 символов в секунду. Система сканирования радара может по-
         сылать данные каждую миллисекунду. Справочная система базы данных
         поддерживает только случайные запросы.
              На таблице 5-1 приводятся типы реализаций, обычно используе-
         мые для приложений в реальном времени, в зависимости от запрошен-
         ного времени ответа. Заметим, что MS-DOS не включена в эту табли-
         цу,  так как не является общепринятой для приложений  в  реальном
         времени.

                                                         Таблица 5-1
                  Времена ответа и общепринятые реализации систем
                                 реального времени
         ДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
         Диапазон времен   ¦     Общепринятые реализации реального
              ответа       ¦                времени
         ДДДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
          10 нсек-100 нсек ¦Выделенная логика ECL, фиксированная программа
         100 нсек - 1 мксек¦Выделенная стандартная логика, программируемая
           1    - 100 мксек¦Быстрый процессор с выделенной программой
         100 мксек- 1 мсек ¦Микропроцессор с ядром в реальном времени
           1 мсек - 1 сек  ¦Микропроцессор в реальном времени
           1 мсек - выше   ¦Все какие угодно
         ДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД

               Использование MS-DOS для приложений реального времени

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

                               Быстродействие MS-DOS

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

                              Тактовая частота MS-DOS

              Во время написания этой книги   MS-DOS  доступна  для  шести
         процессоров семейства 8086: 8088, 8086, 80188, 80286 и 80386. Са-
         мый медленный из них 8088,  а самый быстрый - 80386 (и самый мощ-

                                      - 5-7 -
         ный). Процессорам семейства 8086 доступна различная тактовая час-
         тота,  как показано в таблице  5-2.  Тактовая  частота  4.77  МГц
         означает, что генерируется 4.77 миллиона тактов в секунду. Такто-
         вая частота определяет быстродействие процессора:  чем она  выше,
         тем быстрее  процессор. Заметим однако, что процессор 80286 быст-
         рее, чем 8086, имеющий такую же тактовую частоту.
              В связи с тем, что процессор 8088 самый медленный из семейс-
         тва 8086,  все временные характеристики в этой главе  даются  для
         процессора 8088,  имеющего тактовую частоту 4.77  МГц.  Если  Ваш
         компьютер имеет большее быстродействие, Вы сможете получить ответ
         быстрее.  Так как семейство процессоров  8086  имеет  возможность
         предварительной выборки команд из очередей,  действительное время
         выполнения некоторой последовательности команд  может  отличаться
         от времени выполнения, суммированного из отдельных команд.

                                                         Таблица 5-2
                      Тактовая частота для MS-DOS компьютеров
         ДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДД
                         ¦                           ¦
         Процессоры 8086 ¦ Наименование компьютера   ¦Тактовая частота
         ДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДД†ДДДДДДДДДДДДДДДДД
                         ¦                           ¦
           8088          ¦ IBM PC                    ¦  4.77,8 МГц
           8086          ¦ IBM PC Compatible         ¦  8,12 МГц
           80188/186     ¦ IBM PC Compatible         ¦  8,10 МГц
           80286         ¦ IBM PC AT (режим 8086)    ¦  8,10 МГц
           80386         ¦ IBM PC AT (386) (режим 8086) 16,20,25 МГц
         ДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДД

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

              mov     ah,2ah       ; считывание даты
              int     21h          ; вызов DOS
              mov     year,cx      ;  год в CX (от 1980 до 2099)
              mov     month,dh     ; месяц в DH (от 1 до 12)
              mov     day,dl       ; день в DL (от 1 до 31)

              В приведенной  программе день недели возвращается в AL.  Как
         видно из программы,  для вызова MS-DOS или  POM-BIOS  выполняются
         следующие шаги:
              - Занесение в регистры соответствующих кодов команд и  пара-
         метров.
              - Осуществление  прерывания,   соответствующего   вызываемой
         функции.
              - Возврат,  считывание возвращаемых параметров и статуса ин-
         формации из регистров.
              Для считывания времени из MS-DOS используется прерывание int

                                      - 5-8 -
         21h с кодом команды AH=2ch, как показано в следующей программе:

              mov     ah,2ch       ; cчитывание времени
              int     21h          ; вызов DOS
              mov     hours,ch     ; часы в CH (от 0 до 23)
              mov     mins,cl      ; минуты в CL (от 0 до 59)
              mov     secs,dh      ; секунды в DH (от 0 до 59)
              mov     msec,dl      ; 10 мсек в DL (от 0 до 99)

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

                   Передача данных в операционной системе MS-DOS

              Во время работы с системами реального времени  компьютеру  с
         операционной  системой  MS-DOS  приходится  обмениваться  данными
         внешней средой. Данные, подлежащие передаче, делятся на три кате-
         гории:
            - данные,  состоящие из одного бита, указывающего текущее сос-
              тояние  устройств,  которые могут находиться в одном из двух
              состояний,
            - данные,  представляющие  собой цифровое выражение аналоговых
              сигналов,  выдаваемых аналогово-цифровыми преобразователями,
            - цифровая информация, поступающая от оборудования другого ви-
              да (которое в свою очередь принимало данные  одним  из  трех
              указанных способов).

                         ЪДДДДДДД¬
                         ¦ Порты ¦
                         АДДДВДДДЩ
                             ¦
                ЪДДДДДДДДДДДДБДДДДДДДДДДДДД¬
                ¦                          ¦
          ЪДДДДДБДДДДДДДДДД¬      ЪДДДДДДДДБДДДДДДДДД¬
          ¦   Порты цент-  ¦      ¦ Порты операцион- ¦
          ¦   рального про-¦      ¦ ной системы DOS  ¦
          ¦   цессора CPU  ¦      ¦                  ¦
          АДДДДДДДДДДДДДДДДЩ      АДДДДДДДДВДДДДДДДДДЩ
           Доступ к ним ве-                ¦
           дется по коман-                 ¦
           дам IN и OUT           ЪДДДДДДДДБДДДДДДДДД¬
                                  ¦                  ¦
                                  ¦                  ¦
                          ЪДДДДДДДБДДДДДД¬    ЪДДДДДДБДДДДДДД¬
                          ¦Последователь-¦    ¦ Параллельные ¦
                          ¦ ные порты    ¦    ¦ порты        ¦
                          АДДДДДДДДДДДДДДЩ    АДДДДДДДДДДДДДДЩ
                          Доступ к ним ве-    Доступ к ним ве-
                          дется по обраще-    дется по обраще-
                          ниям к функциям     ниям к функциям
                          операционной сис-   операционной сис-
                          темы DOS и системы  темы DOS и системы
                          ПЗУ-BIOS            ПЗУ-BIOS

                      Рис. 5-6. Типы портов и методы доступа


                                      - 5-9 -

              "Порты" используются  операционной системой MS-DOS для пере-
         дачи данных.  Данные,  считываемые через порт, представляют собой
         данные внешней среды.  Данные,  поступающие в порт (иначе - "дан-
         ные,  записываемые в порт"), влияют (управляют) на внешнюю среду.
         В  операционной системе MS-DOS существует два типа портов:  порты
         центрального процессора CPU и порты операционной  системы MS-DOS.
         На рисунке 5-6 представлены два типа портов и методы,  используе-
         мые для доступа к этим портам.  Физически эти порты могут  выгля-
         деть  одинаково.  И  только по методу доступа их можно различить.
         Порты центрального процессора CPU называются  также  "логическими
         портами".
              Порты центрального процессора CPU представляют передачу дан-
         ных низкого уровня. Обращение к ним происходит непосредственно от
         процессора. Каждый порт центрального процессора CPU идентифициру-
         ется  своим  адресом.  Может существовать до 65536 разных портов.
         Операционная система MS-DOS использует некоторые порты  централь-
         ного процессора CPU для программируемого таймера и для таких спе-
         цифических целей,  как общение с клавиатурой и  обмен  данными  с
         дисками. Другие порты центрального процессора CPU могут использо-
         ваться пользователем для других целей.  Основной способ обращения
         к этим портам заключается в применении команд IN и OUT языка  Ас-
         семблер. По команде IN происходит считывание одного байта или од-
         ного слова из порта.  По команде WRITE происходит  запись  одного
         байта или одного слова в порт.
              В операционной  системе MS-DOS порт 61h центрального процес-
         сора CPU используется для говорящего устройства.  Второй  младший
         бит  (бит  1) используется для управления звуком,  поступающим от
Предыдущая страница Следующая страница
1 ... 63 64 65 66 67 68 69  70 71 72 73 74 75 76 ... 198
Ваша оценка:
Комментарий:
  Подпись:
(Чтобы комментарии всегда подписывались Вашим именем, можете зарегистрироваться в Клубе читателей)
  Сайт:
 

Реклама