Команда SYNCHRONIZE BUFFER

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

Описание команды.

  • Байт 0

    В байт следует поместить код команды SYNCHRONIZE BUFFER, равный 10h.

  • Байт 1

    Состоит из двух частей. В первую часть (биты 7—5) помещают логический номер устройства (ЛНУ). В данное время этот параметр не используется и оставлен ради совместимости с предыдущими стандартами интерфейса SCSI, поэтому сюда следует записать нулевое значение. Вторая часть (биты 4—0) зарезервирована и не используется.

  • Байты с 2 по 4

    Зарезервированы и не используются.

  • Байт 5

    Служебный байт, завершающий команду. Не используется.

Когда все данные, находящиеся в буфере устройства (принтера), напечатаны, байт статуса после выполнения этой команды будет хранить значение SSCOMP, иначе говоря, команда завершится с ошибкой, которую необходимо будет обработать. Использование команды MODE SELECT позволит дополнительно проконтролировать такую ситуацию. Кроме того, поле SRB_TargStat структуры SRB_Execscsicmd будет хранить значение выполненной операции: STATUS_GOOD (операция успешно выполнена) или STATUS_CHKCOND (произошла ошибка). Приведем примеры работы с командой SYNCHRONIZE BUFFER. Напишем функцию, которая поможет гарантированно вывести на печать текущие данные (листинг 8.11).

Листинг 8.11. Пример использования команды SYNCHRONIZE BUFFER на Visual C++

На языке Visual Basic пример аналогичной функции будет выглядеть так, как показано в листинге 8.12.

Листинг 8.12. Пример использования команды SYNCHRONIZE BUFFER на Visual Basic

Как видно из примеров, работа с командой SYNCHRONIZE BUFFER не должна вызвать каких-либо затруднений. Этой командой можно завершить описание управляющих команд SCSI, поддерживающих принтеры.

 

 

2021-04-01

Google сообщил о запуске проекта Dunant

Проект Dunant, начатый в 2018 году, был запущен в эксплуатацию. Трансатлантический интернет-кабель соединяет США и континентальную Европу. Общая протяженность...

подробнее
2020-04-06

Новшества в обновленной Windows 10

Корпорация Microsoft завершила разработку обновления, в котором добавлено множество функций. Обновление содержит как доработку уже имеющихся систем, так...

подробнее

 

Все новости...

 

Научно-Техническое Объединение

Тел.: +7(4752) 55-95-86

E-mail:e-mail