KR20080059038A - 정보 처리 장치, 잡 처리 방법 및 기억 매체 - Google Patents

정보 처리 장치, 잡 처리 방법 및 기억 매체 Download PDF

Info

Publication number
KR20080059038A
KR20080059038A KR1020070119926A KR20070119926A KR20080059038A KR 20080059038 A KR20080059038 A KR 20080059038A KR 1020070119926 A KR1020070119926 A KR 1020070119926A KR 20070119926 A KR20070119926 A KR 20070119926A KR 20080059038 A KR20080059038 A KR 20080059038A
Authority
KR
South Korea
Prior art keywords
print
connection
job
devices
manager
Prior art date
Application number
KR1020070119926A
Other languages
English (en)
Other versions
KR101197915B1 (ko
Inventor
하야또 마쯔가시따
Original Assignee
캐논 가부시끼가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 캐논 가부시끼가이샤 filed Critical 캐논 가부시끼가이샤
Publication of KR20080059038A publication Critical patent/KR20080059038A/ko
Application granted granted Critical
Publication of KR101197915B1 publication Critical patent/KR101197915B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1207Improving or facilitating administration, e.g. print management resulting in the user being informed about print result after a job submission
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/126Job scheduling, e.g. queuing, determine appropriate device
    • G06F3/1261Job scheduling, e.g. queuing, determine appropriate device by using alternate printing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/126Job scheduling, e.g. queuing, determine appropriate device
    • G06F3/1263Job scheduling, e.g. queuing, determine appropriate device based on job priority, e.g. re-arranging the order of jobs, e.g. the printing sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1273Print job history, e.g. logging, accounting, tracking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

다수(예를 들면, 몇 백대)의 인쇄 디바이스들을 병행하여 감시하는 것은 처리 부하가 매우 커진다. 또는, 이 감시는 감시 컴퓨터의 비용을 현저하게 상승시킨다. 접속 관리부는, 인쇄 디바이스들의 수보다도 적은 접속수 내에서 순차적으로 인쇄 디바이스들의 상태를 감시한다. 한편, 전송 관리부는, 인쇄 디바이스들의 수보다도 적은 접속수 내에서 순차적으로 인쇄 디바이스들에 인쇄 잡을 전송한다. 상태 감시 인쇄 디바이스들은, 인쇄 디바이스들의 상태 감시와 인쇄 잡들의 전송 종료를 동기시키지 않고, 즉, 인쇄 잡들의 전송 종료를 대기하지 않고, 순차적으로 전환된다.
Figure P1020070119926
인쇄 디바이스, 감시, 감시 큐, 접속 관리부, 전송 관리부

Description

정보 처리 장치, 잡 처리 방법 및 기억 매체{INFORMATION-PROCESSING APPARATUS, METHOD AND STORAGE MEDIUM OF PROCESSING JOBS}
본 발명은 컴퓨터의 부하를 경감해 효율적으로 인쇄 잡 또는 인쇄 디바이스를 관리하기 위한 메커니즘에 관한 것이다.
네트워크 상에 인쇄 잡들을 분산하고 복수의 프린터를 이용해서 고속 인쇄를 실현하는 분산 인쇄 기술이 일본 특허 공개 공보 제2001-290623호에 개재되어 있다. 이 문헌에는, 퍼스널 컴퓨터와 같은 잡 발행자(issuer)가 복수의 프린터에 분산되어진 인쇄 잡들의 상태를 수집하고, 퍼스널 컴퓨터가 인쇄 잡들의 상태를 병행하여 관리하는 것이 개시되어 있다.
그러나, 예를 들면, 네트워크에 접속된 전국 곳곳에서 대량의 인쇄 디바이스들에 인쇄를 행하는 대량의 인쇄 잡들이 파퓰레이트될 수 있다. 예를 들어, 몇 대의 인쇄 디바이스들이 아니라, 이러한 인쇄 디바이스들 수 백대를 감시하기 위해서, 일본 특허 공개 공보 제2001-290623호에 개시된 감시 방법은 현실적이지 않다. 몇백 대의 인쇄 디바이스들을 병행하여 감시하는 것은 처리 부하가 매우 커진다. 또는, 이 감시는 감시 컴퓨터의 비용을 현저하게 상승시킨다.
본 발명의 일 양상에 따르면, 복수의 인쇄 디바이스들(104A 내지 104N)과 통신하도록 구성된 정보 처리 장치(101)로서, 인쇄 잡들의 출력 대상들이며 상태 정보가 취득될 인쇄 디바이스들을 제1 등록 순서로 감시 큐(monitoring queue)에 순차적으로 등록하도록 구성된 제1 등록 수단(420), 상기 인쇄 잡들의 출력 대상들인 상기 인쇄 디바이스들을 제2 등록 순서로 전송 큐에 순차적으로 등록하도록 구성된 제2 등록 수단(430), 상기 제1 등록 순서에 따라서 상기 인쇄 디바이스들을 접속하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하도록 구성된 상태 감시 수단(420), 및 상기 제2 등록 순서에 따라서 상기 인쇄 잡들을 전송하도록 구성된 전송 제어 수단(430)을 포함하며, 상기 상태 감시 수단(420)은, 상기 전송 제어 수단이 상기 인쇄 잡들의 전송을 완료하지 않더라도, 상기 제1 등록 순서에 따라서 상기 인쇄 디바이스들(104A 내지 104N)과의 접속을 순차적으로 전환하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하도록 구성되는 정보 처리 장치가 제공된다.
본 발명의 다른 양상에 따르면, 복수의 인쇄 디바이스들(104A 내지 104N)과 통신할 수 있는 정보 처리 장치(101)의 잡 처리 방법으로서, 인쇄 잡들의 출력 대상들이며 상태 정보가 취득될 인쇄 디바이스들을 제1 등록 순서로 감시 큐에 순차적으로 등록하는 단계, 상기 인쇄 잡들의 출력 대상들인 상기 인쇄 디바이스들을 제2 등록 순서로 전송 큐에 순차적으로 등록하는 단계, 상기 제1 등록 순서에 따라서 상기 인쇄 디바이스들을 접속하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하는 단계, 및 상기 제2 등록 순서에 따라서 상기 인쇄 잡들을 전송하는 단계를 포함하며, 상기 접속 및 취득 단계는, 상기 전송 단계가 상기 인쇄 잡들의 전송을 완료하지 않더라도, 상기 제1 등록 순서에 따라서 상기 인쇄 디바이스들과의 접속을 순차적으로 전환하는 단계, 및 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하는 단계를 포함하는 잡 처리 방법이 제공된다.
본 발명에 따르면, 예를 들면, 복수의 인쇄 디바이스에 대량의 인쇄 잡들이 파퓰레이트되더라도, 감시 인쇄 디바이스들 또는 인쇄 잡들의 감시 부하가 경감된다. 그러므로, 컴퓨터 비용이 필요 이상으로 증가되지 않는다.
본 발명의 다른 목적, 구성 및 효과는 다음의 상세한 설명 및 도면으로부터 밝혀질 것이다.
본 발명에 따르면, 예를 들면, 복수의 인쇄 디바이스에 대량의 인쇄 잡들이 파퓰레이트되더라도, 감시 인쇄 디바이스들 또는 인쇄 잡들의 감시 부하가 경감되므로, 컴퓨터 비용이 필요 이상으로 증가되지 않는다. 또한, 본 발명에 따르면, 원격 지점들에 배치된 디바이스들에 파퓰레이트된 인쇄 잡들이 일원적으로 관리되므로, 인쇄 잡들의 상태를 감시하는 프린트 서버의 비용이 경감될 수 있다.
제1 실시예
이하, 본 발명의 실시예를 도면을 참조하여 설명한다.
도 1은 본 발명에 따른 인쇄 시스템의 구성을 예시하는 블록도이다. 이 시스템에서는, 복수의 네트워크 프린터가 접속된다.
도 1에서, 디바이스들(104A, 104B 및 104N)은 인쇄 디바이스(이하, "디바이스들"이라 함)다. 인쇄 디바이스들은 네트워크 인터페이스(도시되지 않음)를 통해 네트워크(102)에 접속되어 있다. 디바이스들 각각은 인쇄 관리 서버(101)로부터 전송되는 인쇄된 문자 데이터를 포함하는 인쇄 잡을 해석해서 1 페이지씩 인쇄용 도트 이미지로 변환한다. 여기에서, 인쇄 잡은, 페이지 기술 언어와 같은 묘화(drawing) 데이터와, 인쇄 레이아웃 설정과 같은 인쇄 문자들을 위한 각종 잡 설정 데이터를 포함하는 일반 명사다. 디바이스들(104A, 104B 및 104N)은 전자 사진방식을 채용한 레이저빔 프린터나 잉크제트 방식을 채용한 잉크젯 프린터일 수 있다.
디바이스들(104A, 104B 및 104N) 각각은 인쇄 잡의 스케줄을 관리하고, 후술하는 인쇄 잡 이력을 유지하거나, 인쇄 잡의 각종 상태를 관리하는 디바이스 스케줄러(103)를 포함한다.
디바이스 스케줄러(103)는 예를 들면, 전용 하드웨어를 이용하여 구성될 수 있다. 스케줄러는 또한 EAP(Embedded Application Platform)로 불리는 디바이스 내부에 준비된 플랫폼에서 애플리케이션을 실행시키도록 구성될 수도 있다. 디바이스 스케줄러(103)는 하드웨어와 소프트웨어 간의 협동으로 구성될 수도 있다. 또한, 디바이스들(104A, 104B 및 104N))과 통신 가능하도록 디바이스들에 접속된 정보 처리 장치는 스케줄러(103)의 기능을 실현하기 위한 처리의 일부를 실행시킬 수 있다. 또한, 스케줄러(103)는 미리 인쇄 디바이스에 내장될 수 있거나 옵션 기능으로 추가될 수 있다.
정보 처리 장치(101)는 본 실시예에 따른 인쇄 관리 서버(도면에서는 인쇄 관리 서버 컴퓨터라 함)다. 인쇄 관리 서버는 네트워크 케이블을 통해 네트워크(102)에 접속된다. 서버는 네트워크 상에서 이용되는 파일들을 축적하고, 네트워크(102)의 사용 상태를 감시한다. 인쇄 관리 서버(101)는 네트워크(102)에 접속된 복수의 프린터를 관리한다. 인쇄 관리 서버(101)는, 인쇄 관리 서비스가 이용가능한 일반적인 정보 처리 장치이다.
하드웨어 구성도
도 2는, 도 1에 나타낸 인쇄 관리 서버(101)와 디바이스들 중 하나(104) 사이에서의 접속을 간단하게 나타내고, 각 하드웨어 구성을 예시하는 블록도이다.
CPU(201)는 OS 및 애플리케이션과 같은 프로그램을 실행한다. 프로그램은 ROM(203)의 프로그램 ROM에 저장되거나, 하나의 하드디스크(211)로부터 RAM(202)에 로드된다. OS는 컴퓨터 상에서 구동하는 오퍼레이팅 시스템의 약어이며, 이하 오퍼레이팅 시스템을 OS라 부른다. 후술하는 플로우차트의 처리는 프로그램의 실행에 의해 실현될 수 있다. RAM(202)은 CPU(201)의 주 메모리 및 작업 영역(work area) 중 하나로서 기능한다. 키보드 컨트롤러(KBC)(205)는 키보드(209) 및 포인팅 디바이스(도시되지 않음)로부터의 키 입력을 제어한다. CRT 컨트롤러(CRTC)(206)는 CRT 디스플레이(210)의 표시를 제어한다. 디스크 컨트롤 러(DKC)(207)는 각종 데이터를 저장하는 하드디스크(HD)(211) 및 플로피® 디스크(FD)에 있어서의 데이터 액세스를 제어한다. PRTC(208)는, PRTC(208)에 접속된 디바이스(104)와의 신호의 교환을 제어한다. NC(212)는 네트워크에 접속되어, 네트워크에 접속된 다른 기기들과의 통신을 위한 처리를 제어한다. 도면에서, NC(212)는 PRTC(208)와 독립적인 유닛이지만, NC(212)는 PRTC(208)와 협동해서 네트워크 통신 수단으로서 기능하기 때문에, PRTC 내에 통합될 수 있다.
다음으로, 디바이스(104)의 구성에 대해서 설명한다. 도면에 도시한 바와 같이, 디바이스(104)에서, 프린터 CPU(1301)는 ROM(1302) 및 외부 메모리(1303)에 저장된 제어 프로그램에 기초하여 시스템 버스(1304)에 접속된 블록들을 제어한다. CPU(1301)의 처리에 의해 생성된 화상 신호는, 인쇄부 I/F(1305)를 통하여 인쇄부(프린터 엔진)(1306)에 출력 정보로서 출력된다. CPU(1301)는 디바이스(104) 내의 정보를 인쇄 관리 서버(101)에 통지할 수 있도록 입력부(1307)를 통해서 인쇄 관리 서버(101)와 통신할 수 있다.
ROM(1302) 내의 프로그램 ROM은 CPU(1301)의 제어 프로그램을 저장한다. ROM(1302) 내의 폰트 ROM은 출력 정보를 생성하는 데 이용되는 폰트 데이터를 저장한다. ROM(1302) 내의 데이터 ROM은, 프린터가 하드디스크와 같은 외부 메모리(1303)를 포함하지 않는다면, 인쇄 관리 서버(101) 상에서 이용되는 각종 정보를 저장한다.
RAM(1308)은 CPU(1301)의 주 메모리 또는 작업 영역으로 기능하는 RAM이다. RAM(1308)은 (도시하지 않은) 확장 포트(expanded port)에 접속된 옵션 RAM을 이용 하여 메모리 용량을 확장할 수 있다. RAM(1308)은 출력 정보 전개 영역(비트맵 데이터 전개 영역), 환경 데이터 저장 영역(예를 들면, 인쇄 잡 설정 및 인쇄 잡의 상태 정보), NVRAM 등으로 이용된다. 전술한 하드디스크(HD) 또는 IC 카드와 같은 외부 메모리(1303)에 대한 액세스는 메모리 컨트롤러(MC)(1309)에 의해 제어된다. 외부 메모리(1303)는 옵션으로서 접속되어, 예를 들면, 폰트 데이터, 에뮬레이션 프로그램(emulation program), 및 폼 데이터를 저장한다. 조작 패널(1311)은 조작을 위한 스위치 및 LED 표시기를 포함한다.
도 3은, 도 2에 나타낸 RAM(202)의 메모리 맵의 일례의 도면이다. 도면에서, 메모리 맵은, 인쇄 관리 서비스가 RAM(202) 상에 로드될 때 실행가능한 상태이다.
실행을 위해 외부 메모리(211)로부터 직접 RAM(202)으로 프로그램이 로드될 수 있다. 또한, CPU(201)에 의한 직접 실행을 위해 메모리 맵의 일부인 프로그램 ROM(203)에 인쇄 관리 서비스가 저장될 수 있다. 장치들의 기능에 상당하는 기능을 실현하는 소프트웨어가 하드웨어 장치를 대체할 수 있다.
인쇄 관리 서비스는 인쇄 관리 서버에서의 인쇄 잡의 전송, 인쇄 잡의 대상 프린터를 변경하는 지시, 또는 인쇄 순서를 변경하는 지시를 제어한다.
영역(301)은 기본 I/O 프로그램을 저장한다. 기본 I/O 프로그램은, 인쇄 관리 서버(101)의 전원이 ON될 때, 외부 메모리(211)로부터 RAM(202)으로 OS를 판독하고, OS의 동작을 개시하는 IPL(initial program loading) 기능을 가지고 있는 프로그램이다.
영역(302)은 OS(오퍼레이팅 시스템)를 저장하는 한편, 영역(303)은 인쇄 관리 서비스를 저장한다. 영역(304)은 관계 데이터를 저장한다. 영역(305)은, CPU(201)가 각종 프로그램을 실행시킨 영역이다.
소프트웨어 구성도
다음으로,본 인쇄 시스템에서의 인쇄 관리 서버(101)의 소프트웨어 구성에 대해서 설명한다. 도 4는 인쇄 관리 서버(101)에서의 소프트웨어 구성의 일례의 도면이다. 도면에서, 블록들의 소프트웨어 구성은, 도 2의 CPU(201)에 의해 ROM 및 HDD에 저장된 각종 프로그램의 실행을 통해 실현되는 기능을 나타낸다.
통상적으로, Microsoft® Word와 같은 일반적인 애플리케이션(401)이 인쇄 지시를 접수하면, 애플리케이션(401)은 일련의 묘화 커맨드를 OS를 통해서 생성한다. 프린터 드라이버(402)는 OS를 통해서 생성된 묘화 커맨드를 수신하고, 일련의 묘화 커맨드에 기초하여 디바이스들(104A 내지 104N)이 해석가능한 PDL 파일을 포함하는 인쇄 잡을 생성한다. 디바이스들(104A 내지 104N)이 서로 모델이 상이하다면, 인쇄 관리 서버(101)에는 각각의 디바이스들에 대응하는 프린터 드라이버들(402A 내지 402N)이 구비될 수도 있다.
프린터 드라이버(402)는, 디바이스들에 생성된 인쇄 잡을 전송하기 위해서 생성된 인쇄 잡의 데이터를 프린트 스풀러(print spooler)(403)에 전달한다. 여기에서, OS는 Windows®이므로, 프린트 스풀러(403)는 Windows® 스풀러다. 그러나, 본 발명을 적용하는 컴퓨터의 OS는 Windows®에 한정되지 않고, 묘화 명령을 포함하는 다른 OS도 적용될 수 있음은 물론이다.
프린트 스풀러(403)는, 유저가 유저 인터페이스를 통해서 선택하고 지시한 잡 제어 포트 모니터(404)에 인쇄 잡을 전달하고, 디바이스들(104A 내지 104N)에 이 잡을 전송하는 수순을 따른다.
후술되는 처리에 앞서, 유저는 미리 인쇄 관리 서비스(405)에 인쇄 잡을 전송하는 잡 제어 포트 모니터(404)를 지정함으로써 인쇄를 지시한다.
용지 사이즈와 스테이플링 방향과 같은 인쇄 설정 정보는 프린터 드라이버 인터페이스를 통해 설정된다. 이 정보는 잡 제어 포트 모니터(404)에 통지된다. 잡 제어 포트 모니터(405)는 상위로부터 받은 인쇄 잡은 물론, 통지된 인쇄 설정 정보도 인쇄 관리 서비스(405)에 통지한다.
인쇄 관리 서버(101) 및 인쇄 관리 서버(101)에서 이용가능한 네트워크(102) 상의 또 다른 정보 처리 장치의 커스터마이징 애플리케이션(406)은 API(Application Program Interface)(407)를 통하여 인쇄 관리 서비스(405)에 인쇄 잡을 파퓰레이트한다.
인쇄 관리 서비스(405)는 외부 애플리케이션과의 인터페이스인 API(407), 인쇄 관리부(410), 접속 관리부(420), 및 인쇄 잡의 디바이스들로의 전송을 제어하는 전송 관리부(430)를 포함한다. 도면에서는 이들 기능 블록들을 소프트웨어 구성으로 예시되었지만, 기능 블록들 중 어느 하나가 하드웨어로 구성된다고 해도 유사한 기능이 실현될 수 있다.
인쇄 관리부(410)는 현재 잡의 상황을 유지하는 잡 관리부(411), 복수의 프린트 큐를 관리하는 프린트 큐 관리부(412), 복수의 프린터 포트를 관리하는 프린 터 포트 관리부(413)를 포함한다. 구성부들의 기능은 이후에 자세하게 설명한다.
접속 관리부(420)는 현재 디바이스들의 상태를 유지하는 디바이스 관리부(421), 디바이스들과의 접속 순서를 관리하는 접속 순서 제어부(422), 및 그 순서를 유지하는 접속 순서 리스트를 포함한다. 접속 관리부(420)는, 본 발명의 특징인, 대상 프린터(상태 감시의 대상)의 전환을 제어한다. 대상 프린터의 전환 제어에 대해서는 이후에 상세히 설명한다.
전송 관리부(430)는 현재 디바이스들의 전송 상황을 유지하는 전송 접속 관리부(431)와, 인쇄 잡을 디바이스들에 전송하는 복수의 전송부(432)와, 전송 순서를 유지하는 전송 접속 순서 리스트를 포함한다. 전송 관리부(430)는 특징적인 전송 접속 순서 제어 처리를 실현한다. 전송 관리부(430)는, 자신이 전송할 인쇄 잡의 출력처가 되는 인쇄 디바이스들을 전송 접속 순서 리스트에 순차적으로 등록하는 수단으로서 기능한다. 제어 처리는 이후에 상세히 설명한다.
프린트 큐 정보
도 5는 인쇄 잡의 동작을 결정하는 프린트 큐 정보의 도면이다. 이 잡은, 잡 제어 포트 모니터(404)로부터 프린트 큐(인쇄 관리부(410)의 최좌측 상부) 내에 접수된다. 프린트 큐 정보(500)는 일정한 시간에서의 프린트 큐에 대응하여 사전에 설정되어진다.
다음으로, 프린트 큐 정보(500)의 설정인, 프린터명(501), 프린터 드라이버명(502), 포트명(503) 및 백업 프린터명(504)에 대해서 설명한다.
프린터명(501)은 Windows®의 프린터 오브젝트 이름을 나타내며, 프린터 오 브젝트마다 다른 이름이다. 프린터명(501)은 프린터 오브젝트를 식별할 수 있다. 프린터 드라이버명(502)은 프린터 오브젝트에 설정되어 있는 프린터 드라이버의 이름이다. 포트명(503)은 프린터명에 대응하는 프린터 포트의 이름이다. 백업 프린터명(504)은 대행 인쇄(alternate printing) 및 부하-분산 인쇄 처리에 사용되는 대행 인쇄용 프린터의 이름이다. 도 5에서는 예로서 복수의 프린터명(504)이 등록될 수 있다.
인쇄 잡이 파퓰레이트된 디바이스에서 용지 없음과 같은 에러가 발생하면, 인쇄 잡을 접수했던 프린트 큐와 프린트 큐 정보에 설정되어 있는 복수의 백업 프린터들을 이용해서 부하-분산 인쇄 처리가 행해진다. 특히, 대행 인쇄를 위해 잡들이 순차적으로 전송될 수 있는 디바이스로 인쇄 잡이 전송되거나 이동된다. 이러한 디바이스는, 인쇄 잡을 접수했던 프린트 큐와 프린트 큐 정보에 설정되어 있는 복수의 백업 프린터로부터 선택된다. 잡들이 전송될 수 있는 프린터의 결정 방법은 전송에 적합하다고 최초로 판정된 디바이스와, 미리 결정된 우선도에 따른 디바이스 중 하나를 추출하는 방법을 포함한다.
프린터 포트 정보
도 6은 프린터들에 인쇄 잡을 전송하는 동작을 결정하는 프린터 포트 정보(600)의 도면이다. 프린터 포트 정보(600)는 도 4의 인쇄 관리부(410)의 최좌측 하부의 프린터 포트들과 관련하여 일정한 시간에서의 프린트 큐에 대응하여 사전에 설정되어 진다. 프린터 어드레스(601)는 인쇄 잡 전송처인 디바이스의 네트워크 어드레스이며, 대응하는 디바이스의 IP 어드레스 또는 이름 분석(name resolution)(DNS: Domain Name System)에서 사용되는 이름과 관련된다. 프린터 모델(602)은 인쇄 잡 전송처인 디바이스의 종류를 나타내는 프린터 모델명이다. 프린터 모델의 차이로 인해 동작이 서로 상이하다면, 프린터 모델마다의 정의가 작성되어 동작 차이를 흡수한다. 차이를 흡수하기 위한 처리는 여기에서 상세하게 설명하지 않는다. 프로토콜(603)은 디바이스들에 인쇄 잡을 전송하는 통신 프로토콜이다. 이 프로토콜(603)은, 예를 들면, 상호 통신에 의해 인쇄 잡을 전송하는 LPR로 불리는 프로토콜이나, 인쇄 잡을 직접 전송하는 RAW 프로토콜이다. LPR은 Line PRinter deamon Protocol의 약자다.
인쇄 시스템의 특징적인 설정에는 프린터 포트 정보(600)에 설정되어 있는 디바이스 또는 잡 감시의 설정이 포함된다. 대상 프린터 전환 모드(604)는 플로우차트에 관련하여 상세히 후술되는 대상 프린터 전환에 대한 설정 필드다. 연속 감시 시간(605) 및 연속 전송수(606)는 인쇄 전환을 위한 조건이다. 연속 감시 시간(605)은 디바이스 또는 인쇄 잡을 연속해서 감시하는 제한 시간을 나타낸다. 연속 전송수(606)는 같은 디바이스에 연속해서 전송될 인쇄 잡들의 수의 조건을 나타낸다. 도면에서는 대상 프린터에 대한 전환 조건으로서 연속 감시 시간(605) 및 연속 전송수(606)를 나타내지만, 조건은 이들에 한정되지 않는다. 예를 들면, 인쇄 잡 전송 사이즈와 같은 각종 특정한 조건들을 포함할 수 있다.
잡 정보
도 7은 일반 애플리케이션(401) 및 커스터마이징 애플리케이션(406) 중 하나로부터 파퓰레이트되는 인쇄 잡의 잡 정보(700)를 나타낸다. 이 정보(700)는 HDD(211)에 보존되어, 잡 관리부(411)에 의해 관리된다.
커스터마이징 애플리케이션(406)이 잡을 파퓰레이트하면, 인쇄 잡은 도 4의 API(407)를 통해 인쇄 관리부(410)에 입력된다. 한편, 일반 애플리케이션을 통해 잡이 파퓰레이트되면, 인쇄 잡은 잡 제어 포트 모니터(404)를 통해서 인쇄 관리부(410)에 입력된다. 인쇄 관리부(410)가 인쇄 잡을 입력하면, 인쇄 관리부(410)는 이 잡 대응하는 잡 정보(700)를 생성하고, 프린트 큐에 생성된 잡 정보(700)를 등록한다. 인쇄 잡의 실제 데이터는 잡 정보(700)와 관련되고, 도 4에 도시한 바와 같이 HDD(211)에 보존된다.
잡 정보(700)는 문서명(701), 인쇄 관리 서비스에서 발행되는 잡 ID(702), 인쇄를 행한 유저명(703), 페이지수(704) 및 잡 상태(705)를 포함한다. 잡 정보(700)는 또한, 디바이스 내에 생성되는 디바이스 잡 ID(706), 스케줄링의 순서를 결정하는 우선도(707), 완료 결과(708) 및 완료 시간(709)을 포함한다.
잡 상태(705)는 잡의 현재 상태에 따라서, 예를 들면 스풀중(spooling), 전송중, 인쇄중, 정지중, 또는 인쇄 완료의 상태일 수 있다.
접속 순서 리스트(800)
도 8은 도 4에 도시한 접속 순서 리스트(800)의 일례를 나타낸다. 접속 순서 리스트(800)에는, 감시될 디바이스의 식별자 및 각 디바이스들의 부속 정보가 기본적으로 FIFO에 등록되어 있다. 접속 순서 리스트(800) 또는 접속 순서 리스트(800)에 기초하는 설정은, 인쇄 관리 서버(101)에 의한 감시 순서를 관리하기 위한 설정을 의미하는 감시 큐로서 불릴수 도 있다. 접속 순서 리스트(800)에서의 디바이스들의 등록 순서에 따라서, 디바이스들에 대한 상태 감시가 순차적으로 실행된다.
여기서의 "접속"은 전술한 접속 관리부(420)에 의한 관리에 기초한 통신 세션의 확립을 나타낸다. 통신 세션동안, 각종 상태들이 취득되고 요구될 수 있다. 인쇄 디바이스의 감시를 중단하는 것은 확립된 통신 세션을 단절시키는 것을 가리킨다. 도 8에 도시한 접속 순서 리스트(800)는 후술되는 바와 같이 도 15의 S1502에서 갱신된다.
접속 순서 리스트(800)의 컬럼에는 다음의 항목들: 접속될 프린터명, 각 프린트 큐에 등록된 미전송 잡들의 수, 접속 우선도, 접속 상태 및 현재의 접속 중에 전송되어진 잡들의 수인 전송 잡들의 수가 설정된다. 도 8은, 프린터들이 1 내지 3의 접속 순서에서 디바이스와 접속되었으며, 4번째 이후에서는 접속 대기중인 것을 나타낸다. 프린터는, 프린터가 접속중이거나 접속 대기 중이면서 다시 접속을 대기하기 위해 단절되는 "확인 대기중(waiting for check)"의 상태에 있을 수 있다. "확인 대기중"은 넓은 의미로 "접속 대기중"에 포함된다.
전술한 접속 관리부(420)는 접속 순서 리스트(800)에 등록된 정보에 기초하여 접속 순서를 결정한다. 이 처리는 상세히 후술한다.
전송 접속 순서 리스트(900)
도 9는, 도 4의 전송 접속 순서 리스트(430)의 일례를 나타낸다. 전송 접속 순서 리스트(900)에는, 인쇄 잡의 전송처인 디바이스의 식별자 및 각 디바이스에 대한 전송의 부속 정보가 기본적으로 FIFO에 등록된다. 전송 접속 순서 리스 트(900)에서의 디바이스들의 등록 순서에 따라, 디바이스들에 대한 인쇄 잡의 전송이 순차적으로 실행된다. 즉, 리스트(900)는 인쇄 디바이스들이 순차적으로 등록되는 전송 큐로서 기능한다. 디바이스들은 전송될 인쇄 잡의 출력처가 된다.
전송 접속 순서 리스트(900)의 컬럼에는 다음의 항목들: 접속될 프린터명, 전송 접속의 우선도 및 전송 접속 상태가 설정된다. 전송 접속 관리부(431)는 전송 접속 순서 리스트(900)에 리스트 된 정보에 기초하여 전송 접속 순서를 결정한다. 이 처리는 상세히 후술한다.
인쇄 디바이스의 기능 블록도
도 10은 도 1에서 나타낸 디바이스들(104A 내지 104N) 구성의 일례의 도면이다. 도면에서는 하드웨어 블록들과 소프트웨어 블록들이 공존하지만, 블록들 각각은 디바이스들 중 하나의 특정한 기능을 나타낸다.
디바이스 컨트롤러(1001)는 디바이스를 제어하는 모듈이며, 하드웨어의 상태 및 파퓰레이트된 인쇄 잡의 상태를 관리하고 제어한다. 컨트롤러(1001)는 도 2에서 설명한 CPU(1301) 및 인쇄부 I/F(1305)에 대응한다. 디바이스가 MFP(Multi Function Printer)라 불리는 인쇄, 카피, FAX, 또는 스캔과 같은 복수의 기능을 갖는 복합기인 경우에, 디바이스 컨트롤러(1001)는 기능들을 통합적으로 관리 및 제어하는 모듈에 대응한다.
디바이스 스토리지(1002)는 디바이스 내에 포함되거나 상호 통신을 위해 접속된 영속 기억 영역(persistent storage region) 및 영속 기억 장치이며, RAM 또는 HDD와 같은 데이터 기억부로서 실현된다.
전술한 바와 같이, 디바이스들(104A 내지 104N) 각각은 인쇄 잡의 스케줄을 관리하거나, 후술하는 인쇄 잡 이력을 유지 및 관리하는 디바이스 스케줄러(103)를 포함한다. 디바이스 스케줄러(103)는 접속 관리부(1011), 스케줄 관리부(1012), 이벤트 관리부(1013) 및 이력 관리부(1014)를 포함한다.
접속 관리부(1011)는 인쇄 관리 서비스(405)와의 통신을 위한 복수의 접속부 및 후술하는 접속 리스트(1100)를 포함한다. 리스트(1100)는 인쇄 관리 서비스(405)와의 접속 상황 및 인쇄 관리 서비스(405)에 의해 등록된 이벤트 정보를 보유한다.
스케줄 관리부(1012)는 인쇄 관리 서비스(405)로부터 접수한 인쇄 잡 리스트를 관리한다. 스케줄 관리부(1012)는 후술하는 스케줄 리스트(1200) 및 인쇄 잡들을 제어하는 잡 제어부를 포함하고, 인쇄 잡을 스케줄링한다.
이벤트 관리부(1013)는 디바이스 컨트롤러(1001)의 하드웨어 상태를 유지하고, 디바이스 컨트롤러(1001)로부터 하드웨어 상태의 변화를 접수한다. 그 후, 이벤트 관리부(1013)는 스케줄 관리부(1012) 및 접속 관리부(1011)를 통해서 접속된 인쇄 관리 서비스(405)에 정보를 통지한다.
이벤트 관리부(1013)는 또한, 디바이스 컨트롤러(1001) 내의 인쇄 잡 상태의 변화를 접수하고, 스케줄 관리부(1012)에 이 변화를 통지한다. 스케줄 관리부(1012)는 통지를 수신하고, 스케줄 리스트에 포함되는 잡 상태를 갱신하고, 접속된 인쇄 관리 서비스(405)에 이 변화를 통지하도록 접속 관리부(1011)에 의뢰한다.
이력 관리부(1014)는 인쇄 잡의 완료 이력을 관리하는 모듈이다. 이력 관리 부(1014)는 접속 관리부(1011)의 지시에 따라, 디바이스 스토리지(1002)에 이력 파일을 생성하고, 판독/기입하고, 삭제한다. 이력 파일은 이력 관리부(1014)에 의해 조작되는 이력 관리 파일에 의해 관리된다. 인쇄 잡 이력의 관리 처리의 상세 내용은 후술한다.
도 10에 도시되지는 않았지만, 디바이스들(104A 내지 104N) 각각은 예를 들면, 기록 매체에 화상을 형성하는 프린터 엔진 및 프린터 엔진의 각종 정보를 검출하는 센서 메커니즘을 구비하고 있다. 프린터 엔진과 메커니즘은 도 3에 관해 설명되어있다.
디바이스에서의 접속 리스트(1100)
도 11은 접속 관리부(1011)에 의해 생성되는 접속 리스트(1100)의 일례를 예시한다. 접속 리스트(1100)에는, 디바이스 스케줄러(103)에 통신 세션을 오픈하여 접속된 컴퓨터의 고유 ID가 등록되어 있다. 접속 리스트(1100)는 복수의 컴퓨터(고유 ID)를 포함하고, 이들 중 하나는 도 1의 인쇄 관리 서버(101)다. 유의할 점은, 접속 리스트(1100)에서의 컴퓨터들의 등록 순서는 인쇄 순서를 정의하지 않는다는 점이다. 인쇄 순서는 후술하는 스케줄 리스트(1200)에 기초하여 결정된다. 다음으로, 접속 리스트(1100)를 상세하게 설명한다.
접속 리스트는 관리 ID, 인쇄 관리 서비스로부터 통지되는 고유 ID, 디바이스 컨트롤러로부터 통지되는 이벤트를 요구할지 여부를 설정하는 이벤트 등록 필드 및 인쇄 잡 이력 기능을 이용할지 여부를 설정하는 이력 모드 필드를 포함한다. 이하의 설명은 이력 기능을 이용하는 설정을 전제로 한다.
고유 ID는 본 실시예에서는 UUID(Universally Unique IDentifier)라 불리는 16진수(hexadecimal) 32자릿수의 수치이다. 그러나, ID는 접속된 각각의 서비스를 고유하게 식별하는 임의의 수단일 수 있다.
디바이스에서의 스케줄 리스트
도 12는 디바이스의 스케줄 관리부(1012)에 의해 생성되는 스케줄 리스트(1200)의 일례를 나타낸다. 스케줄 관리부(1012)는 접속 리스트(1100)에 포함된 컴퓨터들로부터의 인쇄 잡들의 처리 순서를 관리한다. 도 12의 스케줄 리스트(1200)에서, 잡들(1 내지 3)은 동일한 컴퓨터(인쇄 잡들의 발행자)로부터의 인쇄 잡들로서 등록된다.
스케줄 리스트는 인쇄 순서, 접속 리스트와 공통인 고유 ID, 디바이스 컨트롤러(1001)로부터 통지되는 디바이스 잡 ID, 잡, 상태 및 도 7에 나타낸 잡 정보를 포함한다. 스케줄 리스트에서, 잡들은 스케줄을 받은 순서 및 잡 정보에 포함되는 우선도(707)에 따라 스케줄링된다.
디바이스에서의 이력 관리 파일
도 13은 이력 관리부(1014)에 의해 생성되는 이력 관리 파일(1300) 및 이력 파일(1320)을 예시한다.
이력 관리 파일(1300)은 복수의 생성된 이력 파일 정보(1310)의 리스트다. 이력 파일 정보(1310)는 이력 파일의 버전(1311), 최종 갱신일(1312), 접속 리스트(도 11)와 공통인 고유 ID(1313) 및 디바이스 스토리지(1002)에 보존된 이력 파일명(1314)을 포함한다. 이력 파일명(1314)은 이력 파일을 특정하기 위한 정보로 서 기능한다. 이력 파일에는, 버전(1321) 및 도 7에 도시한 복수의 잡 정보(700)가 보존된다.
본 실시예에서, 디바이스 스케줄러(103)는 도 13에서와 같은 이력 정보를 생성한다. 인쇄 관리 서버는 인쇄 디바이스 내에서 인쇄 잡의 상태가 변화한 것을 검지해야 하고, 인쇄 잡 상태에서의 변화를 통지해야 한다. 서버(101)가 접속되지 않고(감시되지 않고) 있더라도, 스케줄러는 이력 정보를 생성할 수 있다. 즉, 통지될 잡 상태 변화 통지가 보존되어, 인쇄 관리 서버(101)로부터 잡 상태의 취득 요구를 다시 받으면 보존된 잡 상태가 통지될 수 있다.
인쇄 잡 실행의 플로우
다음으로, 인쇄 관리 서버(101)에 의한 처리를 설명한다. 이 처리는, 대량의 디바이스들을 감시하는 것, 대량의 인쇄 잡들을 파퓰레이트하는 것, 및 완료까지 잡들을 추적하는 것을 달성하는 것이며, 이것은 본 발명의 특징이다.
우선, 개략 설명하면, 인쇄 요구에 따라서 도 14의 플로우차트가 실행되고, 잡 제어 포트 모니터(404)는 프린트 큐 관리부(412)를 호출한다. 그 후, 프린트 큐 관리부(412)는 프린터 포트 관리부(413)를 호출하고, 도 15의 플로우차트가 실행된다.
도 15의 플로우차트에서, 프린터 포트 관리부(413)는 접속 관리부(420)에 디바이스와의 접속 처리를 의뢰하고, 접속 관리부(420)가 도 16 및 도 17의 플로우차트를 실행하게 한다.
그 후, 접속 관리부(420)는 도 16의 플로우차트에 의해 접속처 또는 후보 접 속처인 디바이스들의 상태를 감시하고, 도 17의 플로우차트에 의해 인쇄 잡을 전송한다.
도 18, 19 및 20의 플로우차트는 도 17의 플로우차트에서의 전송 처리의 상세를 나타낸다. 접속 관리부(420)는 도 18, 19 및 20의 플로우차트에 의해 각종 특정한 조건들이 만족되는지 여부를 판정하고, 접속 순서 리스트(800)의 디바이스 등록에 기초하여 접속처 디바이스를 전환한다.
도 21의 플로우차트는, 도 16의 각 디바이스들의 상태 감시에 기초하여 행해진 대행 인쇄 처리(S1614)의 상세를 나타낸다.
도 22의 플로우차트는, 전송 관리부(430)에 관하여 전술한 전송 접속 관리 처리의 상세를 나타낸다. 도 18의 플로우차트에서의 전송 의뢰를 받으면, 인쇄 잡은 도 22의 플로우차트에 의해 전송된다. 이하, 각 플로우차트들의 상세 내용을 설명한다.
인쇄 관리 서버(101)에 의한 처리
도 14는, 일반 애플리케이션(401)이 잡 제어 포트 모니터(404) 및 프린트 큐 관리부(412)에서 인쇄 잡을 파퓰레이트할 때, 모니터(404) 및 관리부(412)에 의한 처리를 나타낸 플로우차트다. 커스터마이징 애플리케이션(406)은 생성된 인쇄 잡을 잡 제어 포트 모니터(404)에서와 같은 처리에 의해 API(407)를 경유해서 프린트 큐 관리부(412)에 파퓰레이트한다.
우선, S1401에서, 잡 제어 포트 모니터(404)는 프린트 스풀러(403)로부터 잡을 접수하고, S1402에서, 인쇄 큐 관리부(412)에 잡 추가를 통지한다. 이 때, 모 니터(404)는 관리부(412)에 프린터명도 통지한다. 그 후, 잡 제어 포트 모니터(404)는 프린트 큐 관리부(412)로부터 잡 ID가 부여된 잡 파일명을 접수하고, S1404에서 잡을 지정된 파일명으로 HDD(211)에 보존한다.
다음으로, S1405에서, 잡 제어 포트 모니터(404)는 프린트 큐 관리부(412)에 잡 스케줄을 의뢰한다. 이 때, 모니터(404)는 관리부(412)에 S1403에서 프린트 큐 관리부(412)로부터 받은 잡 ID를 통지한다. S1406에서, 잡 파일이 HDD(211)에 보존되면, S1407에서, 잡 제어 포트 모니터(404)는 프린트 큐 관리부(412)에 잡 생성의 완료를 통지한 후, 처리를 종료한다. 또한, 이 때에도, 모니터(404)는 S1403에서 프린트 큐 관리부(412)로부터 받은 잡 ID를 프린트 큐 관리부(412)에 통지한다.
S1441에서, 프린트 큐 관리부(412)가 잡 제어 포트 모니터(404)로부터 잡 추가 통지를 접수하면, S1412에서 프린트 큐 관리부(412)는 잡 ID를 발행한다. 그 후, S1413에서, 프린트 큐 관리부(412)는 프린터 포트에 잡 추가를 통지한다. 이 때, 프린트 큐 관리부(412)는 발행된 잡 ID를 포트에 통지한다. 다음으로, 프린트 큐 관리부(412)는, S1414에서 프린터 포트 관리부(413)로부터 잡 파일명을 접수하고, S1415에서 이 이름을 잡 제어 포트 모니터(404)에 통지한다.
그 후, 프린트 큐 관리부(412)가 S1416에서 잡 제어 포트 모니터(404)로부터 잡 스케줄 통지를 접수하면, S1417에서 프린터 포트 관리부(413)에 잡 스케줄을 통지한다. 이 때, 프린트 큐 관리부(412)는 프린터 포트 관리부(413)에 S1412에서 발행된 잡 ID를 통지한다.
S1418에서, 프린트 큐 관리부(412)가 잡 제어 포트 모니터(404)에 의해 잡 생성의 완료를 통지받으면, S1409에서, 프린터 포트 관리부(413)에 잡 생성의 완료를 통지한 후 처리를 종료한다. 또한, 이 때에도, 프린트 큐 관리부(412)는 프린터 포트 관리부(413)에 S1412에서 발행된 잡 ID를 통지한다.
도 15는 S1413에서 프린트 큐 관리부(412)로부터 인쇄 잡이 파퓰레이트된 경우, 프린터 포트 관리부(413)에 의한 처리를 나타낸 플로우차트다.
우선, S1501에서, 프린터 포트 관리부(413)가 프린트 큐 관리부(412)로부터 잡 추가를 통지받으면, S1502에서, 프린터 포트 관리부(413)는 접속 관리부(420)에 의해 프린터가 접속되어 있고 디바이스 상태를 취득하고 있는지 여부를 확인한다. 프린터가 디바이스 상태를 취득하고 있지 않으면, 즉, 프린터가 디바이스에 접속되어 있지 않으면, S1503에서 프린터 포트 관리부(413)는 접속 관리부(420)에 접속 개시를 통지한다. 이 때, 프린터 포트 관리부(413)는 인쇄 요구 시에 지정된 프린터에 기초하여 접속 관리부(420)에 프린터 포트 정보를 통지한다.
다음으로, 프린터 포트 관리부(413)는 S1504에서 접수된 잡 ID에 따라 잡 파일명을 발행하고, S1505에서 인쇄 잡에 대응하는 파일명을 프린트 큐 관리부(412)에 통지한다.
S1506에서, 프린터 포트 관리부(413)가 프린트 큐 관리부(412)에 의해 스케줄을 의뢰받으면, S1507에서 프린터 포트 관리부(413)는 접속 관리부(420)에 스케줄을 통지하고, 처리를 종료한다. 이 때, 프린터 포트 관리부(413)는 프린트 큐 관리부(412)에 의해 통지된 잡 ID를 접속 관리부(420)에 통지한다.
도 16은, 접속 관리부(420)가 프린터 포트 관리부(413)로부터 접속 개시를 통지받을 때의 접속 관리부(420)의 처리를 나타낸 플로우차트다.
S1601에서 접속 관리부(420)가 프린터 포트 관리부(413)로부터 접속 개시를 통지받으면, S1602에서 접속 관리부(420)는 접속 순서 리스트 등록 처리에 의해 도 8에 관하여 설명한 접속 순서 리스트(800)의 말미에 접속 정보를 등록한다. S1602에서는, 전송될 인쇄 잡들의 출력처이며 그의 상태 정보가 취득된 인쇄 디바이스들이 감시 큐인 접속 순서 리스트에 순차적으로 등록된다. S1602에서의 처리는 도 8의 순서 리스트(800)(접속 순서 리스트(800)라고도 함)를 갱신한다. 그러나, S1602에서 감시 큐에의 재등록은, 예로서 기술된 큐의 말미에서의 등록으로 한정되지 않는다. 정보는 리스트의 말미 외에 프린터가 디바이스에 다시 접속될 수 있는 어디에서도 등록될 수 있다. 예를 들면, 등록될 정보는 재등록시에 소정의 우선도가 주어질 수 있고, 우선도에 따른 최상위에 등록될 수 있다. 인쇄 요구에서 지정된 디바이스에 전송될 인쇄 잡들이 순차적으로 생성된다면, 인쇄 잡들의 출력처인 디바이스들의 접속 정보는 감시 큐인 접속 순서 리스트(800)에 순차적으로 등록된다.
다음으로, S1603에서 접속 순서 리스트(800) 내에 접속될 감시 접속 디바이스들의 수가 설정된 최대 감시 접속수와 비교된다. 접속수가 최대 감시 접속수에 도달하면, 감시 접속 디바이스들의 수와 전송 접속 순서 리스트(900)의 전송 접속 디바이스들의 수의 합이 설정된 최대 접속수와 비교된다. 합계 접속수가 최대 접속수에 도달하면, S1604에서 디바이스 상태는 "접속 대기중"으로 변화되고, 처리는 S1609로 간다. 한편, 접속수 및 합계 접속수가 각각 최대 감시 접속수 및 최대 접 속수에 도달하지 않으면, 디바이스 관리부(421)는 접속 처리를 실행한다.
디바이스 관리부(421)는 접속 처리를 개시하고, S1605에서 프린터 포트에 대응하는 디바이스 스케줄러(103)에 접속을 통지한다. 보다 구체적으로, 디바이스 관리부(421)는 접속 순서 리스트(800)(감시 큐)의 인쇄 디바이스들의 등록 순서에 따라 인쇄 디바이스에 접속하고, 인쇄 디바이스로부터 상태 정보를 취득한다. 상태 취득 처리는 플로우차트에 관하여 상세하게 후술된다. 이 때, 디바이스 관리부(421)는 스케줄러(103)에 설정된 고유 ID를 통지한다. 접속 성공후, S1606에서 디바이스 관리부(421)는 디바이스 스케줄러(103)에 이벤트를 등록한다. 그 후, S1607에서, 디바이스 관리부(421)는 디바이스 스케줄러(103)로부터 통지되는 디바이스 상태 변화 이벤트의 수신을 대기한다.
디바이스 관리부(421)가 S1608에서 디바이스 스케줄러(103)로부터 디바이스 상태를 취득하거나, S1604에서 디바이스 상태를 대기중으로 설정하면, S1609에서 디바이스 관리부(421)는 내부에서 관리되는 디바이스 상태를 갱신한다. 다음으로, S1610에서 디바이스 관리부(421)는 갱신된 디바이스 상태를 프린터 포트 관리부(413)에 통지한다.
S1606 및 S1607에서 디바이스 상태를 취득하는 방법은, 예를 들면, 감시될 디바이스에의 폴링 및 폴링 응답 대기 처리와 치환될 수 있다. S1606 및 S1607에서의 처리는 디바이스를 감시하는 각종 방법들일 수 있다. 이러한 방법은, 네트워크를 통해서 접속 순서 리스트(800)에 등록된, 감시될 디바이스의 각종 정보를 감시하는 임의의 방법일 수 있다.
S1611에서, 디바이스 관리부(421)는 갱신된 디바이스 상태가 "단절" 또는 "접속 대기중"인지를 판정한다. 상태가 이들 중 어느 하나라면, 디바이스 관리부(421)는 처리를 종료한다. 그렇지 않고, 디바이스 상태가 이들 중 어느 하나도 아니라면, S1612에서 디바이스 관리부(421)는 디바이스 상태가 "에러"인지 여부를 판정한다. 여기에서, "에러"는 인쇄 출력이 계속될 수 없는 상태를 나타내며, 예를 들면, 용지 또는 토너와 같은 공급품의 부족, 용지 걸림, 소프트웨어 행업(hang-up)에 기인한다. S1612에서, 상태가 "에러"가 아니라고 디바이스 관리부(421)가 판정하면, 디바이스 관리부(421)는 처리를 S1607로 되돌린다. 그렇지 않고, S1612에서 상태가 "에러"라고 디바이스 관리부(421)가 판정하면, S1613에서 디바이스 관리부(421)는 백업 프린터가 취득된 프린터 포트 정보에 설정되는지 여부를 판정한다. 백업 프린터가 설정된다면, S1614에서 디바이스 관리부(421)는, 도 21에 관하여 상세히 후술되는 대행 인쇄 처리로 처리를 옮기고, 처리를 종료한다. 한편, 백업 프린터가 설정되지 않는다면, 디바이스 관리부(421)는 S1607로 처리를 되돌린다.
도 17은, 도 15의 플로우차트에 의해 접속 관리부(420)가 프린터 포트 관리부(413)로부터 스케줄을 의뢰받은 때에 접속 관리부(420)에 의한 처리의 플로우차트다. 프린터 포트 관리부(413)로부터의 스케줄 통지는 전술한 도 15의 플로우차트에서의 S1507에 대응한다.
S1701에서, 접속 관리부(420)는 프린터 포트 관리부(413)로부터 스케줄 통지를 접수한다. S1702에서, 디바이스 관리부(421)는 접속될 디바이스의 디바이스 상 태가 취득되었는지의 여부를 판정한다. 보다 구체적으로, S1702에서 디바이스 관리부(421)는, 디바이스 상태가 "단절"인지 여부를 판정한다. 디바이스 상태가 취득되지 않았다면, 즉, 디바이스 상태가 "단절"이라면, 디바이스 관리부(421)는 S1703에서 디바이스와의 접속을 대기한다. 한편, S1702에서 디바이스 관리부(421)가 "예"라고 판정하면, 디바이스 관리부(421)는 S1704에서 접속 순서 리스트에 전송되어지지 않은 잡들의 수를 카운트업한다.
다음으로, S1705에서, 디바이스 관리부(421)는 디바이스 상태가 "접속 대기중"인지의 여부를 판정한다. 디바이스 상태가 "접속 대기중"이라면, S1706에서 디바이스 관리부(421)는 스케줄된 인쇄 잡의 우선도 설정을 확인한다. 우선도가 통상보다 높다면, S1707에서 접속 순서 제어부(422)는 접속 순서 리스트를 변경한다. 접속 순서 리스트 변경 처리에서, 접속 순서 제어부(422)는 접속 순서 리스트에서의 접속의 우선도를 변경하고, "접속 대기중"으로 열거된 잡들을 우선도 순서로 소트한다. S1708에서는, 전송 접속을 우선적으로 행하기 위해서 접속 순서 제어부(422)가 전송 접속 관리부(431)에 전송 접속 순서 리스트(900)의 순서 변경을 의뢰한 후, 처리를 종료한다. 스케줄된 인쇄 잡의 우선도가 통상보다 아래라면, 접속 순서 제어부(422)는 처리를 종료한다.
접속 순서 제어부(422)에 의한 접속 순서 리스트 변경 처리에서, 설정되는 우선도는 스케줄된 모든 잡들의 우선도의 합계, 최대 또는 평균일 수 있다. 즉, 접속 순서에 우선권을 주는 조건 정책의 설정은 행동을 결정한다. 예를 들면, 잡 우선도의 합이 이용될 때, 각 디바이스들에 스케줄된 잡들의 우선도의 합계가 저장 되고, 잡이 스케줄될 때마다, 우선도가 추가되고 그 값에 따라 접속 순서 리스트가 소트된다.
S1705에서, 디바이스 상태가 "접속 대기중"이 아니라고 판정되면, S1709에서 디바이스 관리부(421)는 후술하는 전송 처리를 개시한다. 디바이스 상태가 "확인 대기중"이라면, 디바이스 관리부(421)는 S1705에서 아니오라고 판정한다.
도 18은, 디바이스 관리부(421)가 잡 전송 처리를 개시할 때, 디바이스 관리부(421)에 의한 처리를 나타내는 플로우차트다. 보다 구체적으로, 디바이스의 감시를 중단할지의 여부를 판정하기 위해서, 특정한 조건이 만족되는지의 여부가 판정된다. 특정한 조건이 만족되지 않고, 감시될 디바이스가 변경되지 않아야 한다고 판정되면, 디바이스 관리부(421)는 전송 접속 관리부(431)에 대하여 인쇄 잡의 전송을 의뢰한다. 여기에서, 잡 전송 의뢰 처리는, 인쇄 잡의 전송을 전송 접속 관리부(431)에 의뢰하는 처리 및 인쇄 잡의 스케줄 요구의 처리와 같은 인쇄 잡을 전송하는 각종 처리를 포함하는 광의의 용어다.
우선, S1801에서, 디바이스 관리부(421)은 프린터 포트에 대응하는 디바이스 스케줄러(103)에 스케줄 등록을 잡 정보와 함께 통지한다.
다음으로, S1802에서, 디바이스 관리부(421)는 디바이스의 연속 감시용 타이머를 개시한다. 다음으로, S1803에서는 연속 감시 타이머가 타임 업을 나타내는지의 여부가 판정된다. 특히, 이것이 프린터 포트 정보(600)에 설정된 연속 감시를 위한 제한 시간인지의 여부가 판정된다. S1803에서 타임 업으로 판정되면, 인쇄 디바이스의 감시를 중단하도록 도 19에 관련하여 후술되는 대상 프린터 전환이 S1804에서 실행된다.
S1803에서, 타임 업이 아니라고 판정되면, S1805에서 디바이스 스케줄러(103)로부터 잡 상태 변화 이벤트가 수신되는지 여부가 판정된다. S1805에서 잡 상태 변화 이벤트가 수신되지 않으면, S1806에서 타이머가 카운트 업되고, 디바이스 관리부(421)는 처리를 S1803으로 되돌린다.
S1807에서, 디바이스 관리부(421)가 디바이스 스케줄러(103)로부터 잡 상태 변화 이벤트를 수신하면, 디바이스 관리부(421)는 연속 감시 타이머를 리셋하고, 수신된 이벤트가 "스케줄 갱신", 즉 인쇄 허가인지의 여부를 S1808에서 판정한다. 수신된 잡 상태 변화 이벤트가 "스케줄 갱신"이 아니라면, 디바이스 관리부(421)는 S1809에서 프린트 큐에 등록되어 있는 인쇄 잡들이 모두 완료되었는지 여부를 판정한다. 큐에 등록된 모든 인쇄 잡들이 완료되지 않았다면, 디바이스 관리부(421)는 처리를 S1803으로 되돌린다. 현재의 프린트 큐에 등록되어 있는 인쇄 잡들 모두가 완료되었다면, 디바이스 관리부(421)는 인쇄 디바이스의 감시를 중단하기 위해서 S1810에서 도 19의 대상 프린터 전환을 행하고 처리를 종료한다.
디바이스 관리부(421)가 S1808에서 디바이스 스케줄러(103)로부터 "스케줄 갱신"이 수신된다고 판정하면, 디바이스 관리부(421)는 S1811에서 접속 순서 리스트 내의 미전송 잡들의 수를 카운트 다운(count down)하고, 전송 잡들의 수를 카운트 업(count up)한다. 다음으로, 디바이스 관리부(421)는 S1812에서 잡 상태를 "전송중"으로 변경하고, 프린터 포트 관리부(413)에 변경을 통지한다. 다음으로, 디바이스 관리부(421)는 S1813에서 전송 접속 관리부(431)에 인쇄 잡의 전송 개시 를 의뢰한다. 이 때, 디바이스 관리부(421)는 전송 접속 관리부(431)에 전송처의 프린터 포트 정보 및 잡 ID를 통지한다. 본 실시예에서 전송 개시를 의뢰하기 위해서, 프린터는 전송 접속 관리부(431)에서 관리하는 전송 접속 순서 리스트(900)에 "전송 대기중"의 상태로 등록된다. 이 때, 프린터가 전송 접속 순서 리스트(900)에 등록되어 있으면, 등록된 프린터 정보에서의 미전송된 잡들의 수가 카운트 업된다. 전송 개시의 의뢰 방법은, 전송 접속 관리부(431)에 메시지를 통지하는 처리로서 실현될 수 있다.
디바이스 관리부(421)는 S1811에서 카운트 업된 전송 잡들의 수와 프린터 포트 정보에 설정되어 있는 연속 전송의 수를 비교한다. S1814에서 전송 잡들의 수가 연속 전송의 수에 도달한다고 판정되면, 디바이스 관리부(421)는 S1815에서 인쇄 디바이스의 감시를 중단하기 위해서 도 19의 대상 프린터 전환을 실행한다. S1814에서 아니오라고 판정되면, 디바이스 관리부(421)는 이하 상세히 설명되는 도 19의 플로우를 실행한다. S1903에서 예(즉, 또 다른 등록 잡이 대기중)라고 판정되면, 디바이스 관리부(421)는 S1909에서 리스트의 말미에 있는 후보 디바이스가 완료되지 않은 인쇄 잡을 갖는지의 여부를 확인하다. 임의의 완료되지 않은 인쇄 잡을 갖는다고 판정되면, S1911에서 잡이 리스트의 말미에 등록된다. 그 후, 디바이스 관리부(421)는 S1915에서 다음("접속중" 이외의 상태인 도 8에서의 4번째 프린터)의 접속 처리를 개시하도록 지시한다. 마지막으로, 도 19의 플로우차트에서 S1915이 실행되며, 인쇄 잡의 전송이 완료되지 않더라도, 접속 순서 리스트(800)의 등록 순서에 따라 인쇄 디바이스와의 접속이 순차적으로 전환될 수 있고, 인쇄 디 바이스로부터 취득되는 상태 정보가 취득될 수 있다.
전송 잡들의 수가 연속 전송의 수에 도달하지 않으면, S1816에서 미전송 잡들이 아직 남아있는지의 여부가 판정된다. 이러한 잡이 없다면, S1815에서 도 19의 대상 프린터 전환 처리가 실행된다. 그렇지 않다면, S1816에서 미전송된 잡이 있다고 판정되고, 디바이스 관리부(421)는 처리를 S1802로 되돌린다.
도 19는, 대상 프린터 전환 처리가 개시될 때, 디바이스 관리부(421)에 의해 인쇄 디바이스의 감시 중단 및 감시 중단된 디바이스를 감시 큐(접속 순서 리스트(800))에 재등록하는 처리를 나타낸 플로우차트다.
우선, 디바이스 관리부(421)는 S1901에서 대상 프린터 전환 처리를 개시하고, 접속 순서 리스트의 연속 송신의 수를 리셋하고, S1902에서 연속 감시 타이머를 리세트한다.
디바이스 관리부(421)는 S1903에서 접속 순서 리스트에 "접속 대기중" 또는 "확인 대기중" 상태의 디바이스가 있는지의 여부를 판정한다. 이러한 디바이스가 접속 순서 리스트에 없다면, 디바이스 관리부(421)는 S1904에서 프린트 큐가 완료되지 않은 잡을 포함하는지 여부를 판정한다. 임의의 완료되지 않은 잡이 있다면, S1905에서 디바이스 관리부(421)는 인쇄 전환 처리의 호출자(caller)로 처리를 되돌린다. 완료되지 않은 잡이 없다면, S1906에서 디바이스 관리부(421)는 연속 감시 타이머를 정지하고, S1907에서 디바이스 스케줄러(103)에 등록된 이벤트의 말소를 지시한다. 그 후, S1908에서 디바이스 관리부(421)는 디바이스 스케줄러(103)에 단절을 통지하고, 디바이스 상태를 "단절"로 갱신하고, 처리를 종료한다.
한편, S1903에서, 접속 순서 리스트가 "접속 대기중" 또는 "확인 대기중" 상태의 디바이스를 포함한다고 판정되면, S1909에서 디바이스 관리부(421)는 감시될(그의 감시가 중단될) 프린트 큐가 완료되지 않은 인쇄 잡들을 더 포함하는지의 여부를 판정한다. S1909에서 디바이스 관리부(421)가 임의의 완료되지 않은 인쇄 잡이 있다고 판정하면, S1910에서 디바이스 관리부(421)는 디바이스 상태를 "확인 대기중"으로 변경하고, S1911에서 접속 순서 리스트의 말미로 위치를 이동한다. S1911에서 감시 큐에의 재등록 처리는 예를 들어 큐의 말미에서의 등록이지만, 본 발명은 이것에 한정되지 않는다. 디바이스에 다시 접속될 수 있다면 큐의 말미 이외의 어디에서든 등록이 이뤄질 수 있다. 예를 들면, 재등록 시에 등록될 잡에 소정의 우선도가 부여될 수 있고, 이 잡은 우선도에 따라 가장 앞쪽 위치에서 등록될 수 있다. S1911에서의 처리는 감시 중단된 디바이스를 감시 큐(접속 순서 리스트(800))의 말미에서 다시 재등록하고, 이에 의해 디바이스가 감시 큐에 등록된 등록 상태에 따라 다시 감시될 수 있다.
그 후, 디바이스 관리부(421)는 S1912에서 연속 감시 타이머를 정지하고, S1913에서 인쇄 디바이스의 감시를 중단하기 위해, 디바이스 스케줄러(103)에 등록된 이벤트의 말소를 지시한다. 그 후, S1914에서 디바이스 관리부(421)는 디바이스 스케줄러(103)에 단절을 통지하고, S1915에서 접속 순서 리스트의 다음 순서에 열거된 디바이스와의 접속을 위한 처리 개시를 지시하고, 디바이스 상태를 "단절"로 변경하고, 처리를 종료한다.
도 20은, 디바이스 관리부(421)가 도 8의 접속 순서 리스트(800)의 다음 접 속 처리를 지시할 때, 디바이스 관리부(421)에 의한 처리를 나타낸 플로우차트다. 도 20의 처리는, 감시가 중단되어 디바이스가 인쇄 감시 큐에 재등록되고, 접속 처리가 다시 행해지는 경우의 처리에 적용된다.
디바이스 관리부(421)는, 우선 S2001에서 접속 순서 리스트(800)의 다음 순서에 열거되어 있는 디바이스의 상태가 "확인 대기중"인지를 판정한다. 상태가 "확인 대기중"이 아니라면, 처리는 도 16의 포인트 16-1(S1605)로 가서 통상 접속을 처리한다. 한편, 상태가 "확인 대기중"이라면, S2002에서 디바이스 관리부(421)는 프린터 포트(인쇄 관리부(410)의 최좌측 하부)에 대응하는 디바이스 스케줄러(103)와 접속한다. 보다 구체적으로, 디바이스 관리부(421)는 S1605와 마찬가지로 접속 순서 리스트(800)(감시 큐)의 인쇄 디바이스의 등록 순서에 따라 인쇄 디바이스와 접속하고, 인쇄 디바이스들로부터 상태 정보를 취득한다. 이 때, 디바이스 관리부(421)는 설정된 고유 ID를 통지한다. 접속 성공후, S2003에서 디바이스 관리부(421)는 이력 취득을 디바이스 스케줄러(103)에 통지하고, 디바이스 스케줄러(103)가 유지하고 있는 이력을 취득한다. S2003에서의 취득 처리에 대응하는 디바이스에 의한 처리는 도 24에 관하여 자세하게 설명된다. S2004에서, 디바이스 관리부(421)는 다음에 취득된 이력에 기초하여 잡 상태(도 7의 잡 정보(705, 708 및 709))를 갱신한다.
다음으로, 디바이스 관리부(421)는 S2005에서 전송 접속 관리부(431)를 통한 프린터에의 전송 상황을 확인한다. S2006에서, 디바이스 관리부(421)는 전송 상황이 전송 에러인지의 여부를 판정한다. 예인 경우, 즉, 상태가 전송 실패라면, S2007에서 디바이스 관리부(421)는 도 16의 S1613에서와 마찬가지 판단에 의해 대행 인쇄를 행할지 결정한다. S2007에서의 판단에 의해 대행 인쇄가 실행되면, S2008에서 디바이스 관리부(421)는 전송 접속 순서 리스트(900)로부터 프린터와의 접속 정보를 삭제하고, S2009에서 도 21의 대행 인쇄 처리로 처리를 이동한다. S2007에서 대행 인쇄를 행하지 않는다고 판정되면, S2010에서 디바이스 관리부(421)도 전송 접속 순서 리스트(900)로부터 프린터와의 접속 정보를 삭제하고, 인쇄 잡의 상태를 에러로 설정하고, 다음 스텝 S2012로 처리를 이동한다.
S2006에서, 전송이 에러를 일으키지 않는다고 판정되면, S2011에서 디바이스 관리부(421)는 전송이 정상적으로 완료되었는지의 여부를 판정한다. 아니오인 경우, 즉, 잡이 "전송중"이거나 전송 접속 순서 리스트(900)가 프린터 등록을 포함하지 않는다면, 디바이스 관리부(421)는 S2012로 처리를 이동한다. S2011에서 전송이 완료되었다고 판정되면, S2010에서 디바이스 관리부(421)는 전송 접속 순서 리스트(900)로부터 프린터의 접속 정보를 삭제하고, S2012로 처리를 이동한다.
S2012에서 디바이스 관리부(421)는 갱신된 잡 상태로부터 프린트 큐에 등록되어 있는 모든 잡들이 완료되었는지의 여부를 판정한다. 모든 잡들이 완료되었다면, S2013에서 디바이스 관리부(421)는 접속 순서 리스트로부터 디바이스의 정보를 삭제한다. 다음으로, S2014에서 디바이스 관리부(421)는 디바이스 스케줄러(103)에 등록된 이벤트의 말소를 통지한다. 그 후, S2015에서 디바이스 관리부(421)는 디바이스 스케줄러(103)에 단절을 통지하고, 디바이스와의 접속 상태를 "단절"로 설정하고, 처리를 종료한다.
프린트 큐에 등록되어 있는 잡들이 모두 완료되지 않았다면, S2016에서 디바이스 관리부(421)는 디바이스 스케줄러(103)에 이벤트 등록을 통지하고, 도 18의 포인트 18 및 도 16의 포인트 16-2로 처리를 이동한다. 이 후, 적어도 도 16 및 도 18의 플로우차트의 처리가 이후 병행하여 실행된다.
도 21은, 디바이스 관리부(421)가 대행 인쇄 처리를 실행할 때, 디바이스 관리부(421)의 처리를 나타낸 플로우차트다.
대행 인쇄 처리가 개시되면, S2101에서 디바이스 관리부(421)는 에러를 발생시킨 디바이스에 대응하는 프린트 큐에 등록되어 있는 모든 잡을 일시 정지한다. 다음으로, S2102에서 디바이스 관리부(421)는 프린터 포트 정보에 설정되어 있는 백업 프린터 정보를 취득한다. 다음으로, S2103에서 디바이스 관리부(421)는 대행 프린터의 프린트 큐에 등록되어 있는 모든 잡들의 스케줄을 등록한다. 다음으로, S2104에서 디바이스 관리부(421)는 대행 프린터 큐에 등록된 모든 잡들을 삭제하고, 삭제된 잡들의 상태를 완료 상태로 설정한다. 그 후, S2105에서, 디바이스 관리부(421)는 접속 순서 리스트(800)의 "접속 대기중" 또는 "확인 대기중"의 가장 앞선 컬럼에 대행 디바이스를 삽입한다. 마지막으로, S2106에서 디바이스 관리부(421)는 대상 프린터 전환 처리를 실행하고, 대행 인쇄 처리를 실현한다.
인쇄 잡의 전송 제어 처리
도 22는 전송 접속 관리부(431)에 의한 프린터로의 인쇄 잡의 전송을 제어하는 처리를 나타낸 플로우차트다. 이 처리는, 전송 접속 순서 리스트(900)(전송 큐)에 등록된 인쇄 잡을 전송하기 위해 인쇄 디바이스들의 등록 순서에 따라 인쇄 잡을 전송하는 처리에 적용된다.
전송 접속 관리부(431)는 S2201에서 전송 접속 순서 리스트(900)의 상위로부터 순차적으로 대응하는 전송부(432)의 전송 상황을 확인하고, S2202에서 전송이 에러를 일으키는지의 여부를 판정한다. 전송 에러를 일으키면, 우선, S2203에서 전송 접속 관리부(431)는 전송 접속 순서 리스트(900) 내의 프린터에 대한 전송 상황을 전송 에러라고 설정하고, S2201에서의 확인 대상에서 이 프린터를 제외시킨다. 그 후, S2204에서 전송 접속 관리부(431)는 감시 접속의 순위를 올리도록 디바이스 관리부(421)에 의뢰하고, 전송 접속 순서 리스트(900)의 다음 순서를 확인하기 위해서 S2201로 처리를 되돌린다.
S2202에서 전송이 에러를 일으키지 않으면, S2205에서 전송 접속 관리부(431)는 전송이 완료되었는지의 여부를 확인한다. 전송이 완료되었다면, S2206에서 전송 접속 관리부(431)는 미전송된 또 다른 잡이 있는지의 여부를 판정한다. 이러한 잡이 없다면, S2207에서 전송 접속 관리부(431)는 전송 상황을 완료됨으로 설정하고, S2203에서와 마찬가지로 S2201에서의 확인 대상으로부터 이 프린터를 제외시키고, 처리를 S2201로 되돌린다. S2206에서 전송되지 않은 임의의 잡이 남아 있다면, 전송 접속 관리부(431)는 전송 상황을 "전송중"으로 설정하여 처리를 계속하고(S2207), 다음 잡의 전송을 개시한다. 바꾸어 말하면, S2208에 있어서 전송부(432)는 잡 ID에 기초하여 잡 데이터의 전송을 개시하고(S2209), 전송 접속 순서 리스트(900)의 다음 순서를 확인하기 위해서 S2201로 처리를 되돌린다.
S2205에서 전송이 완료되지 않는다면, S2210에서 전송 접속 관리부(431)는 상태가 "미접속"인지의 여부를 판정한다. 아니오인 경우, 즉, 상태가 "전송중"이라면, 전송 접속 관리부(431)는 S2201에서의 전송 접속 순서 리스트(900)의 다음 순서를 확인하기 위해서 처리를 복귀한다. S2210에서 상태가 "미접속"이라면, S2211에서 전송 접속 관리부(431)는 새로운 전송 접속 가능한지를 판정한다. 전송 접속이 불가능하다면, 전송 접속 관리부(431)는 S2201로 처리를 되돌린다. S2211 에서 전송 접속 관리부(431)가 전송 접속이 가능하다고 판정하면, S2208에서 전송 접속 관리부(431)는 전송 접속 순서 리스트(900)의 프린터에 대한 전송 상황을 "전송중"으로 설정한다. 그 후, S2209에서 전송 접속 관리부(431)는 전송을 개시하기 위해 대응하는 전송부(432)를 생성하고, 인쇄 잡을 전송한다. S2209에서의 처리는 전송 접속 순서 리스트(900)(전송 큐)에 등록된 인쇄 잡을 전송하기 위해서 인쇄 디바이스의 등록 순서에 따른 인쇄 잡을 실제로 전송한다.
다음으로, S2210에서 전송 접속 관리부(431)는 전송부(432)에 프린터 포트 정보 및 생성된 잡 ID를 통지하여 전송을 개시하고, 다음 순서를 확인하기 위해서 S2201로 처리를 되돌린다.
접속이 가능한지의 여부에 대한 S2211에서의 판단에서는, 전송 접속 순서 리스트(900) 내에서 접속하고 있는 전송 접속 디바이스들의 수와 설정되는 최대 전송 접속수를 비교한다. 접속수가 최대 전송 접속수에 도달하면, 전송 접속 디바이스들의 수와 접속 순서 리스트(800) 내의 감시 접속 디바이스들의 수의 합계와, 설정된 최대 접속수를 비교한다. 합계 접속수가 최대 접속수에 도달하면, 접속 불가능이라고 판정한다. 한편, 접속수 및 합계 접속수가 각각 전송 최대 접속수 및 최대 접속수에 도달하지 않으면, 접속 가능이라고 판정한다. 전송 접속 관리부(431)는 상기한 바와 같이 전송 접속 순서 리스트(900)의 등록 순서에 따라서 순차적으로 전송 상황에 따른 처리를 행함으로써, 프린터에의 인쇄 잡 전송 순서를 제어한다.
도 22의 플로우차트는 S1914 및 S1915에서의 처리에 의존하지 않고 실행될 수 있지만, S1804 및 S1815에서의 대상 프린터 전환 처리가 행해지더라도 인쇄 잡을 전송중인 인쇄 디바이스에 인쇄 잡이 계속 전송될 수 있다.
전송 접속과 감시 접속 간의 관계
도 25는 대상 프린터 전환의 개략도이다. 도 25의 상부 블록에서, 서버는 디바이스(104A)에 대한 감시 접속 및 전송 접속을 통해 디바이스(104A)에 잡을 전송한다. 서버는 디바이스(104B)에도 유사한 처리를 행한다.
도 26은, 도 25에서의 대상 프린터 전환이 발생할 때의 접속 순서 리스트(800)와 전송 접속 순서 리스트(900)의 천이 예의 도면이다.
우선, 먼저 설명한 플로우차트들을 참조하여 감시 접속 처리(2501 및 2504)를 설명한다. 도 16의 플로우차트에서의 S1607에서 디바이스 스케줄러(103)로부터 디바이스 상태의 변화를 알리는 이벤트 수신이 대기된다. 그 후, 이벤트 수신의 결과에 기초하여 S1614에서의 대행 인쇄 처리가 행해지거나, S1611에서의 판단에 의해 "단절" 또는 "접속 대기중"으로 상태가 천이한 후, 처리가 종료되거나 스텝 S1607로 되돌아 간다. 감시 접속 처리에서는, 실제의 전송 접속에 의해 인쇄 잡이 종료되지 않더라도 각 디바이스들에 대하여 감시 접속이 순차적으로 행해진다.
도 26의 접속 순서 리스트(800) 내의 리스트(2601)에서 순서 1의 디바이 스(104A)의 상태 및 순서 2의 디바이스(104B)의 상태는 "접속중"이다. 이것은 이 상태들이 "감시 접속중"임을 나타낸다.
전송 처리에서는, 우선 도 18의 플로우차트에서의 S1805에서 디바이스 스케줄러(103)로부터 잡 상태의 변화를 알리는 이벤트 수신이 대기된다. 그 후, 이벤트 수신의 결과에 기초한 S1808의 판단에 의해 스케줄이 갱신된 후 전송 접속 처리가 행해진다. S1809에서의 판단에 의해 스케줄된 모든 잡들에 대한 전송 처리가 완료되고, 대상 프린터 전환 처리가 행해지거나, 또는 S1803으로 처리가 되돌아간다.
전송 접속 처리(2502)에서는, 도 22의 플로우차트에서의 S2201에서 전송부(432)로부터 전송 상황이 확인되고, 확인 결과에 기초하여 S2203에서의 전송 에러 처리가 행해진다. S2206의 판단에 의해 모든 전송이 완료되고 확인 대상에서 제외되며, 처리는 스텝 S2201로 되돌아간다.
상기 상황은, 도 26의 전송 접속 순서 리스트(900) 내의 리스트(2603)에서 순서 1의 디바이스(104A)의 상태와, 순서 2의 디바이스(104B)의 상태가 "전송중"이라는 사실에 의해 나타내진다.
디바이스(104A)에 연속 전송된 잡들의 수가 미리 설정되어 있는 연속 전송수에 도달한다면, 즉, 도 18의 S1814에서 아니오라고 판정된다면, 인쇄 전환 처리가 발생한다. 그렇지 않고, 연속 감시 시간에 도달한다면, 즉, 도 18의 S1803에서 예라고 판정된다면, 도 19의 인쇄 전환 처리가 발생한다. 인쇄 전환 처리가 발생하면, 처리는 도 25의 아래 블록의 상태로 간다. 이 때, 디바이스(104A)에의 전송 접속의 상태가 "전송중"이라면, 디바이스(104A)에 대한 전송 접속은 계속한 채 감시 접속만 단절되고, 다음 순서(도 25에서 접속되지 않은 디바이스(104C))에 대한 감시 접속이 개시된다.
상기 처리는, 도 19의 플로우차트의 S1903에서, 도 26의 접속 순서 리스트(800) 내의 리스트(2601)의 순서 3의 디바이스(104C)의 상태가 "접속 대기중"이며 S1909로 이동한다는 판정을 통해 이뤄진다.
디바이스(104A)에 보내진 모든 잡들이 완료된 것은 아니기 때문에, 잡들은 S1910 및 S1911을 거쳐서 도 26의 접속 순서 리스트(800) 내의 리스트(2602)의 순서 4에 "확인 대기중"의 접속 상태로 삽입된다. 그 후, 도 20의 다음 접속 처리에서 디바이스(104C)에 대한 접속 처리가 행해진다.
디바이스(104A)에의 전송이 완료되지 않았기 때문에, 도 22의 전송 처리는 전송을 계속하여(2503) 완료까지 정기적으로 전송 상황을 확인한다. 그러므로, 도 26의 2604에서와 같이 전송 접속 순서 리스트(900)는 천이하지 않는다.
디바이스(104A)에의 전송 접속의 상태가 "전송중"인 경우는, 예를 들면, 1 세션의 접속 중에 복수의 잡을 통합해서 송신하는 그루핑(grouping) 잡 송신, 전송에 긴 시간이 걸리는 대량의 데이터를 갖는 잡, 등을 포함한다. 도 27은 또 다른 대상 프린터 전환의 개략도이다. 도 25의 2505에서의 감시 접속 처리(도 27의 2703 및 2705)에 의해, 도 27에 도시한 바와 같이, 전송 접속을 수반하지 않는 스케줄 갱신(2704 및 2706)이 디바이스 스케줄러(103)로부터 취득될 수 있다.
디바이스 스케줄러(103)에 의한 처리
도 23은, 디바이스 스케줄러(103)에서 이력 보존 처리가 발생하는 경우의 처리 플로우이다.
S2301에서, 디바이스 스케줄러(103)가 디바이스 컨트롤러(1001)로부터 잡 완료 이벤트를 수신하면, 디바이스 스케줄러(103)는 대응하는 고유 ID를 특정한다. 그리고, S2302에서, 디바이스 스케줄러(103)는 특정된 고유 ID를 키로서 이용하여 접속 리스트(도 11)의 등록을 확인한다.
다음으로, S2303에서는, 파퓨레이트된 잡 완료 이벤트의 통지처가 이벤트를 등록하는지의 여부가 판정된다. 보다 구체적으로, 완료 이벤트에 대응하는 고유 ID와 접속 리스트에 포함되는 고유 ID를 비교하여 ID들이 서로 일치하는지의 여부를 판정한다.
일치하는 ID가 등록되었다고 판정되면, S2304에서 하나 이상의 접속된 컴퓨터들 중에서 고유 ID를 키로서 이용하는 관련 컴퓨터에 완료 이벤트 통지가 통지된다. 그 후, 처리가 종료한다.
잡 완료 이벤트의 통지처가 이벤트를 등록하지 않거나 접속되지 않는다면, S2301에서 특정된 완료 이벤트에 대응하는 고유 ID에 대응하는 이력 파일 정보가 이력 관리 파일에 등록되어 있는지의 여부가 S2305에서 판정된다.
정보가 등록되어 있다면, S2306에서, 완료 이벤트는 이력 파일 정보와 관련된 이력 파일(이력 파일명 1314)의 말미에 첨부된다. 첨부된 완료 이벤트는 잡이 종료된 이력이다.
정보가 등록되지 않았다면, S2307에서 신규 이력 파일이 작성되고 완료 이벤 트가 추가된다. 마지막으로, S2308에서 신규 작성된 이력 파일이 이력 관리 파일에 등록되고, 처리가 종료한다.
도 24는, 디바이스 스케줄러(103)가 인쇄 관리 서비스(405)로부터 이력 취득을 의뢰받은 경우의 처리 플로우이다.
우선, S2401에서, 디바이스 스케줄러(103)는 인쇄 관리 서비스로부터 이력 취득을 의뢰받는다. 이력 취득에 대한 의뢰는 도 20의 S2003에서의 처리에 대응한다. 수신된 이력 취득 요구는 고유 ID를 포함한다. S2402에서는, 도 12의 스케줄 리스트를 참조하여, 고유 ID가 일치하는 이력 파일이 이력 관리 파일로부터 검색된다. 그 후, S2403에서, 검색에 의해 발견된 이력 파일을 이용하여 잡 완료 이벤트가 생성되고, 인쇄 관리 서비스에 통지된다. 이 이력 파일은 적어도, 감시 중단시에 완료되지 않은 인쇄 잡의 인쇄 처리 결과(인쇄 완료 또는 인쇄 미완료)를 포함한다.
상기 각각의 플로우차트들이 실행되어, 인쇄 관리 서버(101)에 관한 부하가 대폭 경감될 수 있다. 한 대의 서버가 대량의 디바이스들을 감시하고, 대량의 인쇄 잡들의 파퓰레이팅 및 완료를 추적할 수 있다. 그 결과, 인쇄 관리 서버(101)의 비용이 크게 감소될 수 있다.
예를 들면, 상기 실시예와 유사한 효과를 발휘하기 위해서, 원격 지점들에 배치되는 디바이스들에 파퓰레이트된 인쇄 잡들이 일원적으로 관리되는 경우, 통합 서버를 더 배치하는 방법이 적용될 수 있다. 이 서버는 지점들에 프린트 서버를 배치하고, 통합적으로 프린트 서버를 관리한다. 이 구성에서는, 통합 서버의 부하 가 경감될 수 있다. 그러나, 지점들에 배치된 프린트 서버들의 설치 비용 및 관리 비용이 높아진다. 또한, 임의의 프린트 서버에서 문제가 발생하면, 통합 서버가 문제를 발견하고 관리하는 것은 곤란하다. 또한, 복수의 지점의 프린트 서버들에 의해 생성된 잡 정보를 수집하는 처리가 요구된다. 또한, 디바이스가 변경되면, 프린트 서버들의 정보 및 통합 서버의 정보 간의 정합성을 유지하는 번잡한 작업도 필요해진다. 본 실시예에 따르면, 예를 들면 원격 지점들에 배치된 디바이스들에 파퓰레이트된 인쇄 잡들은 전술한 바와 같이 일원적으로 관리되며, 인쇄 잡들의 상태를 감시하는 프린트 서버의 비용이 경감될 수 있다.
전송 접속과 감시 접속의 상세 설명
도 28 및 도 29는 본 발명에 따른 인쇄 시스템의 특징인, 전송 접속 및 감시 접속의 이원 관리의 개략도이다.
도 28에서, 전송부(432)는 디바이스들(104A 및 104B)에 대하여 인쇄 잡을 전송하고, 동시에 디바이스들(104C 및 104D)은 각각의 디바이스 관리부(421)에 인쇄 이력들(2803 및 2804)을 통지한다.
인쇄 잡에 대한 전송 접속(2801 및 2802)과 디바이스 상태에 대한 감시 접속(2803 및 2804)은 개별 관리, 즉, 상술한 바와 같이 이원 관리되어, 인쇄 처리 및 인쇄 관리 처리가 병행하여 행해질 수 있다.
본 실시예에서는, 감시 접속수와 전송 접속수가 설정될 수 있다. 도 29는, 예를 들면, 접속수의 최대 제한이 4(2901, 2902, 2903 및 2904)인 경우를 설명한다. 이 예는, 디바이스들(104A 및 104B)이 전송 접속되고, 디바이스(104C)가 전송 접속 및 감시 접속되는 상황과, 전송 접속수가 3이고 감시 접속수가 1인 상황을 나타낸다. 감시 접속과 전송 접속이 일원적으로 관리되면, 양자의 수가 서로 같게 되고, 예를 들면, 전송 접속의 수가 2, 감시 접속의 수가 2이다. 본 발명은 전송 접속과 관리 접속의 개별 관리를 실현한다. 따라서, 4의 접속수 내에서 전송 효율을 높이기 위한 처리, 즉, 전송 접속이 감시 접속보다 많은 상황이 실현될 수 있다. 이 상황은 개별 관리, 즉, 이원적으로 감시 접속수와 전송 접속수를 최대 접속수의 제한 내에서 관리함으로써 실현된다. 감시 접속수로 설정되는 값은, 도 16의 S1603에서 감시 접속수가 최대수에 도달하고 있는지의 판정에 이용된다. 전송 접속수로 설정된 값은, 도 22의 S2211에서 전송 접속이 가능한지의 판정에 이용된다.
제2 실시예
전송 접속의 최대수, 감시 접속의 최대수 및 최대 접속수는 유저가 설정 화면을 통해 임의로 미리 설정한 특정한 수에 따라서 결정된다. 최대 접속수, 전송 접속의 최대수 및 감시 접속의 최대수는 인쇄 시스템 환경에 따른 설정값으로 변경되어, 예를 들면, 감시에 중점을 두거나, 전송에 중점을 두는 시스템 정책에 따라 설정이 행해질 수 있다.
다른 실시예
본 발명은 복수의 기기(예를 들면, 호스트 컴퓨터, 인터페이스 기기, 리더, 프린터 등)를 포함하는 시스템에 적용될 수 있거나, 또는 단일 기기를 포함하는 장치(예를 들면, 복사기, 팩시밀리 장치 등)에 적용될 수 있다. 본 발명의 목적은, 전술한 실시예의 기능을 실현하는 프로그램 코드를 기록한 기록 매체를 시스템 또는 장치에 공급하고, 그 시스템 또는 장치의 컴퓨터가 기억 매체에 저장된 프로그램 코드를 판독하여 실행함으로써 달성될 수 있다. 이 경우에는, 기억 매체로부터 판독된 프로그램 코드 자체가 전술한 실시예의 기능을 실현한다. 이 프로그램 코드 자체 및 프로그램 코드를 기억한 기억 매체는 본 발명의 구성 성분이다.
본 발명에서는, 프로그램 코드의 지시에 기초하여 컴퓨터 상에서 가동하고 있는 오퍼레이팅 시스템(OS)이 실제의 처리의 일부 또는 전부를 행하여, 그 처리가 전술한 실시예의 기능을 실현한다. 또한, 본 발명에서는, 기억 매체로부터 판독된 프로그램 코드가 컴퓨터에 삽입된 기능 확장 카드나 컴퓨터에 접속된 기능 확장 유닛에 구비되는 메모리에 기입될 수 있다. 이 경우에는, 기입된 프로그램 코드의 지시에 기초하여 기능 확장 카드나 기능 확장 유닛에 구비된 CPU가 실제 처리의 일부 또는 전부를 행하여, 그 처리가 전술한 실시예의 기능들을 실현한다.
본 발명의 또 다른 실시예에 따르면, 복수의 인쇄 디바이스들과 통신할 수 있는 정보 처리 장치로서, 인쇄 잡들의 출력 대상들이며 상태 정보가 취득될 인쇄 디바이스들을 제1 등록 순서로 감시 큐에 순차적으로 등록하도록 구성된 제1 등록 수단, 상기 인쇄 잡들의 출력 대상들인 상기 인쇄 디바이스들을 제2 등록 순서로 전송 큐에 순차적으로 등록하도록 구성된 제2 등록 수단, 상기 제1 등록 순서에 따라서 상기 인쇄 디바이스들을 접속하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하도록 구성된 상태 감시 수단, 및 상기 제2 등록 순서에 따라서 상기 인쇄 잡들을 전송하도록 구성된 전송 제어 수단을 포함하며, 상기 상태 감시 수단은, 상기 전송 제어 수단이 상기 인쇄 잡들의 전송을 완료하지 않더라도, 상기 제1 등록 순서에 따라서 상기 인쇄 디바이스들과의 접속을 순차적으로 전환하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하는 정보 처리 장치가 제공된다.
본 발명의 또 다른 실시예에 따르면, 복수의 인쇄 디바이스들과 통신할 수 있는 정보 처리 장치의 잡 처리 방법으로서, 인쇄 잡들의 출력 대상들이며 상태 정보가 취득될 인쇄 디바이스들을 제1 등록 순서로 감시 큐에 순차적으로 등록하는 단계, 상기 인쇄 잡들의 출력 대상들인 상기 인쇄 디바이스들을 제2 등록 순서로 전송 큐에 순차적으로 등록하는 단계, 상기 제1 등록 순서에 따라서 상기 인쇄 디바이스들을 접속하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하는 단계, 및 상기 제2 등록 순서에 따라서 상기 인쇄 잡들을 전송하는 단계를 포함하며, 상기 접속 및 취득 단계는, 상기 전송 단계가 상기 인쇄 잡들의 전송을 완료하지 않더라도, 상기 제1 등록 순서에 따라서 상기 인쇄 디바이스들과의 접속을 순차적으로 전환하는 단계, 및 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하는 단계를 포함하는 잡 처리 방법이 제공된다.
이상, 본 발명의 실시예들을 설명했다. 그러나, 본 발명이 이들 실시예들에 한정되지 않고, 특허청구범위의 범위 내에서 여러가지 변형 또는 응용을 포함할 수 있다는 것은 자명하다.
본 발명은 실시예들을 참조하여 설명되었지만, 본 발명이 개시된 실시예들에 한정되지 않는다는 점은 물론이다. 다음의 특허청구범위의 범주는 모든 이러한 변형 및 동등한 구조 및 기능을 포함하도록 가장 넓은 해석을 따른다.
본 발명의 실시예들은 이하 간략히 설명되는 첨부한 도면들을 참조하여 설명되어 진다.
도 1은 실시예에 따른 인쇄 시스템의 전체 구성을 나타내는 블록도이다.
도 2는 도 1에 도시한 인쇄 관리 서버(101) 및 디바이스(104)의 하드웨어 구 성의 일례를 도시하는 블록도이다.
도 3은 도 2에 나타낸 RAM(202)의 메모리 맵의 일례의 도면이다.
도 4는 도 1에 도시한 인쇄 관리 서버(101)의 소프트웨어 구성의 일례를 도시하는 블록도이다.
도 5는 프린트 큐 정보의 개략도이다.
도 6은 프린터 포트 정보의 개략도이다.
도 7은 잡 정보의 개략도이다.
도 8은 도 4에 나타낸 접속 순서 리스트의 개략도이다.
도 9는 도 4에 나타낸 전송 접속 순서 리스트의 개략도이다.
도 10은 도 1에 나타낸 디바이스 스케줄러(103) 및 디바이스(104)의 구성의 일례를 도시하는 블록도이다.
도 11은 도 10에 나타낸 접속 리스트의 개략도이다.
도 12는 도 10에 나타낸 스케줄 리스트의 개략도이다.
도 13은 도 10에 나타낸 이력 파일 및 이력 관리 파일의 도면이다.
도 14는 잡 제어 포트 모니터(404) 및 프린트 큐 관리부(412)에 의한 처리를 나타낸 플로우차트다.
도 15는 프린터 포트 관리부(413)에 의한 처리를 나타낸 플로우차트다.
도 16은 접속 관리부(420)에 의한 접속 개시 처리를 나타낸 플로우차트다.
도 17은 접속 관리부(420)에 의한 스케줄 처리를 나타낸 플로우차트다.
도 18은 디바이스 관리부(421)에 의한 잡 전송 처리를 나타낸 플로우차트다.
도 19는 디바이스 관리부(421)에 의한 대상 프린터 전환 처리를 나타낸 플로우차트다.
도 20은 디바이스 관리부(421)에 의한 접속 순서 리스트에서 다음 접속 처리를 나타낸 플로우차트다.
도 21은 디바이스 관리부(421)에 의한 대행 인쇄 처리를 나타낸 플로우차트다.
도 22는 전송 접속 관리부(431)에 의한 전송 처리를 나타낸 플로우차트다.
도 23은 디바이스 스케줄러(103)에 의한 이력 보존 처리를 나타낸 플로우차트다.
도 24는 디바이스 스케줄러(103)에 의한 이력 취득 처리를 나타낸 플로우차트다.
도 25는 실시예에 따른 인쇄 시스템에 의한 대상 프린터 전환 처리의 개략도이다.
도 26은 접속 순서 리스트(800)와 전송 접속 순서 리스트(900)의 천이 예들의 도면이다.
도 27은 실시예에 따른 인쇄 시스템에 의한 대상 프린터 전환 처리의 개략도이다.
도 28은 실시예에 따른 인쇄 시스템의 특징의 개략도이다.
도 29는 실시예에 따른 인쇄 시스템의 특징의 개략도이다.
<도면의 주요 부분에 관한 설명>
101 : 인쇄 관리 서버 컴퓨터
102 : 이더넷
103 : 디바이스 스케줄러
104 : 디바이스
401 : 일반 애플리케이션들
402 : 프린터 드라이버
403 : 프린트 스풀러
404 : 잡 제어 포트 모니터
405 : 인쇄 관리 서비스
410 : 인쇄 관리부
411 : 잡 관리부
412 : 프린트 큐 관리부
413 : 프린터 포트 관리부
420 : 접속 관리부
421 : 디바이스 관리부
430 : 전송 관리부
432 : 전송부

Claims (9)

  1. 복수의 인쇄 디바이스들(104A 내지 104N)과 통신하도록 구성된 정보 처리 장치(101)로서,
    인쇄 잡들의 출력 대상들이며 상태 정보가 취득될 인쇄 디바이스들을 제1 등록 순서로 감시 큐(monitoring queue)에 순차적으로 등록하도록 구성된 제1 등록 수단(420),
    상기 인쇄 잡들의 출력 대상들인 상기 인쇄 디바이스들을 제2 등록 순서로 전송 큐에 순차적으로 등록하도록 구성된 제2 등록 수단(430),
    상기 제1 등록 순서에 따라 상기 인쇄 디바이스들을 접속하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하도록 구성된 상태 감시 수단(420), 및
    상기 제2 등록 순서에 따라 상기 인쇄 잡들을 전송하도록 구성된 전송 제어 수단(430)
    을 포함하며,
    상기 상태 감시 수단(420)은, 상기 전송 제어 수단이 상기 인쇄 잡들의 전송을 완료하지 않더라도, 상기 제1 등록 순서에 따라 상기 인쇄 디바이스들(104A 내지 104N)과의 접속을 순차적으로 전환하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하도록 구성되는 정보 처리 장치.
  2. 제1항에 있어서,
    상기 전송 제어 수단(430)은, 또한 상기 상태 감시 수단(420)이 상기 상태 정보를 취득하는 상기 인쇄 디바이스를 전환한다면, 상기 인쇄 디바이스들(104A 내지 104N)로의 상기 인쇄 잡들의 전송을 지속하도록 구성되는 정보 처리 장치.
  3. 제1항에 있어서,
    상기 상태 감시 수단(420)에 의한 접속수는 상기 전송 제어 수단(430)에 의한 접속수보다 작은 정보 처리 장치.
  4. 제1항에 있어서,
    상기 상태 감시 수단(420)에 의한 접속수와 상기 전송 제어 수단(430)에 의한 접속수를 설정하도록 구성된 접속수 설정 수단을 더 포함하는 정보 처리 장치.
  5. 복수의 인쇄 디바이스들(104A 내지 104N)과 통신할 수 있는 정보 처리 장치(101)의 잡 처리 방법으로서,
    인쇄 잡들의 출력 대상들이며 상태 정보가 취득될 인쇄 디바이스들을 제1 등록 순서로 감시 큐에 순차적으로 등록하는 단계,
    상기 인쇄 잡들의 출력 대상들인 상기 인쇄 디바이스들을 제2 등록 순서로 전송 큐에 순차적으로 등록하는 단계,
    상기 제1 등록 순서에 따라 상기 인쇄 디바이스들을 접속하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하는 단계, 및
    상기 제2 등록 순서에 따라 상기 인쇄 잡들을 전송하는 단계
    를 포함하며,
    상기 접속 및 취득 단계는, 상기 전송 단계가 상기 인쇄 잡들의 전송을 완료하지 않더라도, 상기 제1 등록 순서에 따라 상기 인쇄 디바이스들과의 접속을 순차적으로 전환하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하는 단계를 포함하는 잡 처리 방법.
  6. 제5항에 있어서,
    상기 전송 단계는, 상기 접속 및 취득 단계에서 상기 상태 정보를 취득하도록 상기 인쇄 디바이스들이 전환되면, 상기 인쇄 디바이스들로의 상기 인쇄 잡들의 전송을 지속하는 단계를 포함하는 잡 처리 방법.
  7. 제5항에 있어서,
    상기 접속 및 취득 단계에서의 접속수는 상기 전송 단계에서의 접속수보다 작은 잡 처리 방법.
  8. 제5항에 있어서,
    상기 접속 및 취득 단계에서의 접속수와 상기 전송 단계에서의 접속수를 설정하는 단계를 더 포함하는 잡 처리 방법.
  9. 정보 처리 장치로 하여금 정보 처리 장치의 잡 처리 방법을 실행하게 하는 프로그램을 기억하는 컴퓨터 판독가능한 기억 매체로서,
    상기 방법은,
    인쇄 잡들의 출력 대상들이며 상태 정보가 취득될 인쇄 디바이스들을 제1 등록 순서로 감시 큐에 순차적으로 등록하는 단계,
    상기 인쇄 잡들의 출력 대상들인 상기 인쇄 디바이스들을 제2 등록 순서로 전송 큐에 순차적으로 등록하는 단계,
    상기 제1 등록 순서에 따라 상기 인쇄 디바이스들을 접속하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하는 단계, 및
    상기 제2 등록 순서에 따라 상기 인쇄 잡들을 전송하는 단계
    를 포함하며,
    상기 접속 및 취득 단계는, 상기 전송 단계가 상기 인쇄 잡들의 전송을 완료하지 않더라도, 상기 제1 등록 순서에 따라 상기 인쇄 디바이스들과의 접속을 순차적으로 전환하고, 상기 인쇄 디바이스들로부터 상기 상태 정보를 취득하는 단계를 포함하는 컴퓨터 판독가능한 기억 매체.
KR1020070119926A 2006-12-22 2007-11-22 정보 처리 장치, 잡 처리 방법 및 기억 매체 KR101197915B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006346199A JP4857102B2 (ja) 2006-12-22 2006-12-22 情報処理装置、ジョブ処理方法、プログラム及び記憶媒体
JPJP-P-2006-00346199 2006-12-22

Publications (2)

Publication Number Publication Date
KR20080059038A true KR20080059038A (ko) 2008-06-26
KR101197915B1 KR101197915B1 (ko) 2012-11-06

Family

ID=39186837

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070119926A KR101197915B1 (ko) 2006-12-22 2007-11-22 정보 처리 장치, 잡 처리 방법 및 기억 매체

Country Status (5)

Country Link
US (1) US8553254B2 (ko)
EP (1) EP1939723B1 (ko)
JP (1) JP4857102B2 (ko)
KR (1) KR101197915B1 (ko)
CN (1) CN101206560B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150134499A (ko) 2014-05-21 2015-12-02 주식회사 이지몬 트라이플렉스 모드 기능을 제공하는 스마트 콘센트를 이용한 전원관리시스템 및 스마트 콘센트, 트라이플렉스 모드 기능을 제공하는 스마트 멀티탭을 이용한 전원관리시스템 및 스마트 멀티탭

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7804629B2 (en) * 2006-03-14 2010-09-28 Xerox Corporation System and method for estimating toner usage for a printing system
JP4827615B2 (ja) * 2006-05-29 2011-11-30 キヤノン株式会社 情報処理装置、印刷システム、監視方法、プログラム及び記憶媒体
JP5319237B2 (ja) * 2008-10-28 2013-10-16 キヤノン株式会社 印刷システム及びその制御方法
US8806611B2 (en) * 2008-12-02 2014-08-12 At&T Intellectual Property I, L.P. Message administration system
JP2011165009A (ja) * 2010-02-10 2011-08-25 Canon Inc 印刷ジョブ管理装置及び印刷ジョブ管理方法及び画像形成装置
JP2012074923A (ja) * 2010-09-29 2012-04-12 Brother Ind Ltd 多機能機及びコンピュータプログラム
JP5644449B2 (ja) 2010-12-06 2014-12-24 ソニー株式会社 機器制御装置、機器制御装置の登録方法およびプログラム
JP5223995B1 (ja) * 2012-11-28 2013-06-26 富士ゼロックス株式会社 印刷制御装置、データ管理方法およびプログラム
JP5288040B1 (ja) * 2012-11-28 2013-09-11 富士ゼロックス株式会社 印刷管理装置、画像形成システムおよびプログラム
JP6299101B2 (ja) * 2013-07-26 2018-03-28 株式会社リコー サービス提供システム、サービス提供方法及びプログラム
CN105450533A (zh) * 2015-11-30 2016-03-30 上海斐讯数据通信技术有限公司 路由器的系统选择方法及所适用的路由器
JP7176235B2 (ja) * 2018-06-06 2022-11-22 富士フイルムビジネスイノベーション株式会社 情報処理装置、ワークフローシステム及びプログラム

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07129337A (ja) * 1993-11-04 1995-05-19 Fuji Xerox Co Ltd マルチプリンタ管理システム
US6452692B1 (en) * 1996-12-02 2002-09-17 Sun Microsystems, Inc. Networked printer server
JP4817474B2 (ja) * 1998-03-17 2011-11-16 キヤノン株式会社 データ処理装置およびデ―タ処理方法およびコンピュ―タが読み出し可能なプログラムを格納した記憶媒体
US7202962B2 (en) * 1998-03-19 2007-04-10 Oce-Technologies B.V. Scan and print processing in a network system having a plurality of devices
JP2000132354A (ja) * 1998-10-23 2000-05-12 Canon Inc プリンタの管理装置及び管理方法
US7027169B1 (en) * 1999-03-31 2006-04-11 Minolta Co., Ltd. System for efficiently distributing print jobs
JP3639772B2 (ja) * 1999-06-30 2005-04-20 キヤノン株式会社 情報処理装置および印刷システムおよび印刷制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP3845789B2 (ja) * 1999-08-19 2006-11-15 カシオ計算機株式会社 印刷制御装置、及び記録媒体
US6856416B1 (en) * 1999-11-03 2005-02-15 Toshiba Tech Corporation Dynamic load balancing for a tandem printing system
JP3492271B2 (ja) * 2000-01-31 2004-02-03 キヤノン株式会社 端末装置、電源制御方法及び記憶媒体
US7266590B2 (en) * 2000-02-21 2007-09-04 Seiko Epson Corporation System for mediating printing on network
JP3788184B2 (ja) 2000-04-07 2006-06-21 セイコーエプソン株式会社 分散印刷制御装置および分散印刷制御方法並びに記録媒体
JP2002149510A (ja) * 2000-11-09 2002-05-24 Matsushita Electric Ind Co Ltd サーバ装置
JP4420421B2 (ja) * 2001-03-19 2010-02-24 キヤノン株式会社 情報処理装置およびその制御方法
CN100558559C (zh) * 2002-07-19 2009-11-11 精工爱普生株式会社 打印系统
WO2004114118A1 (ja) * 2003-06-23 2004-12-29 Sharp Kabushiki Kaisha 情報処理装置、集線装置、集線装置を備えたネットワーク情報処理システム、情報処理プログラムおよび記録媒体
JP2005026853A (ja) * 2003-06-30 2005-01-27 Toshiba Corp 表示情報の無線接続切換えシステム
KR100529335B1 (ko) * 2003-07-09 2005-11-17 삼성전자주식회사 네트워크 인쇄 제어 방법 및 장치와 컴퓨터 프로그램을저장하는 컴퓨터로 읽을 수 있는 기록 매체
JP2005122275A (ja) * 2003-10-14 2005-05-12 Canon Inc 情報処理装置及び方法及びプログラム
JP4006392B2 (ja) * 2003-12-03 2007-11-14 キヤノン株式会社 情報処理装置、及び、制御プログラム
JP4018622B2 (ja) * 2003-12-10 2007-12-05 キヤノン株式会社 情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム並びに記憶媒体
JP3927949B2 (ja) * 2003-12-10 2007-06-13 キヤノン株式会社 情報処理装置、負荷分散印刷方法、プログラム、及び記憶媒体
KR100594713B1 (ko) * 2003-12-15 2006-06-30 삼성전자주식회사 여러개의 인쇄 잡을 효율적으로 인쇄하기 위한 스풀링제어 장치 및 그의 스풀링 제어 방법
JP3854963B2 (ja) * 2003-12-15 2006-12-06 キヤノン株式会社 情報処理装置、印刷システム、負荷分散印刷方法、及び制御プログラム
US20060196006A1 (en) * 2004-07-06 2006-09-07 Willis Douglas G Articulated caster
US7548335B2 (en) * 2005-02-25 2009-06-16 Microsoft Corporation Print job queuing and scheduling systems and methods
EP1724670A3 (en) * 2005-05-13 2007-02-21 Ricoh Company, Ltd. Terminal device for performing print processing, method of controlling the same, and computer product
US20060274370A1 (en) * 2005-06-03 2006-12-07 Seiko Epson Corporation Control technology used in distributed printing for printing control device and printer
JP4971610B2 (ja) * 2005-09-01 2012-07-11 キヤノン株式会社 デバイスドライバを管理するためのプログラムおよび方法と情報処理装置
JP2007122093A (ja) * 2005-10-24 2007-05-17 Canon Inc 印刷制御装置及び印刷制御方法ならびに印刷制御方法を実行するプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150134499A (ko) 2014-05-21 2015-12-02 주식회사 이지몬 트라이플렉스 모드 기능을 제공하는 스마트 콘센트를 이용한 전원관리시스템 및 스마트 콘센트, 트라이플렉스 모드 기능을 제공하는 스마트 멀티탭을 이용한 전원관리시스템 및 스마트 멀티탭

Also Published As

Publication number Publication date
EP1939723A2 (en) 2008-07-02
KR101197915B1 (ko) 2012-11-06
EP1939723B1 (en) 2018-01-10
EP1939723A3 (en) 2013-06-12
CN101206560B (zh) 2010-09-22
JP2008158767A (ja) 2008-07-10
JP4857102B2 (ja) 2012-01-18
CN101206560A (zh) 2008-06-25
US8553254B2 (en) 2013-10-08
US20080151304A1 (en) 2008-06-26

Similar Documents

Publication Publication Date Title
KR101197915B1 (ko) 정보 처리 장치, 잡 처리 방법 및 기억 매체
KR100908781B1 (ko) 정보 처리 장치, 인쇄 시스템, 감시 방법 및 기억 매체
EP1939722B1 (en) Setting time validity of subscriptions to event notifications sent from an image-forming device
US20100103453A1 (en) Printing system and control method of the printing system
JP2013187569A (ja) 画像処理装置、通信装置及びそれらの制御方法、システム、プログラム
JP2008059372A (ja) 印刷制御装置およびその方法
JP6223152B2 (ja) 画像形成システム、画像処理装置及び画像処理装置の制御方法
JP2008097226A (ja) 情報処理装置及び情報処理方法
JP2009178942A (ja) プリンタ選択システム
JP6618368B2 (ja) 配信システム及びその配信方法
KR100643758B1 (ko) 인쇄순서제어가 가능한 네트워크 인쇄장치 및 그의인쇄순서제어방법
JP5644473B2 (ja) 情報処理装置、制御プログラム、制御方法及び画像処理システム
JP2009009220A (ja) イベント通知方法及び制御プログラム並びに制御装置
JP2007025970A (ja) プルプリントシステム
JP2010231365A (ja) 通信装置及びその制御方法、並びにプログラム
JP2007004680A (ja) 印刷制御装置、印刷制御方法および印刷制御プログラム
JP6272435B2 (ja) プログラム、及び携帯型通信装置
JP4293540B2 (ja) 印刷管理装置、同方法、印刷管理プログラム及び記憶媒体
JP2003233486A (ja) プリンタ管理方法及び情報処理装置及びプログラム並びに記憶媒体
JP6234487B2 (ja) プログラム、及び携帯型通信装置
JPH07152514A (ja) リモート印刷システム
JP2005333447A (ja) 情報処理装置
JP2018063726A (ja) プログラム、携帯型通信装置、情報処理方法、および記憶媒体
JP2020001349A (ja) 留め置き印刷システム及びその管理方法と、サーバー、クライアント、代替サーバー及びプログラム
JP2005189972A (ja) 画像処理装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20100831

Effective date: 20120423

S901 Examination by remand of revocation
E902 Notification of reason for refusal
GRNO Decision to grant (after opposition)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150923

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160926

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170925

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 7