[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]

Руководство по принтерам и печати


Термины, связанные с программой буферизации

Ниже приведены термины, относящиеся к программе буферизации.

Программа буферизации

Программа буферизации в базовой операционной системе - это набор программ, файлов конфигурации и файлов данных, которые:

Локальные и удаленные очереди программы буферизации и устройства программы буферизации

Очередь - это упорядоченный список запросов к определенному устройству. Устройства, например принтер, служат для поочередной обработки запросов. Каждая очередь обслуживается как минимум одним устройством; часто очереди обслуживаются несколькими устройствами.

Физические и виртуальные принтеры

Физический принтер - это печатающее устройство, подключенное к системе через параллельный или последовательный порт либо через сеть, например с помощью сетевого сервера терминалов. Если физический принтер подключен к системе через последовательный или параллельный порт, то драйвер принтера в ядре взаимодействует с аппаратным обеспечением принтера и предоставляет интерфейс между аппаратным обеспечением и виртуальным принтером.

Виртуальный принтер - это набор атрибутов и их значений, которые определяют высокоуровневый поток данных (такой, как ASCII или PostScript) и способ обработки этого потока. Этот набор не содержит информации о том, как физический принтер подключен к компьютеру и какой протокол применяется для побайтовой передачи данных на физический принтер или с него. Базовая программа piobe управляет обработкой задания печати с помощью информации из определения виртуального принтера. Физически наборы атрибутов и их значений хранятся в файле описания принтера.

Локальные и удаленные принтеры

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

Базовые программы буферизации

Базовая программа буферизации - это набор программ (конвейер), которые запускаются командой qdaemon и предназначены для управления помещенным в очередь заданием программы буферизации. Если базовая программа предназначена для очереди печати, то она, как правило, выполняет следующие действия:

Как правило, необходимости вручную запускать базовые программы принтера не возникает, хотя, например, компиляторы можно, очевидно, запускать и непосредственно из командной строки. Демон qdaemon запускает базовую программу и передает ей указанные имена файлов и управляющие флаги. Базовая программа взаимодействует с программой qdaemon через файл состояния, находящийся в каталоге /var/spool/lpd/stat. С помощью команды qchk или lpstat вы можете определить состояние очереди, в том числе (если речь идет о задании печати) состояние принтера, число напечатанных страниц и объем выполненной части задания в процентах.

В базовой операционной системе стандартной базовой программой буферизации, предназначенной для обработки локальных заданий печати, является программа piobe.

Фильтры форматирования

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

Фильтр форматирования использует файл описания виртуального принтера для обработки задания печати.

Задание программы буферизации

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

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

Существуют следующие типы заданий печати:

Принтеры

В операционной системе под принтером (графопостроителем) понимается специальный файл в каталоге /dev, соответствующий физическому принтеру (графопостроителю). Этот файл может применяться в командах перенаправления вывода (например, в команде cat Имя_файла > /dev/lp0) или в откомпилированных пользовательских программах. Конфигурацию драйвера принтера можно просмотреть и изменить с помощью команды splp. Прежде чем принтер станет доступным для команд программы буферизации, необходимо создать для него очередь печати.

qdaemon

qdaemon - это фоновый процесс, который выполняется под управлением процесса srcmstr. Процесс qdaemon запускается командой startsrc при включении системы. Несмотря на то что процесс qdaemon запускается командой startsrc и завершается командой stopsrc, взаимодействие с qdaemon возможно только с помощью сигналов, и поэтому qdaemon не отвечает на запрос команды lssrc.

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

В случае непредвиденного завершения процесса qdaemon он будет запущен повторно демоном srcmstr.

Примечание: Не пытайтесь завершить работу демона srcmstr, так как он управляет другими демонами, запущенными в системе.


[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]