Главная  Радио и связь 

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 [ 49 ] 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

одиночных клавиш и поэтому распознаются сразу. Команды START-EDIT требуют нажатия нескольких клавиш и, следовательно, нескольких стадий распознавания. Конечный автомат процессора команд необходим для того, чтобы предотвратить редактирование новой формы, пока не будет завершено печатание предыдущей. Событиями, вызывающими изменение состояния конечного автомата, являются получение команды START-EDIT, прием команды NEXT-FIELD, когда заполнено последнее поле формы, и поступление сигнала уведомления об окончании печати. Казалось бы, уведомление о новом диапазоне номеров строк страницы для печати должно тоже считаться отдельным событием. Однако на самом деле оно является прямым результатом набора команды NEXT-FIELD и потому обрабатывается как часть этого события. Назначение пунктирных линий на схеме конечного автомата процессора команд поясняется ниже.

Одно из наиболее неприятных обстоятельств, которое может возникнуть при функционировании интеллектуальной рабочей станции,- это отсутствие реакции устройства на нажатие кла-

Редактирование

Печать


(а) Схема взаимрд?йС1Ви при п?ч8ТИ строк страницы,



Нажатие клавиш (к1

Запрос очередных

строк


Диапазон номеров строк страницы N, N 1

•\{б) Внутренний потокданных дешифратора событий

Рис. 4.23. Детальное представление ИПГ.

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

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



154 Глаза 4

Начало


(3} Состояния распознаватвля команд ,


Команда Свдзктирования

Выходнан форма

к . Конец

Команда интервала

Продолжения ожмданил


Команда освобождения

(б) Состояния процессора команд,

Рис. 4.24. Схема конечного автомата для дешифратора событий.

редь потока данных, позволяет отложить принятие решений по этим существенным организационным деталям. Поэтому решения, уже принятые ранее в разд. 4.5.2, вполне можно было бы отложить до завершения построения схемы потока данных.

4.5.4. Структурная схема взаимодействий при фоновой печати

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



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 [ 49 ] 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104


0.0068