KR100778200B1 - 디바이스 드라이버의 관리 방법 및 정보 처리 장치 - Google Patents

디바이스 드라이버의 관리 방법 및 정보 처리 장치 Download PDF

Info

Publication number
KR100778200B1
KR100778200B1 KR1020060084128A KR20060084128A KR100778200B1 KR 100778200 B1 KR100778200 B1 KR 100778200B1 KR 1020060084128 A KR1020060084128 A KR 1020060084128A KR 20060084128 A KR20060084128 A KR 20060084128A KR 100778200 B1 KR100778200 B1 KR 100778200B1
Authority
KR
South Korea
Prior art keywords
peripheral
information
upper limit
priority
printer
Prior art date
Application number
KR1020060084128A
Other languages
English (en)
Other versions
KR20070026234A (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 KR20070026234A publication Critical patent/KR20070026234A/ko
Application granted granted Critical
Publication of KR100778200B1 publication Critical patent/KR100778200B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • G06F9/4413Plug-and-play [PnP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

본 발명은, 플러그 앤 플레이에 의해 인식된 디바이스에 대응하는 디바이스 드라이버를 자동 인스톨할 때에, 필요 이상의 디바이스 드라이버들이 인스톨되어 버리는 문제점을 해결하기 위해, 플러그 앤 플레이에서 인식된 디바이스에 대응하는 디바이스 드라이버를 자동 인스톨하는 경우에 인스톨 가능한 디바이스 드라이버의 상한 수를 설정한다.
디바이스 드라이버, 주변 기기, 인스톨 제어 수단, 순위 부여 수단, 속성 정보

Description

디바이스 드라이버의 관리 방법 및 정보 처리 장치{METHOD FOR MANAGING DEVICE DRIVER AND INFORMATION PROCESSING APPARATUS}
본 명세서와 합체되어 그 일부를 구성하는 첨부 도면들은 상세한 설명과 함께 본 발명의 실시예들을 기술하며, 본 발명의 원리들을 설명하는 데 기여한다.
도 1은 본 발명의 일 실시예에 따른 클라이언트와 네트워크 프린터 간의 접속을 나타내는 하드웨어 블록도.
도 2는 클라이언트와 네트워크 프린터 간의 네트워크 접속에 관련된 모듈을 나타내는 블록도.
도 3은 실시예의 네트워크 환경을 나타내는 개념도.
도 4는 클라이언트에 대한 프린터 드라이버 자동 인스톨 설정 UI의 일례를 나타내는 도면.
도 5는 도 4의 세부 설정 버튼이 눌러진 것을 나타내는 도면.
도 6은 도 5의 우선 순위를 지정하기 위한 각각의 항목들 및 그 옵션들을 나타내는 표.
도 7은 클라이언트가 프린터 탐색 요구(Probe)을 행하는 경우의 흐름도.
도 8은 우선 순위에 따라 프린터들이 정렬되는 경우의 흐름도.
도 9는 위에서부터 수량 제한까지 드라이버들이 인스톨되는 흐름도.
도 10은 모든 프린터들에 대한 드라이버들이 인스톨되는 흐름도.
도 11은 수량 제한을 초과하는 드라이버들이 소거되는 흐름도.
도 12는 네트워크에 접속하는 통지(Hello)가 프린터로부터 도달하는 경우에 클라이언트의 동작을 나타내는 도면.
도 13은 검지된 프린터들이 등재되어 있는지 여부를 질의하는 UI의 일례를 나타내는 도면.
도 14는 자동 언 인스톨이 실행되는 경우에 표시되는 UI의 일례를 나타내는 도면.
도 15는 프린터들의 목록을 표시하는 UI.
도 16a는 검지된 프린터들이 우선 순위에 따라 정렬되기 전의 일례를 나타내는 도면.
도 16b는 검지된 프린터들이 우선 순위에 따라 정렬된 후의 일례를 나타내는 도면.
도 17은 조건 정보의 일례를 나타내는 도면.
도 18은 프린터 목록의 일례를 나타내는 도면.
도 19a는 (컴퓨터가 주도권을 갖는 경우의) WS-Discovery의 흐름도.
도 19b는 (주변 기기가 주도권을 갖는 경우의) WS-Discovery의 흐름도.
도 20은 제2 실시예의 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
5: KBC
6: CRTC
7: HDC
8: NetC
9: 키보드
10: CRT
11: 하드 디스크
26: 인쇄부
28: 인쇄 기구부
30: 조작 패널
본 발명은, 예컨대 네트워크에 접속된 정보 처리 장치의 디바이스 드라이버를 관리하기 위한 방법 및 정보 처리 장치에 관한 것이다.
인터넷 또는 홈 네트워크 등 네트워크들이 확장됨에 따라,PDA 또는 휴대 전화 등의 인터랙티브(interactive) 디바이스, 스캐너, 프린터, 복사기, 디지탈 카메라 등의 화상 처리 장치 등은 네트워크 호환이 가능해졌다. 텔레비전, 에어컨, 냉장고 등의 가전 제품 등의 다양한 디바이스들도 네트워크 호환이 가능해지고 있다. 따라서, 네트워크 호환 장치를 이용하여 편의를 향상시키고, 관리의 용이성을 높이기 위해, 네트워크 디바이스를 관리하는 기능들을 제공하는 여러 가지 프로토콜또 는 아키텍쳐가 제안되고 있다(특허 문헌 1, 2 참조). 제공되는 기능들은, 예를 들어 서비스를 제공하는 네트워크 디바이스의 탐색이나, 네트워크 디바이스를 제어 하기 위한 어플리케이션 소프트웨어, 유틸리티 소프트웨어, 오퍼레이팅 시스템 등의 자동 셋업(set up)을 포함한다.
네트워크 디바이스의 관리를 자동화하기 위한 시도도 행해지고 있다. 예를 들면, 마이크로소프트사는, UPnP(등록 상표), 및 WSD: Web Services for Devices(WS-Discovery/WS-MetadataExchange)의 개발을 진행하고 있다. 이것은, 디바이스를 네트워크에 접속시키는 것만으로 그 디바이스를 이용가능하게 하는, 소위 플러그 앤 플레이를 실현하기 위한 것이다. 비즈니스 기기 및 정보 시스템 산업 협회(JBMIA)에 의해 추진되는 BMLinks(등록 상표), 애플사가 개발한 OS X에 의해 지원되는 Rendezvous 등이 알려져 있다.
네트워크 호환 프린터의 탐색에서 많은 프린터들이 탐색 되는 경우, 탐색된 프린터들을 리스팅(listing)함으로써, 이용권의 유무, 프린터를 선택하는 기준인 추천도 등을 유저에게 제시하는 기술도 제안되어 있다(특허 문헌 3).
[특허 문헌 1] 일본공개특허공보 제2004-038956호
[특허 문헌 2] 일본공개특허공보 2004-362594호
[특허 문헌 3] 일본공개특허공보 2004-149362호
그러나, 네트워크 디바이스에 플러그 앤 플레이가 보급됨에 따라, 편리성이 향상되는 반면,그 폐해도 발생한다. 그 폐해의 하나가, 유저의 필요성과는 무관하게 네트워크 디바이스의 드라이버 또는 어플리케이션 프로그램이 인스톨되어버리 는 것이다.
특히, 대규모 사무실 등에서 네트워크상에 무수히 많은 프린터가 접속되어 있는 환경에 핸드헬드 컴퓨터 등이 접속되어 있는 경우를 상정한다. 이 경우, 플러그 앤 플레이 기능이 작동하고, 네트워크상에서 가동되고 있는 네트워크 디바이스가 발견될 때마다, 그 네트워크 디바이스의 드라이버 또는 어플리케이션 프로그램이 인스톨된다. 이것은, 컴퓨터 하드웨어 자원, 특히 메모리 자원을 헛되이 낭비한다. 또한, 어플리케이션 프로그램으로부터 "인쇄"가 선택되는 경우, 수많은 프린터들이 사용가능한 디바이스로서 열거되어, 유저의 편의를 나쁘게 만든다.
또한, 특허 문헌 3에 개시된 기술을 이용하여 열거되는 디바이스들을 제한하는 것도 문제점들을 야기시킨다. 예를 들면, 전술한 바와 같이 대규모 사무실 등에서 네트워크상에 무수히 많은 프린터들이 접속되어 있는 환경에 핸드헬드 컴퓨터 등이 접속되고, 3개의 디바이스에 대응하는 드라이버가 인스톨된다고 가정하자. 이 경우, 필요로 하는 3개의 디바이스에 대한 유저 제한 정보는 "이용 가능"으로 설정되어야 하고, 나머지 디바이스들의 각각에 대한 유저 제한 정보는 "이용 불가"로 설정될 필요가 있다. 이는 작업 효율의 저하를 초래할 수 있다.
본 발명은 전술한 문제점들을 해결하기 위해 이루어진 것으로, 클라이언트 측의 간단한 구성 변경으로 인해 인스톨되는 디바이스 드라이버의 수를 제한함으로써 유저의 편의를 향상시키는 것을 목적으로 한다. 또한, 디바이스 드라이버의 수의 제한을, 유저가 지정한 우선 순위에 따라 행함으로써, 유저의 편의를 더욱 향 상시키는 것을 목적으로 한다.
상기 목적들을 달성하기 위해, 본 발명은 이하의 구성을 구비한다.
접속된 주변 기기들을 인식하는 인식 기능을 가지며, 상기 접속된 주변 기기들을 이용가능하게 할 수 있는 정보 처리 장치로서,
인스톨되는 디바이스 드라이버들의 상한 수를 유지하는 유지 수단; 및
상기 인식 기능에 의해 인식된 주변 기기들에 대응하는 디바이스 드라이버들을 인스톨하는 경우, 상기 유지 수단에 의해 유지되는 상한 수 만큼의 디바이스 드라이버들을 인스톨하는 인스톨 제어 수단을 포함하는 정보 처리 장치.
또는, 주변 기기들과 통신가능하고, 소정 조건에 기초하여 설정된 우선 순위에 따라 상기 상한 수까지 디바이스 드라이버들을 저장하며, 상기 주변 기기들을 이용가능하게 할 수 있는 정보 처리 장치로서,
상기 주변 기기로부터 발행되는 제1 신호를 수신하는 제1 수신 수단;
상기 제1 수신 수단에 의해 수신되는 제1 신호의 발행자인 주변 기기에 대한 정보를 수신하는 제2 수신 수단;
상기 제2 수신 수단에 의해 수신되는 주변 기기에 대한 정보 및 상기 조건에 기초하여 설정되는 상기 주변 기기의 우선 순위가, 상기 상한 수를 충족하는지 여부를 판정하는 판정 수단; 및
상기 판정 수단에 의해 상기 주변 기기의 우선 순위가 상기 상한 수를 충족하는 것으로 판정되는 경우, 상기 주변 기기에 대응하는 디바이스 드라이버를 인스 톨하는 인스톨 제어 수단을 포함하는 정보 처리 장치.
또는, 접속된 주변 기기들을 인식하는 인식 기능을 가지며, 상기 접속된 주변 기기들을 이용가능하게 할 수 있는 정보 처리 방법으로서,
인스톨되는 디바이스 드라이버들의 상한 수(upper limit)를 유지하는 유지 단계; 및
상기 인식 기능에 의해 인식된 주변 기기들에 대응하는 디바이스 드라이버들을 인스톨하는 경우, 상기 유지 단계에서 유지되는 상한 수 만큼의 디바이스 드라이버들을 인스톨하는 인스톨 제어 단계를 포함하는 정보 처리 방법.
또는, 주변 기기들과 통신가능하고, 소정 조건에 기초하여 설정된 우선 순위에 따라 상기 상한 수까지 디바이스 드라이버들을 저장하며, 상기 주변 기기들을 이용가능하게 할 수 있는 정보 처리 방법으로서,
상기 주변 기기로부터 발행되는 제1 신호를 수신하는 제1 수신 단계;
상기 제1 수신 단계에서 수신되는 제1 신호의 발행자인 주변 기기에 대한 정보를 수신하는 제2 수신 단계;
상기 제2 수신 단계에서 수신되는 주변 기기에 대한 정보 및 상기 조건에 기초하여 설정되는 상기 주변 기기의 우선 순위가, 상기 상한 수를 충족하는지 여부를 판정하는 판정 단계; 및
상기 판정 단계에서 상기 주변 기기의 우선 순위가 상기 상한 수를 충족하는 것으로 판정되는 경우, 상기 주변 기기에 대응하는 디바이스 드라이버를 인스톨하는 인스톨 제어 단계를 포함하는 정보 처리 방법.
또는, 컴퓨터로 하여금, 접속된 주변 기기들을 인식하는 인식 기능을 가지며, 상기 접속된 주변 기기들을 이용가능하게 하는 프로그램이 기록된 컴퓨터 판독가능한 기록 매체로서,
상기 프로그램은,
인스톨되는 디바이스 드라이버들의 상한 수(upper limit)를 유지하는 유지 단계의 코드들; 및
상기 인식 기능에 의해 인식된 주변 기기들에 대응하는 디바이스 드라이버들을 인스톨하는 경우, 상기 유지 단계에서 유지되는 상한 수 만큼의 디바이스 드라이버들을 인스톨하는 인스톨 제어 단계의 코드들을 포함하는 기록 매체.
또는, 컴퓨터로 하여금, 주변 기기들과 통신가능하고, 소정 조건에 기초하여 설정된 우선 순위에 따라 상기 상한 수까지 디바이스 드라이버들을 저장하며, 상기 주변 기기들을 이용가능하게 하는 프로그램이 기록된 컴퓨터 판독가능한 기록 매체로서,
상기 프로그램은,
상기 주변 기기로부터 발행되는 제1 신호를 수신하는 제1 수신 단계의 코드들;
상기 제1 수신 단계에서 수신되는 제1 신호의 발행자인 주변 기기에 대한 정보를 수신하는 제2 수신 단계의 코드들;
상기 제2 수신 단계에서 수신되는 주변 기기에 대한 정보 및 상기 조건에 기초하여 설정되는 상기 주변 기기의 우선 순위가, 상기 상한 수를 충족하는지 여부 를 판정하는 판정 단계의 코드들; 및
상기 판정 단계에서 상기 주변 기기의 우선 순위가 상기 상한 수를 충족하는 것으로 판정되는 경우, 상기 주변 기기에 대응하는 디바이스 드라이버를 인스톨하는 인스톨 제어 단계의 코드들을 포함하는 기록 매체.
본 발명에 따르면, 인스톨될 디바이스 드라이버들의 수는 클라이언트 장치 측의 간단한 구성에 의해 제한될 수 있다. 또한, 유저에 의해 지정되는 우선 순위에 따라 디바이스 드라이버들의 수를 제한함으로써, 유저의 편의를 더욱 향상시킬 수 있다.
본 발명의 또 다른 특징들은 (첨부 도면을 참조하여) 이하 예시적 실시예들의 설명으로부터 명백해질 것이다.
[제1 실시예]
이하, 도면을 참조하여 본 발명의 일 실시예를 기술한다. 본 실시예에 기술되는 프로토콜들 또는 수치들은 단지 예에 불과하며, 본 발명의 범위를 제한하기 위해 의도된 것은 아니다.
<인쇄 시스템의 하드웨어 구성>
도 1은, 본 발명의 일 실시예인 네트워크 인쇄 시스템에 접속되는 단일 네트워크 프린터 및 단일 클라이언트에 주목한 하드웨어 구성을 나타내는 블록도이다. 도 1에서는, 클라이언트(1000) 및 인쇄 장치인 네트워크 프린터(3000)는 네트워크(31)를 통해 접속되어 있는 구성을 갖는다. 클라이언트(1000)에 있어서, 본체(2000)에는 키보드(9), CRT(10), 하드 디스크(11) 등의 외부 디바이스들이 접속 되어 있다. 본체(2000)는 CPU(1)를 구비하며, CPU(1)는 ROM(3) 또는 하드 디스크(11)에 기억된 어플리케이션 프로그램들 또는 제어 프로그램들을 RAM(2)상으로 로드하고, 산출을 행할 수 있다. 키보드 컨트롤러(KBC)(5)는 외부 디바이스인 키보드(9)로부터의 입력을 제어한다. CRT 컨트롤러(CRTC)(6)는 CRT(10)의 표시를 제어한다. 하드 디스크 컨트롤러(HDC)(7)는 하드 디스크(11)로부터의/하드 디스크(11)로의 입/출력을 제어한다. 네트워크 컨트롤러(NetC)(8)는 네트워크(31)를 통해 프린터에 접속되어 있으며, 프린터 컨트롤러부(4000)와의 통신을 제어한다.
CPU(1), RAM(2), ROM(3), KBC(5), CRTC(6), HDC(7), 및 NetC(8)는 시스템 버스(4)에 의해 상호 접속되어 있으며, CPU(1)가 총괄적으로 각 디바이스들을 제어한다. RAM(2)은 도 17에 도시된 디바이스 순위를 결정하기 위한 기초가 되는 조건 정보(1006a)를 저장한다. RAM(2)은 네트워크 디바이스들, 특히 본 실시예에서 네트워크 프린터들이 랭크되어 있는 프린터 목록(1801)을 저장한다. 프린터 외의 디바이스를 포함하도록 본 발명의 범위가 확장되는 경우, 프린터 목록은 디바이스 목록이라 명명된다. 프린터 목록(1801)은, 컴퓨터(1000)상에 인스톨된 OS(operating system)에 의해 제공되는 UPnP 기능에 의해 인식되는 디바이스들의 명칭들(식별자들)을 포함한다. 조건 정보(1006a) 및 프린터 목록(1801)은 하드 디스크(11)에 저장되며, CPU(3)에 의해 액세스될 때 RAM(2)에 로딩된다.
본 실시예에서는, 클라이언트로서 퍼스널 컴퓨터(PC)를 상정하고 있다. 그러나, 클라이언트는 PC에 국한되는 것은 아니고, 본 발명을 구현할 수 있는 것이라면, PDA 또는 셀룰러 폰과 같은 핸드-헬드 단말기, 디지털 가전 등이어도 좋다. 이들 디바이스들 중 어느 디바이스라도, 특정 용도의 I/O 디바이스를 제외하고는 도 1에 도시된 컴퓨터(1000)의 경우와 동일한 구성을 갖는다.
네트워크 프린터(3000)에 있어서, 프린터 CPU(21)는 ROM(23)의 프로그램 영역에 저장된 제어 프로그램을 실행한다. 제어 프로그램이 실행되면, CPU는 버스(24)에 접속되는 각종 디바이스들의 액세스를 총괄적으로 제어하고, 인쇄부(26)를 통해 접속되는 인쇄 기구부(프린터 엔진)(28)에 인쇄 데이터로서의 화상 신호들이 출력된다.
CPU(21)는 네트워크 컨트롤러(NetC)(25)를 통해 클라이언트(1000)와 통신할 수 있다. 이는 통신에 의해 네트워크 프린터(3000) 내부의 정보를 클라이언트(1000)에 전송가능하게 하는 데 적합하다. RAM(22)은 CPU(21)의 주 메모리, 작업 영역 등으로서 기능한다. 또한, RAM(22)은 클라이언트(1000)로부터 수신되는 화상 비트맵 데이터 또는 인쇄 데이터를 저장하기 위한 이미지 렌더링(image rendering) 메모리, 영상 정보 저장 영역 등으로서 사용될 수 있다. 하드 디스크 컨트롤러(27)에 의해 제어되는 하드 디스크(29)는 인쇄 잡 데이터의 BOX 저장을 위해 사용된다. 조작 패널(30)은 유저가 네트워크 프린터(3000)를 조작하게 하는 유저 인터페이스이다. 조작 패널(30)은 각종 스위치들, LED 표시 어플라이언스, 및 터치-패널형 액정 패널 등으로 구성된다.
하드 디스크(29)는 프린터(3000)의 구성을 나타내는 구성 정보 데이터베이스(2901)를 저장한다. 구성 정보 데이터베이스는 각종 타입의 데이터를 포함하는 데이터베이스이다. 구성 정보 데이터베이스(2901)는 디바이스 타입 정보, 서비스 정보, 디바이스의 사용 빈도 정보, 인쇄 속도 정보, 컬러 인쇄 기능의 유무를 나타내는 컬러 기능 정보, 최대 해상도 정보, 양면 인쇄 기능의 유무를 나타내는 양면 기능 정보, 제조자 정보 등을 포함한다. 이들 항목들 중, 디바이스의 사용 빈도 정보는 프린터가 사용될 때마다 프린터 CPU(21)에 의해 갱신된다. 디바이스 드라이버가 인스톨되었는지의 여부 및 인스톨이 행해진 일시 등은 클라이언트(1000) 내에서 관리된다. 그 외 항목들에 대하여, 프린터의 모델에 따른 값은 제조 시에 등록된다. 디바이스 타입 정보는 단일 기능 프린터, 복사기 등의 디바이스 타입을 나타낸다. 서비스 정보는 디바이스 타입에 의해 제공되는 서비스를 나타낸다. 예를 들어, 프린터에 대해, 포스트스크립트(등록 상표) 등의 대응 PDL의 타입을 나타내는 정보는 서비스 정보로서 등록된다.
네트워크 프린터(3000)는, 본 발명의 기능들을 구현할 수 있는 디바이스라면, 단일 기능 프린터 또는 스캐너, 복사기, 팩시밀리 등의 기능들이 제공되는 다기능 프린터라도 좋다. 인쇄 기구부(28)로서 레이저 빔 프린터, 잉크 젯 인쇄 기능을 이용하는 프린터, 열 프린터(thermal printer) 등 어떠한 인쇄 시스템이 사용되더라도, 본 발명의 기능이 제한되는 것은 아니다.
<인쇄 시스템의 기능 블록>
도 2는 도 1에 도시된 네트워크 프린터(3000)의 프린터 컨트롤러(4000) 및 클라이언트(1000)의 메인프레임(2000) 내의 네트워크 접속에 관련된 모듈을 설명하기 위한 기능 블록도이다.
클라이언트(1000)는 통신 기능으로서 이더넷(Ethernet)(등록 상표)과 호환가 능하며 이더넷(등록 상표) 컨트롤러(1007)에 의해 제어된다. 여기서는 통신 기능을 이더넷(등록 상표)인 것으로 상정하였지만, WiFi(등록 상표: IEEE80.11a/b/g) 또는 블루투쓰(등록 상표) 등의 기능들이 고려될 수도 있다. 이더넷(등록 상표) 컨트롤러보다 상위 계층에는, SOAP(Simple Object Access Protocol) 프로세서(1004)가 제공된다. 플러그 앤 플레이(PnP) 유틸리티(1002), WSD 모듈(1003), 및 어플리케이션 프로그램(1001) 등은 처리부를 통해 XML(eXtensible Markup Language)로 기술되는 데이터의 쌍방향 통신을 실현한다.
네트워크 관리자(1005)는 이더넷(등록 상표) 컨트롤러(1007)를 관리하고, 설정 정보, 통신 상태에 관한 정보를 취득하는 기능을 갖는다. 플러그 앤 플레이(PnP) 유틸리티(1002)는 네트워크 관리자(1005)를 제어하고, 현재 실행중인 이더넷(등록 상표) 컨트롤러에 대한 정보 및 설정 정보를 취득하고, 이를 메모리(2)상에 기록하는 기능을 갖는다. PnP 유틸리티(1002)는 플러그 앤 플레이 설정 UI를 제어하고, 그 설정 내용들을 메모리(2)상에 기록한다. 설정 정보는 PnP 유틸리티(1002)에 의해 XML로 변환되고, XML의 형식으로 메모리(2)상에 기록된다.
WSD 모듈(1003)은, SOAP 프로세서(1004)를 통해 WS-Discovery 사양에 기초하여, 네트워크 디바이스로부터 통지되는 Hello 메시지에 대한 응답 처리를 실행한다. WSD 모듈(1003)은 네트워크 디바이스를 탐색하기 위한 Probe 메시지의 발행 처리를 실행한다. WS-Discovery 사양은 마이크로소프트사 등이 책정을 추진하는 규격이다. WSD 모듈(1003)은 WS-MetadataExchange 사양에 기초하여, GetMetadata 메시지를 발행한다. WSD 모듈(1003)은 GetMetadata 메시지에 응답하여, 디바이스 에 의해 송신되는 응답 메시지(디바이스에 대한 Metadata)를 수신함으로써, 네트워크 디바이스의 구성 정보를 취득한다. GetMetadata 메시지는 디바이스의 구성 정보를 포함한다.
메시지 처리에 의해 네트워크 디바이스가 발견되는 경우, WSD 모듈(1003)은 발견된 네트워크 디바이스의 구성 정보를 PnP 컨트롤러(1006)에 통지한다. PnP 컨트롤러(1006)는 통지된 구성 정보에 기초하여, 적용가능한 드라이버 또는 적용가능한 유틸리티 소프트웨어를 하드 디스크(11) 또는 메모리(2)로부터 판독하고, 이를 클라이언트(1000)에 인스톨하는 기능을 갖는다. 또는, 드라이버 등의 소프트웨어 프로그램을 관리하기 위한 소프트웨어 관리 서버가 네트워크에 접속되는 경우에는, 드라이버 등의 프로그램은 소프트웨어 관리 서버로부터 판독될 수 있다.
어플리케이션 프로그램(1001)은, 예컨대 문서 처리 어플리케이션 프로그램 등이다. 어플리케이션 프로그램(1001)은, 편집된 문서 데이터를 네트워크 디바이스인 프린터로 인쇄할 수 있다. 이 때, 어플리케이션 프로그램(1001)은, PnP 컨트롤러(1006)에 의해 인스톨되는 드라이버 또는 유틸리티를 통해, 네트워크 프린터(3000)에 인쇄 잡 데이터를 송신한다. 이와 같이, 클라이언트(1000)가 전술한 구성을 가짐에 따라, 접속된 주변 기기를 인식할 수 있다.
한편, 네트워크 프린터(3000)도 이더넷(등록 상표)과 호환가능한 통신 기능을 갖는다. 통신 기능은 이더넷(등록 상표) 컨트롤러(3001)에 의해 제어된다. 이더넷(등록 상표) 컨트롤러(3001)보다 상위 계층에는, SOAP 프로세서(3002)가 제공된다. WSD 모듈(3004) 및 인쇄 제어부(3003)는, 각각 SOAP 프로세서(3002)를 통해 XML로 기술되는 데이터의 쌍방향 통신을 구현한다.
여기서, WSD 모듈(3004)은, 네트워크 프린터(3000)가 SOAP 프로세서(3002)를 통해 네트워크에 접속되는 경우, Hello 메시지의 송신 처리를 실행한다. WSD 모듈(3004)은 클라이언트(1000)로부터 발행되는 Probe 메시지에 대한 응답 처리를 실행한다. Hello 메시지 및 Probe 메시지는, 마이크로 소프트사 등이 그 사양 책정을 추진하는 WS-Discovery 사양에 기초한 메시지들이다.
WSD 모듈(3004)은, 클라이언트(1000)로부터 발행되는 GetMetadata 메시지에 응답하여, 네트워크 프린터(3000)에 의해 소유되는 구성 정보(디바이스에 대한 Metadata 메시지)를 회신한다. 메시지들의 교환은 마이크로소프트사 등이 그 책정을 추진하고 있는 WS-MetadataExchange 사양에 기초하고 있다.
<WSD 동작의 개요>
도 3은 본 실시예의 네트워크 환경의 개념도를 나타낸다. 단일 네트워크(31)에 복수 타입의 10개의 네트워크 프린터들이 접속되어 있으며, 클라이언트(100)도 동일한 네트워크(31)에 접속되어 있다. 네트워크(31)에 접속된 네트워크 프린터들의 각각은 WSD의 기능을 갖는 도 2의 프린터(3000)의 경우와 동일한 구성을 갖는다. 물론, 클라이언트(1000)는 도 2의 컴퓨터(1000)의 구성을 갖는다.
도 19a 및 도 19b는 네트워크(31)에 접속된 클라이언트 컴퓨터(1000) 및 네트워크 프린터(3000)에 의한 WS-Discovery 프로토콜 및 WS-Metadata 프로토콜에 따른 디바이스 드라이버의 인스톨의 수순을 나타내는 흐름도이다. 도 19a 및 도 19b는 이들의 개요를 나타낸다. 도 4에 도시된 설정들에 따른 조건부 처리도 있으나, 도 19a 및 도 19b에는 생략되어 있다. 이 조건에 대해서는 도 4 이후 및 도 7 이후의 흐름들을 따라 설명할 것이다.
도 19a는, 예컨대 클라이언트 컴퓨터에서의 조작 등을 트리거로 하는 탐색 수순의 일례이다. 예를 들어, 윈도우즈(등록 상표)에서는, "프린터 추가"의 기능이 유저에게 제공된다. 유저가 이 기능을 실행하는 경우, 도 19a의 수순이 실행된다. 우선, 클라이언트 컴퓨터(1000)로부터 프린터(3000)로 디바이스 탐색 요구(Probe) 메시지(1901)가 송신된다. 디바이스 탐색 요구 메시지(1901)는 전체 네트워크(31)로 브로드캐스팅된다. 디바이스 탐색 요구 메시지(1901)는 XML로 기술되며, WS-Discovery를 위한 명칭 공간들의 정의들 뿐만 아니라, 해당 메시지가 디바이스 탐색 요구 메시지라는 것을 나타내는 정보 또는 탐색된 디바이스의 종류를 포함한다. 본 실시예에서는, 탐색 대상의 디바이스 타입이 프린터이기 때문에, WS-Discovery에 의해 정의되는 타입 태그상에는, "PrintBasic"이 기술된다. 이하 기술될 각 메시지 내에는 메시지의 종류(타입)를 나타내는 정보가 마찬가지로 포함된다.
디바이스 탐색 요구 메시지(1901)를 수신한 디바이스는 메시지의 종류를 판정한다. 만약, 디바이스 탐색 요구 메시지(1901)라면, 디바이스는 탐색되는 디바이스 타입을 메시지로부터 판독하고, 이 타입이 디바이스 타입과 일치하는지의 여부를 판정한다. 이 판정은, 디바이스의 구성 정보 데이터베이스(2901)에 저장된 디바이스 타입 정보와 디바이스 탐색 요구 메시지 내에 포함되는 탐색된 디바이스 타입이 일치하는지를 비교하여 행해진다. 이들이 일치하는 경우, 디바이스는 탐색 된 디바이스이다. 따라서, 디바이스들의 구성 정보에 저장되는 디바이스 타입 정보는, 디바이스 탐색 요구 메시지의 타입과 동일한 형식으로 저장되는 것이 바람직하다.
디바이스가 탐색 요구 메시지에 의해 탐색된 디바이스가 자신인 것으로 판정하는 경우, 응답(Probe Match) 메시지(1902)를 클라이언트(1000)에 송신한다. 응답 메시지(1902)는 응답된 디바이스의 어드레스(예컨대, IP 어드레스)를 포함한다.
클라이언트(1000)는 응답 메시지(1902)를 송신한 디바이스에 디바이스 정보 요구(GetMetaData) 메시지(1903)를 송신한다. 디바이스 정보 요구 메시지(1903)는, 디바이스의 구성 정보 데이터베이스(2901)에 액세스되어 지정된 정보를 취득하기 위한 메시지이다. 본 실시예에서, 클라이언트는, 디바이스의 사용 빈도, 인쇄 속도, 컬러 인쇄 기능의 유무, 최대 해상도, 양면 인쇄 기능의 유무, 제조자 등의 구성 정보를 나타내는 항목들의 데이터를 요구한다.
디바이스 정보 요구 메시지(1903)를 수신한 프린터(3000)는, 구성 정보 데이터베이스(2901)로부터 요구된 항목들의 내용들을 판독한다. 다음, 디바이스 정보(MetaDataforDevice) 메시지(1904) 내의 판독된 항목들의 각각의 내용들에 대한 정보를 포함하며, 이를 클라이언트(1000)에 송신한다.
다음, 디바이스 정보(1904)를 수신한 클라이언트(1000)는, 다음 서비스 정보 요구(GetMetaData) 메시지(1905)를 디바이스에 송신한다. 서비스 정보 요구(GetMetaData) 메시지(1905)는, 목적지 디바이스가 구성 정보 데이터베이스로부터 제공할 수 있는 서비스를 나타내는 서비스 정보를 취득하기 위한 메시지이다.
서비스 정보 요구 메시지(1905)를 수신한 디바이스는, 구성 정보 데이터베이스(2901)로부터 서비스 정보를 판독하고, 이를 서비스 정보(MetaDataforService) 메시지(1906)에 기입하고, 이를 클라이언트(1000)에 송신한다.
서비스 정보 메시지(1906)를 수신한 클라이언트는, 클라이언트(1000)상의 메시지에 포함된 서비스 정보에 기초하여 서비스 정보에 대응하는 디바이스 드라이버를 인스톨한다(1907). 이 처리에 의해, 접속된 주변 기기에 대한 정보가 취득(수집)될 수 있다. 서비스 정보에 대응하는 디바이스 드라이버가 클라이언트(1000)의 드라이버 파일의 데이터베이스에 포함되는 경우, 이는 데이터베이스로부터 판독되고 인스톨된다. 클라이언트(1000)의 드라이버 파일의 데이터베이스에 포함되지 않은 경우, 드라이버 파일은, 예컨대 네트워크에 접속되는 소프트웨어 관리 서버로부터 다운로드되고 인스톨된다. 서비스 정보에 대응하는 디바이스 드라이버는, 예컨대 (파일의 위치를 나타내는 정보를 포함하여) 서비스 정보가 디바이스 드라이버 파일명과 관련되는 디렉토리 정보에 기초하여 식별될 수 있다. 클라이언트는 디렉토리 정보를 참조하고, 수신된 서비스 정보에 대응하는 디바이스 드라이버 파일명을 취득한다. 클라이언트는 취득된 파일명이 나타내는 디바이스 드라이버 파일을 판독하고, 이를 인스톨한다. 디렉토리 정보는 유지되며 클라이언트(1000) 또는 소프트웨어 관리 서버에 의해 관리된다.
한편, 도 19b는 프린터 등의 네트워크 디바이스를 네트워크에 접속하고, 전원을 투입하는 등, 네트워크 디바이스의 추가 동작을 트리거하는 탐색 수순의 일례이다. 디바이스가 네트워크에 접속되는 경우, 이더넷(등록 상표) 컨트롤러(3001) 는 네트워크에의 접속을 인식한다. 이는 프린터(3000)가 네트워크에 접속하는 통지(Hello) 메시지(1911)를 클라이언트 컴퓨터(1000)에 송신하는 것을 트리거한다. 이하에서는, "네트워크에 접속하는 통지"를 "접속 통지"라고 명명한다. 디바이스 탐색 요구 메시지(1901)는 전체 네트워크에 브로드캐스트된다. 접속 통지 메시지(1911)는, 적어도 접속 통지 메시지(1911)의 송신원 프린터(3000)의 위치를 나타내는 어드레스 정보를 포함한다.
접속 통지 메시지(1911)를 수신한 클라이언트(1000)는 디바이스 정보 요구(GetMetaData) 메시지(1911)를 메시지(1911)의 송신원 디바이스에 송신한다. 디바이스 정보 요구 메시지(1912)는, 디바이스 정보 요구 메시지(1903)의 동일한 내용들을 갖는 메시지이다.
디바이스 정보 요구 메시지(1911)를 수신한 프린터(3000)는, 요구된 항목들의 내용들을 구성 정보 데이터베이스(2901)로부터 판독한다. 다음, 판독된 항목들의 각각의 내용들에 대한 정보를 디바이스 정보(MetaDataforDevice) 메시지(1913) 에 포함시켜, 이를 클라이언트(1000)에 송신한다.
디바이스 정보(1913)를 수신한 클라이언트(1000)는, 서비스 정보 요구(GetMetaData) 메시지(1914)를 프린터(3000)에 송신한다. 서비스 정보 요구(GetMetaData) 메시지(1914)는 서비스 정보 요구 메시지(1905)의 경우와 동일한 내용들을 갖는다.
서비스 정보 요구 메시지(1914)를 수신한 프린터(3000)는, 구성 정보 데이터베이스(2901)로부터 서비스 정보를 판독하고, 이를 서비스 정 보(MetaDataforService) 메시지(1915)로 기입하고, 이를 클라이언트(1000)에 송신한다.
서비스 정보 메시지(1915)를 수신한 클라이언트(1000)는, 클라이언트(1000)상의 메시지에 포함되는 서비스 정보에 기초하여, 서비스 정보에 대응하는 디바이스 드라이버를 인스톨한다(1916). 이 수순은 도 19a의 인스톨 방식과 동일한 방식으로 실행된다.
이상, WS-Discovery를 따르는 디바이스 드라이버의 인스톨 수순을 기술하였다. 이 수순 중, 도 19a의 인스톨 처리(1907) 및 도 19b의 인스톨 처리(1916) 동안, 본 실시예에서는, 조건 정보(1006a)에 따라 선택되는 디바이스(프린터)의 디바이스 드라이버가 인스톨된다. 또한, 조건 정보(1006a)에 따라 인스톨되지 않는 디바이스(프린터)의 디바이스 드라이버는 인스톨되지 않는다. 이에 대해서는, 이하 상술한다.
<조건 정보의 설정 유저 인터페이스>
도 4는 클라이언트의 CRT(10)상에 표시되는 프린터 드라이버 자동 인스톨 설정 UI를 나타낸다. 유저는, 도 3에 도시된 바와 같이 복수의 네트워크 프린터들이 셋업되는 네트워크(31)에 클라이언트(1000)를 접속하는 경우, 설정 UI(100)를 이용하여 프린터 드라이버의 자동 인스톨 설정을 행한다. UI(100)의 제일 위에 표시되는 자동 인스톨 무선 버튼들(101)은, 네트워크 프린터용 프린터 드라이버가 네트워크 플러그 앤 플레이에 의해 자동적으로 인스톨되는지의 여부를 지정하기 위한 무선 버튼들이다. 자동 인스톨 무선 버튼(101)이 "인스톨함"으로 설정되는 경우, 클 라이언트(1000)는 도 19a의 수순을 개시한다. 도 19b의 수순은 디바이스에 의해 개시된다. 따라서, 자동 인스톨 무선 버튼(101)이 "인스톨하지 않음"으로 설정되는 경우, 클라이언트(1000)는 접속 통지 메시지에 응답하지 않는다. 도 19a 및 도 19b에 기술된 WSD에 의한 네트워크 디바이스(프린터)의 자동 인스톨은 네트워크 플러그 앤 플레이 기능으로 명명된다.
다음, 자동 인스톨을 위해 "인스톨함"을 입력한 유저는, 다음에 수량 제한 무선 버튼(102a) 및 스핀 박스(102b)에 의해 자동 인스톨될 프린터 드라이버들의 수의 제한값을 지정한다. 수량 제한 무선 버튼(102a)에 "제한 없음"이 지정되는 경우, 프린터 드라이버들을 인스톨하는 디바이스들의 수는 제한되지 않는다. 한편, "제한됨"이 지정되는 경우, 유저는 스핀 박스(102b)에 의해 제한값을 입력한다. 다음, 클라이언트(1000)는, 입력된 값을 인스톨될 디바이스 드라이버의 수량 제한으로서 RAM(2) 내에 유지한다. 클라이언트(1000)에 인스톨되는 프로그램은 입력된 제한값을 RAM(2)에 저장할 수 있다.
드라이버들을 인스톨하기 위한 디바이스들의 수가 제한되는 경우, 유저는 드라이버들이 인스톨될 프린터들의 순위(우선 순위)를 결정하기 위한 키(key)가 되는 속성 정보의 항목을 지정할 수 있다. 플러그 앤 플레이에 의해 발견되는 복수의 네트워크 프린터들에는 키로서의 지정된 속성 정보에 기초하여 우선 순위가 부여되고, 지정된 제한값 내의 순위의 프린터들에 대응하는 디바이스 드라이버들이 인스톨된다. 키로서 사용될 속성 정보를 지정하기 위해, 유저는 상세 설정 버튼(103)을 누른다. 상세 설정 버튼(103)이 눌러질 때의 UI는 도 5에 도시되어 있다.
유저는 체크 박스(104)를 이용하여 수량 제한을 초과하는 드라이버들을 삭제하도록 지정할 수 있다. 또한, 유저는 체크 박스(105)를 이용하여 프린터 접속 통지 시에도 자동적으로 인스톨(언 인스톨)하도록 지정한다. 도 19b에 도시된 수순은 체크 박스(105)가 체크되는 한 실행된다. 각 체크 박스를 체크하기 위한 조작의 상세는 이하 설명한다. 각 체크 박스의 설정 내용들은, 도 17에 도시된 조건 정보(1006a)의 일부인 제한 수량 플래그(1711), 자동 인스톨 플래그(1712), 드라이버 삭제 플래그(1713), 및 프린터 주도 플래그(1714)로서 RAM(2)에 저장된다. 제한값은 제한값 필드(1700)에 저장된다. 또한, 제한값은 수량 제한으로도 명명된다. 조건 정보(1006a)를 유지하는 PnP 컨트롤러(1006)는 유지 수단으로서 기능하기도 한다.
도 5는, 도 4의 상세 설정 버튼(103)이 눌러질 때 표시되는 간략한 UI를 나타내는 도면이다. 우선 순위를 지정하기 위한 테이블(201)은 도 4의 UI에 추가적으로 표시되어 있다. 우선 순위를 결정하기 위해 유저는, 사용 빈도 또는 최대 해상도 등의 소정 항목들에 있어서 각각 "주 10회 이상" 또는 "1200 dpi 이상" 등 프린터 드라이버로서 자동 인스톨 되기를 원하는 속성 정보(설정값)를 설정한다. 유저는 각 항목들에 대해 요구 레벨들을 입력하고, UP 버튼(202) 또는 DOWN 버튼(203)을 사용하여 속성 정보의 항목들 중에서 중요시하는 순으로 항목들을 정렬한다. 항목들의 각각에 등급을 지정하기 위한 콤보 박스의 항목들의 상세한 예 및 각 항목들의 예들은 도 6에 도시하였다.
도 6은, 도 5의 우선 순위를 지정하기 위한 각 항목들 및 각 옵션들을 나타 내는 표이다. 최상단의 필드들(301~309)은 항목명들을 나타내고, 제2 필드 아래로는 각 항목에 대한 옵션들을 나타낸다. 예를 들어, 드라이버(301)의 항목에 대해서는, "인스톨되었음" 및 "언 인스톨되었음"의 두 옵션이 주어진다. 유저는 도 5의 테이블(201) 내의 필드(201a)를 지정함에 있어서의 옵션들 중 하나를 지정할 수 있다. 예를 들어, 속성 정보로서 "인스톨되었음"이 선택되는 경우, 클라이언트(1000)는 인스톨되지 않은 디바이스 드라이버에 대응하는 주변 기기의 우선 순위보다 인스톨된 디바이스에 대응하는 주변 기기에 더 높은 우선 순위를 부여한다. 지정된 값은 도 17의 조건 정보(1006a)에 저장된다. 우선 순위(키 순위)(1701) 및 키 식별자(1702), 대응 설정값(1703)은 테이블 내의 각 항목에 대해 저장된다. 우선 순위(1701)는 항목들의 배열된 순으로 나타내는 것이 가능하기 때문에, 이는 반드시 필요한 것은 아니다. 본 실시예에서, 발견된 프린터들은, 도 5의 테이블(201) 내에 지정되는 설정값과 일치하는 프린터들을 포함하는 하나와, 최선의 우선 순위의 항목으로부터의 분류 조건으로서 설정값에 기초하는 설정값과 일치하지 않는 프린터들을 포함하는 다른 하나의 2개의 카테고리들로 분류된다. 각 카테고리에 속하는 디바이스들은 다음 우선 순위의 항목에 대해 유사한 방식으로 2개의 카테고리들로 더 분류된다. 이 분류는 우선 순위에 따라 각 항목에 대해 반복된다. 다음, 더 높은 우선 순위의 항목에 대한 분류 조건을 갖는 "적용가능한" 프린터는 더 높은 우선 순위의 프린터로서 평가된다. 우선 순위를 설정하기 위한 조건들 중 하나는 각 주변 기기의 함수이다. 클라이언트(1000)는, 지정되지 않은 함수를 갖는 주변 기기들의 우선 순위보다 지정된 함수를 갖는 주변 기기에 더 높은 우 선 순위를 부여할 수 있다. 예를 들어, 도 5의 예에서는, "컬러 인쇄", "최대 해상도", "양면 인쇄" 등이 주변 기기의 함수들에 대응한다.
다음, 우선 순위 설정의 구체적인 예를 이하 설명한다. 예를 들어, 우선 순위는 이하와 같은 수식으로 프린터들의 순위를 평가할 수 있다. 여기서, 각 항목의 우선 순위는 "p"이고, 항목들의 수는 "n"이다. 대상 프린터가 우선 순위 "p"의 항목의 설정값이 나타내는 조건과 일치하는 경우에는 함수 "S"는 S(p)=1로 정의되고, 대상 프린터가 상기 조건과 일치하지 않는 경우에는 S(p)=0으로 정의된다. 함수 "S(p)"의 평가는 대상 프린터에 대응하는 구성 정보 및 프린터 목록에 등록되는 설정값(1703)에 기초하여 행해진다. 다음, 네트워크상에서 탐색된 프린터들 중 대상 프린터 "i"에 대하여, 프린터 순위
Figure 112006063426494-pat00001
, p=1...n 의 값이 산출된다. "ΣX(p), p=1...n"는 p=1 내지 p=n으로부터 "p"의 값을 하나씩 증가시킴으로써 X(p)의 총계를 취득하기 위한 산출을 나타낸다. 모든 프린터들에 대해 취득되는 값 "Pi"는 프린터 "i"의 순위를 나타낸다. 값 "p"가 커질수록, "p"가 나타내는 우선 순위의 순위가 높아진다. 값 "Pi"가 커질수록, 프린터의 우선 순위는 높아진다. 도 17의 조건 정보(1006a)의 키 순위(1701), 키(1702) 및 설정값(1703)의 설정이 값 "Pi"의 순서로 정렬되는 경우, 도 5에 의해 설정된 정보를 소정의 속성 정보로서, 접속되는 주변 기기들에 우선 순위가 설정될 수 있다. 순위를 나타내는 것으로 충분하기 때문에, 값 "Pi"는 키 순위 대신에 조건 정보(1006a)에 첨부될 수 있다. 복수의 프린터들이 동일한 값 Pi를 갖는 경우라도, 드라이버들은 프린터들 의 수가 상한 수 내에서 인스톨되도록 해야 한다. 우선 순위의 상기 설정 처리는 도 5의 UI를 이용하여 인스톨될 디바이스 드라이버를 결정하기 위한 설정 속성 정보로서 요약될 수 있다. 설정된 속성 정보에 기초하여, 디바이스 드라이버(프린터 순위)의 우선 순위가 설정되거나 산출된다. 프린터 순위는, 프린터의 속성 정보에 포함되는 항목들의 우선 순위들이 높아질수록 더 높아지게 된다. 프린터 순위는 "우선 순위"로서 명명될 수 있다. 프린터들이 일반 주변 기기들에 확장되는 경우, 주변 기기들의 순위는 디바이스 순위라고 명명된다.
본 실시예에서는 각 항목에 대한 옵션들이 준비되어 있는 일례를 나타내었지만, 유저가 상기 값들을 수동적으로 설정할 수 있는 경우라도 본 발명의 취지가 벗어나는 것은 아니다. 설정값들이 외부 파일 내에 유지되는 경우, 신규 프린터 기능 또는 스펙에 대응하는 순위가 설정될 수 있다.
<드라이버 인스톨 처리>
도 7 내지 도 12를 이용하여, 본 발명의 실시예의 흐름들을 설명한다. 이 흐름들은 도 19a 및 도 19b에 도시된 수순을 클라이언트의 처리 수순으로 나타낸 것이다.
도 7은 네트워크에 대해 프린터 탐색 요구(Probe 요구)을 행하는 경우의 흐름을 나타낸다. 클라이언트가 프린터 탐색 요구를 수행하는 타이밍은, 네트워크에 접속된 PC가 기동할 때, 또는 접속된 프린터들의 목록이 PnP 유틸리티상에서 갱신될 때 등이 될 수 있다. 도 7 내지 도 12의 흐름도들의 각 단계의 처리는, 클라이언트(1000)의 CPU(1)에 의해 실행된다.
우선, WSD 모듈(1003)은 클라이언트로부터 네트워크(402)로의 탐색(Probe 요구)을 행하기 위한 요구를 발행한다. 이에 응답하여, 네트워크에 접속되는 프린터들의 각각은 접속중인 것을 나타내는 응답(ProbeMatch)을 회신한다. 클라이언트는 탐색 요구에 응답한 모든 프린터들을 프린터 목록(403)으로서 RAM(12)에 저장한다. 여기서, 디바이스 정보(프린터명) 또는 구성 정보 등의 드라이버를 인스톨하기 위한 정보가 프린터 목록에는 필수적이다. 도 19a에 도시된 바와 같이, WSD 모듈(1003)은 디바이스 정보 요구 메시지(1903) 및 서비스 정보 요구 메시지(1905)를 응답이 행해진 디바이스들에 송신한다. 이렇게 하여, 클라이언트는 디바이스 정보 및 서비스 정보를 취득한다. 프린터 목록은 응답된 디바이스 정보 및 서비스 정보에 기초하여 작성된다.
도 18은 프린터 목록의 일례를 나타낸다. 프린터 목록(1801)은 디바이스 ID(1811), 프린터명(1812), 구성 정보(1813), 드라이버 상태(1814), 평가 포인트(1815), 및 상위 프린터 플래그(1816) 등의 필드들을 포함한다. 디바이스 ID(1811)는 네트워크 내의 디바이스에 고유한 식별자이다.
구성 정보(1813)는 기능 또는 드라이버가 필요한지 여부 등을 나타낸다. 구성 정보(1813)는, 도 5에서 우선 순위가 지정된 각 항목이 조건에 해당하는지 여부를 판정가능하게 하는 정보를 포함한다. 디바이스가 검출되는 최초의 일시는 디바이스로부터 취득될 수 없는 정보(예컨대, 인스톨 년월일)의 판정을 위해, 프린터 목록에 등록된다. 사용 빈도는 클라이언트들의 합산값인 것이 바람직하기 때문에, 프린터 드라이버에 통계 함수가 존재한다면, 통계 함수에 의해 합산된 사용 빈도가 프린터 목록에 등록된다. 드라이버 인스톨 시에 프린터들을 순위 매김을 행하기 위해, 드라이버가 인스톨되어 있는지 여부에 대한 항목도 선택될 수 있다. 이 항목은 프린터 디바이스를 관리할 수 없다. 본 실시예에서는, 드라이버 상태에 의해 드라이버가 인스톨되어 있는지의 여부가 나타난다.
드라이버 상태(1814)는 드라이버가 인스톨되어 있는지 여부를 나타낸다. 드라이버 상태는 드라이버가 인스톨되어 있는 경우 "인스톨됨(installed)"이며, 인스톨되어 있지 않는 경우 "발견됨(discovered)"이다. 따라서, 탐색 요구에 최초로 응답하고 드라이버가 인스톨되어 있지 않은 드라이버의 상태는 "발견됨"의 상태이다. 포인트는 단계 S503에서 평가된 값이다. 상위 프린터 플래그는, 드라이버에 대한 수량 제한이 설정되어 있는 경우, 드라이버가 인스톨될 프린터를 나타낸다.
클라이언트가, 도 4의 UI(100)에서 "자동 인스톨 실행(101)"이 지정되어 있는 것으로 판정하는 경우(404-예), 다음 단계로 진행한다. 상기와 같이 지정되지 않은 경우, 클라이언트는 필요에 따라 유저에게 통지를 행하고(407), 처리를 종료한다(408). 자동 인스톨의 지정은, 자동 인스톨 플래그(1712)가 판정될 때 참조된다. 자동 인스톨이 지정되어 있는 경우, 클라이언트는 도 5의 UI에서 수량 제한이 지정되어 있는지의 여부를 수량 제한 플래그(1711)를 참조하여 판정한다(405). 수량 제한이 지정되어 있는 경우, 클라이언트는 다음 단계로 진행한다. 클라이언트가 수량 제한이 지정되어 있지 않은 것으로 판정하는 경우, 발견된 프린터 목록(도 1 및 도 18의 프린터 목록(1801))의 각 프린터들에 대응하는 모든 드라이버들을 자동 인스톨한다(700). 발견된 프린터 목록은, 탐색 요구에 대한 응답 메시지가 회 신된 프린터들의 목록이다. 프린터 목록은, 예컨대 프린터의 명칭들, 어드레스들, 상태들을 포함한다. 모든 프린터들에 적용가능한 드라이버들을 인스톨하기 위한 수순은 도 10에 설명되어 있다.
한편, 수량 제한이 이미 지정되어 있는 경우, 클라이언트(1000)는 다음에, 유저에 의해 지정된 우선 순위의 순으로 프린터 목록상의 프린터들을 정렬한다(500). 정렬의 상세는 도 8에 기술되어 있다. 정렬이 종료되면, 클라이언트는 상위에서부터 프린터들의 수량 제한에 대응하는 드라이버들을 인스톨한다(600). 즉, 단계 600의 처리는, WSD의 인식 기능에 의해 인식되는 주변 기기에 대응하는 디바이스 드라이버가 인스톨되는 경우, RAM(2) 내에 유지되어 있는 제한 수량의 디바이스 드라이버들을 인스톨하는 처리에 대응한다. 제한 수량은 RAM(2)에 저장된다. 이 흐름은 도 9에 도시되어 있다. 클라이언트(1000)는, 프린터 목록의 상위에서부터 제한 수량의 프린터들에 대응하는 드라이버들이 인스톨된 후, 최후에 제한 수량을 초과하는 드라이버들을 삭제(언 인스톨)하는 설정인지의 여부를 체크한다. 이는, 도 4의 수량 제한을 초과하는 드라이버들을 삭제하기 위한 체크 박스(104)가 유저에 의해 체크되었는지 여부를 나타낸다. 만약 체크가 행해져 있는 경우, 클라이언트(1000)는 제한 수량을 초과하는 드라이버들을 삭제한다(800). 단계 406에서는, 드라이버 삭제 플래그(1713)가 테스트되는 경우에만 체크 박스(104)가 체크되었는지의 여부가 판정될 수 있다. 이에 대한 상세는 도 11에 기술되어 있다. 결국, 클라이언트(1000)는 탐색 요구에 응답하여 행해지는 동작을 기술하기 위한 유저 통지를 행하고(407), 종료된다(408). 통지는, 예컨대 표시에 의해 행해 진다. 표시된 내용들은 드라이버들이 신규로 인스톨된 디바이스들(또는 서비스들)와, 드라이버들이 언 인스톨된 목록 등을 포함한다.
도 7의 처리를 실행함으로써, 클라이언트(1000)는 유저에 의해 설정되는 우선 순위 및 설정 수량 제한에 기초하여, 프린터 목록의 상위에서부터 제한 수량의 프린터 드라이버들을 인스톨할 수 있다. 제한 수량에 속하지 않는 우선 순위가 지정된 디바이스에 대응하는 드라이버가 인스톨되는 경우, 드라이버는 언 인스톨된다. 이는, 불필요한 드라이버의 인스톨로 인해 메모리가 낭비되는 것을 방지할 수 있다.
<프린터 목록의 정렬>
도 8은, 도 7에서의 프린터 목록의 프린터들을 프린터 순위의 순서로 정렬하는 단계 500의 상세를 나타낸다. 우선, 클라이언트(1000)는, 유저에 의해 지정되는 우선 순위에 따른 포인트들을 추가하는 작업을 목록 내의 모든 프린터들에 대해 행한다(502-504). 포인트들은 전술한 수식 "
Figure 112006063426494-pat00002
, p=1...n"을 사용하여 산출된다. 물론, 우선도를 반영하는 포인트들이 산출될 수 있다면, 상기 수식에만 국한되는 것은 아니다. 디바이스 "i"에 대한 포인트 "Pi"가 수식에 의해 평가될 수 있기 때문에, 인식되는 주변 기기들은 소정의 속성 정보에 기초하여 순위매김될 수 있다. 본 도면에서, 단계 S502와 같은 6각 박스(개시 박스라고도 함)는 루프의 개시를 나타내며, 그 내용들은 편집 조건을 나타낸다. 단계 S504와 같은 6각 박스(종료 박스라고도 함)는 루프의 종료를 나타낸다. 개시 박스에 기술되는 종료 조건이 충족되면, 루프 처리는 종료되고, 처리는 종료 박스 바로 아래의 단계로 진행한다. 디바이스 목록에 포함되는 모든 디바이스들에 대해 포인트들이 평가된 경우, 디바이스 목록은 포인트들의 순으로 정렬된다(505).
도 8의 처리에 의해, 유저가 원하는 조건과 일치하는 디바이스에 높은 우선 순위가 설정되기 때문에, 인스톨될 드라이버들의 수는 제한될 수 있으며, 또한,유저의 의도를 반영하는 디바이스에 대응하는 드라이버가 인스톨될 수 있다.
도 18은 정렬된 프린터 목록의 일례를 나타낸다. 예를 들어, 디바이스 ID=xxxx인 프린터의 명칭은 "C사의 프린터(1050)"이며, 드라이버 상태는 "인스톨되었음"이다. 즉, 드라이버는 이미 인스톨되어 있다. 디바이스 ID=xxxx의 프린터가 9개의 항목의 조건들을 충족하는 경우, 프린터에는 전체 포인트, 즉 511 포인트가 부여된다. 이 포인트는 도 16의 표(1601)에 도시된 구성 정보에 기초하여 평가된다. 드라이버 상태는 프린터 목록(1801) 내에 포함되지 않을 수도 있다. 예를 들어, 드라이버의 인스톨 상태가 참조될 때마다, 오퍼레이팅 시스템에 의해 관리되는 레지스트리 내에 등록되는, 인스톨된 프린터 드라이버들의 목록이 OS에 요구될 수 있다.
도 16a 및 도 16b는 각종 기능들 및 각종 성능을 갖는 10개의 프린터들이 단일 네트워크에 접속될 때 정렬되는 경우를 나타낸다. 도 16a는 정렬 전의 경우를, 도 16b는 정렬 후의 경우를 나타낸다. 네트워크 환경은 도 3에 도시되어 있다. 도 16a 및 도 16b에 대해서는, 자동 인스톨 설정으로서 도 5에 도시된 우선 순위가 유저에 의해 지정되는 것을 상정한다. 정렬(1601) 전의 목록에서는, 탐색되는 순서로 프린터들이 배열된다. 정렬(1603) 후의 목록에서는, 유저가 요구하는 우선 도가 높은 조건에 일치하는 프린터일수록, 목록상에는 상위의 프린터가 표시된다. 목록(1603)은, 도 18의 프린터 목록(1801)을, 디바이스들의 평가 포인트들 대신에, 각 디바이스에 대한 구성 정보와 연관시켜 나타낸 것이다. 도 16a 및 도 16b에서, "○"는 조건이 충족된 것을 나타낸다. 좌측으로부터 우측으로는, 항목들의 우선도 "p"가 낮아진다. 따라서, 목록이 평가 포인트드에 의해 정렬되는 경우, 도 16b와 동일한 순위로 정렬된다. 예를 들어, 드라이버 상태가 가장 우선 순위가 높다. 도 16a에서는 구성 조건들의 항목들은 9개이기 때문에, 드라이버 상태의 우선도는 9이다. 따라서, 사용 빈도, 삽입 일시 및 년도,..., 및 제조자의 순서로, 우선 순위는 8, 7, ..., 1과 같이 낮아진다. 이를 이용하여, 전술한 수식들에 의해 프린터 순위 "Pi"가 취득되고, 내림순으로 정렬되어, 도 16b와 같이 배열된다.
<지정된 수의 프린터들에 대한 드라이버 인스톨>
도 9는, 도 7에서 상위에서부터 제한 수량 만큼의 드라이버들을 인스톨하는 단계 600의 상세를 나타낸다. 우선, 클라이언트(1000)는, 상위 프린터 플래그를 일단 0으로 리셋한다. 클라이언트(1000)는, 프린터 목록(1801)의 상위에 있는 프린터로부터 순서대로 대상화(focus)하고, 대상 프린터의 프린터 드라이버가 인스톨되었는지의 여부를 판정한다(603). 클라이언트(1000)는, 단계 603에서의 처리에 의해 대상 프린터에 대한 프린터 드라이버가 아직 인스톨되지 않은 것으로 판정되는 경우(603-아니오), 대상 프린터에 대한 프린터 드라이버를 인스톨한다(604). 인스톨될 드라이버는, 예컨대 프린터의 명칭에 기초하여 식별될 수 있다. 프린터의 명칭은, 프린터의 드라이버를 고유하게 식별하도록 부여되어 있는 것으로 가정 한다. 만약, 프린터의 명칭으로부터 드라이버가 고유하게 식별될 수 없는 경우, 디바이스 정보 및 서비스 정보는 저장되고, 드라이버는 디바이스 정보 및 서비스 정보에 기초하여 결정된다. 클라이언트(1000)는, 그 처리를 인스톨 대상의 프린터에 대해 반복한다. 반복 횟수는, 발견된 프린터의 수가 제한 수량을 초과하면 제한 수량 만큼이며; 발견된 프린터의 수가 제한 수량보다 적으면 발견된 모든 프린터 개수만큼이다(602). 드라이버가 인스톨되어 있는지의 여부는, 드라이버 상태(또는 레지스트리)를 참조하면 판정가능하다.
도 9의 처리는, 설정된 순위가 제한 수량 이하의 주변 기기들에 대응하는 디바이스 드라이버들 중에서, 인스톨되어 있지 않은 디바이스 드라이버를 인스톨하기 위한 것이다. 이 구성에 의해, RAM(2)에 유지된 제항 수량을 인스톨가능한 디바이스 드라이버의 수로 하는 동시에, 취득된 주변 기기에 관한 정보에 기초하여, 인스톨해야 할 디바이스 드라이버들의 후보들이 결정된다. 다음, 디바이스 드라이버들에 대해 결정된 후보들 중에서, 인스톨되어 있지 않은 디바이스 드라이버들이 인스톨될 수 있다. 따라서, 이미 인스톨되어 있는 드라이버에 대해, 재차 인스톨을 실행하는 처리를 없앨 수 있다.
이 때, 프린터 목록의 상위 제한 수량 내에 존재하는 것을 나타내는 상위 프린터 플래그는, 프린터 드라이버가 인스톨되거나, 또는 이미 인스톨되어 있는 각 프린터에 설정된다(605). 예를 들어, 수량 제한의 상한 수가 5인 것으로 상정하자. 도 18의 예에서는, 상위 4개의 프린터에 대응하는 드라이버들은 이미 인스톨되어 있다. 따라서, 이들 4개의 프린터에 대응하는 드라이버들은 인스톨될 필요가 없고, 상위 프린터 플래그들만이 설정된다. 프린터 목록 내의 5번째에 있는 B사의 8040 프린터의 드라이버는 신규로 인스톨되고, 그 프린터의 상위 프린터 플래그가 설정된다. 드라이버 상태도 동시에 갱신된다. 이와 같이, 설정된 제한 수량을 인스톨된 디바이스 드라이버들의 상한 수로 하는 동시에, 인식된 주변 기기들에 대응하는 디바이스 드라이버들 중에서 인스톨되어 있지 않은 디바이스 드라이버들을 인스톨하는 것이 가능해진다.
도 11은, 도 7에서의 제한 수량 이상의 드라이버들을 삭제하는 단계 800의 상세를 나타낸다. 여기서, 이미 인스톨되어 있는 각 프린터에 대해, 클라이언트(1000)는, 드라이버 인스톨 시에 상위 프린터 플래그를 설정할지 여부를 체크한다. 즉, 프린터 목록(1801) 내의 상위 프린터로부터 순서대로 상위 프린터 플래그 및 드라이버 상태를 참조한다. 클라이언트(1000)는, 상위 프린터 플래그가 설정되지 않고 드라이버 상태가 "인스톨되었음"인지의 여부를 판정한다(803, 804). 즉, 이 처리는, 설정된 우선 순위가 제한 수량에 포함되지 않은 주변 기기에 대응하는 디바이스 드라이버가 인스톨되어 있는지 여부를 판정하는 처리이다. 예컨대, 제한 수량이 3개일 경우, 4위 이하의 우선 순위가 설정된 주변 기기가, 설정된 프린터 순위가 제한 수량에 포함되어 있지 않은 주변 기기에 해당한다. 클라이언트는, 단계 803 및 804의 판정 처리에 기초하여, 우선 순위가 제한 수량에 포함되어 있지 않은 프린터에 대한 프린터 드라이버를 삭제한다(805). 이 처리에 의해, 제한 수량에 포함되지 않은 프린터 순위를 갖는 설정된 주변 기기에 대응하는 디바이스 드라이버가 인스톨되어 있는 경우, 해당 디바이스 드라이버는 삭제(언 인스톨)된다. 또한, 인스톨되어 있지 않은 드라이버는 삭제되지 않기 때문에, 단계 804에서의 판정은 불필요하다. 이 작업을 행한 후에는, 유저가 도 4의 UI(102)에서 지정한 상위 제한 수량의 드라이버들이 인스톨된다.
이와 같이, 도 11의 처리에 의해, 설정된 상한 수에 포함되지 않는 프린터 순위가 설정된 디바이스에 대응하는 드라이버가 자동적으로 언 인스톨(삭제)되기 때문에, 유저에 의해 불필요한 드라이버가 소비되는 메모리량을 절약할 수 있다.
<전체 프린터들에 대한 드라이버 인스톨>
도 10은, 도 7의 프린터 목록 내의 모든 프린터들에 대한 드라이버들을 인스톨하는 단계 700의 상세를 나타낸다. 클라이언트(1000)는, 프린터 목록 내의 프린터들을 순서대로 대상화하고, 대상 프린터에 대한 프린터 드라이버가 인스톨되었는지의 여부를 판정한다(703). 단계 703에서의 판정 처리에 의해, 인스톨되어 있지 않은 것으로 판정된 경우, 클라이언트(1000)는, 대상 프린터의 프린터 드라이버를 인스톨한다(704). 이 작업들은 프린터 목록상의 모든 프린터들에 대해 반복된다(702).
<디바이스로부터의 접속 통지에 의해 트리거되는 드라이버 인스톨>
도 7 내지 도 11에서는, 클라이언트(1000)로부터의 탐색 요구(Probe 요구)의 흐름을 설명했다. 반면, 도 12에 나타낸 흐름은, 네트워크(31)로의 접속에 대한 접속 통지(Hello)가 네트워크 프린터(3000)로부터 도달한 때의 클라이언트(1000)의 동작을 나타내고 있다. Hello 통지는, 네트워크에 접속된 디바이스의 전원 투입 시나, 신규의 디바이스가 네트워크에 새로이 접속되는 경우에 행해진다.
클라이언트(1000)가 주변 기기로부터 소정의 신호들인 접속 통지를 수취하면(902), 접속 통지시에도 해당하는 프린터에 대한 드라이버를 인스톨하기 위한 설정인지의 여부를 판정한다(903). 단계 903에서의 판정 처리는, 도 4의 UI(100)에서 "프린터 접속 통지 시에도 인스톨(언 인스톨)을 행한다"(105)가 체크되고 있는지 여부를 나타내는 프린터 주도 플래그(1714)를 참조하여 행해진다. 접속 통지는, 클라이언트(1000)와 통신 가능하게 되는 주변 기기로부터의 접속 개시 신호를 나타낸다.
네트워크 프린터의 접속 통지 시에 인스톨하도록 설정되면, 접속 통지를 발행한 프린터는 프린터 목록에 추가된다. 도 5의 UI에 의해 설정된 조건 정보(1006a)와 일치되는 경우, 추가된 프린터에 대응하는 드라이버가 인스톨된다. 따라서 단계 904에서,클라이언트(1000)는, 도 19b와 같이 디바이스 정보 요구 메시지(1912) 및 서비스 정보 요구 메시지(1914)를, 접속 통지의 송신원인 프린터에 송신한다. 다음, 클라이언트(1000)는, 접속 통지를 송신한 주변 기기에 관한 정보, 예컨대 프린터명 및 구성 정보 등의 속성들을 수신하고, 이들을 프린터 목록에 추가한다(904).
다음, 마지막으로 작성된 프린터 목록에 기초하여 드라이버를 인스톨하기 위해, 처리는 도 7의 단계 404로 분기된다. 이후, 클라이언트(1000)는, 접속 통지를 송신한 주변 기기에 관한 정보와, 도 5의 우선 순위를 결정하기 위한 속성 정보로부터 해당 주변 기기의 디바이스 순위를 결정하고, 결정된 디바이스 순위가 제한 수량 내에 존재하는지의 여부를 판정한다. 다음, 판정의 결과, 접속 통지의 송신 원인 주변 기기의 디바이스 순위가 상기 제한 수량을 충족하는 것으로 판정되는 경우, 상기 주변 기기에 대응하는 디바이스 드라이버가 인스톨된다. 또한,디바이스 순위가 제한 수량를 충족한다라는 것은, 제한 수량이 3개일 경우, 3위 이내의 디바이스 순위가 설정되는 주변 기기라는 것을 의미한다.
접속 통지를 수신하는 경우, 전체 프린터 목록을 다시 작성할 수 있다. 이 경우, 단계 904 대신에 도 7의 프린터 탐색 요구의 전체를 호출한다. 물론, 단계 404로 분기되지 않고 프린터 탐색 요구 처리가 종료한 경우에는, 도 12의 처리도 종료된다.
도 12의 처리에 의해, 제한 수량 만큼의 디바이스 드라이버가 소정의 조건에 기초하여, 설정된 디바이스 순으로 기억되어 있는 네트워크에, 새로운 디바이스가 접속되는 경우를 상정한다. 이 경우, 접속된 디바이스들에 대한 정보가 캡처되고, 설정된 제한 수량 내의 디바이스 순위가 제공됨으로써, 해당 디바이스에 대응하는 드라이버를 인스톨하는 것이 가능하게 된다. 접속 통지가 발행된 디바이스가 제한 수량 내의 디바이스 순위에 의해 배열되는 경우, 접속 통지가 발행될 때까지 제한 수량 내에 있던 디바이스의 순위가 제한 수량으로부터 배제된다. 이 경우, 이미 인스톨된 디바이스 드라이버로부터 적어도 하나의 디바이스 드라이버가 언 인스톨(삭제)될 수 있다.
상기 동작에 의해, 유저가 제한 수량의 드라이버를 지정하는 경우에는, 유저에 의해 요구되는 상위의 프린터에 대한 드라이버가 클라이언트(1000)상에 인스톨되어 있는 상태를 항상 유지하게 된다.
<유저에의 메시지>
도 13 및 도 14는, 클라이언트의 CRT(10) 상의 UI에 의해 표시된 도 7의 유저 통지(단계 407)의 예들를 나타낸다. 도 13의 UI(410)는, 수량 제한을 초과하는 프린터들이 발견되는 경우에 리스팅될 것인지의 여부를 유저에 질의하기 위한 UI이다. 도 14의 UI(420)는, 수량 제한을 초과하는 프린터들이 발견되는 경우에, 몇 몇 프린터 드라이버들이 자동으로 언 인스톨된 후에 표시되는 UI이다. 리스팅된 경우의 UI는 도 15에 상술되어 있다. 자동 언 인스톨을 원하지 않는 유저를 고려하여, 한번의 클릭에 의해 설정 화면(도 4)까지 유저를 유도하는 구성을 갖는다.
도 15는, 도 13에서 네트워크에 접속된 프린터들의 목록을 표시하도록 유저가 지정하는 경우에 표시되는 UI를 나타내고 있다. 본 화면은 PnP 유틸리티(1002)의 UI 화면과 동일하다. 이 화면은, UI에 대한 조작에 의해, 네트워크상의 프린터에 대응하는 드라이버를 인스톨 또는 언 인스톨할 것인지의 여부를 지정하기 위해 준비된다.
네트워크 프린터의 상부의 목록부(5100)에는, 도 8의 흐름의 결과로서, 유저가 지정한 디바이스 순위들의 순으로 정렬된 프린터 목록(1501)이 표시되어 있다. 아직 인스톨되지 않은 프린터 드라이버에 대하여 인스톨을 지시하기 위한 추가 버튼(5300), 또는 인스톨되어 있는 프린터 드라이버를 언 인스톨하기 위한 삭제 버튼(5400)을 갖는다. 목록을 갱신하기 위한 버튼(5200)은 도 7의 흐름을 따라 네트워크에 접속된 프린터를 재탐색하기 위해 준비된다.
한편,하부(5500)에는, 프린터 목록(1501)에 선택되어 있는 프린터의 속성이 표시된다. 이 속성은, 유저가 현재 네트워크에 접속된 프린터들을 인식할 수 있도록 유저에게 제공된다.
전술한 바와 같이, 본 실시예에 따르면, 복수의 네트워크 프린터가 존재하는 경우, 그 네트워크에 접속된 클라이언트는, 지정된 조건들과 일치하는 지정된 수의 네트워크 프린터들에 한해서 프린터 드라이버들을 인스톨할 수 있다. 이는, 클라이언트 컴퓨터 자원(resource)들의 소비를 줄일 수 있다. 또한, 유저에 의해 사용되는 프린터의 선택의 범위를 좁혀, 조작성을 향상시킬 수 있다.
상기 조건들은 프린터의 기능들, 사용 빈도, 인스톨 경과 기간 등의 구성 정보의 각 항목에 우선 순위를 붙여 지정될 수 있다. 예를 들면, 사용 빈도를 이용하여 디바이스 순위가 설정되는 경우, 유저에 의해 설정된 소정의 값 이상의 빈도로 사용된 프린터에, 소정의 값 이하의 빈도로 사용되어 있는 프린터보다 높은 디바이스 순위가 설정된다. 또는, 사용 빈도에 기초하여(예컨대, 사용 빈도가 높은 순으로), 디바이스에 순위를 매겨도 좋다. 따라서, 유저는 자신이 가장 중요하게 고려하는 항목에 가장 높은 우선 순위를 부여함으로써, 원하는 프린터를 우선하여 드라이버를 인스톨할 수 있다.
유저에 의해 지정된 조건에 적합한 프린터가 새롭게 추가되는 경우, 그 프린터가 클라이언트로부터 조속히 사용될 수 있도록, 프린터 드라이버가 인스톨되는 프린터가 동적으로 선택된다.
또한, 네트워크 플러그 앤 플레이는, 유저가 드라이버 인스톨 등의 작업을 행하지 않고 프린터를 이용할 수 있도록 하여, 조작성 및 생산성을 향상시킨다.
[제2 실시예]
제1 실시예에서, 지정된 상한(upper limit)은 이미 인스톨된 프린터 드라이버들의 상한으로 간주된다. 프린터 드라이버의 인스톨은 그 지정된 상한을 이용하여 행해진다. 예를 들면, 지정된 상한이 5개이고 3개의 프린터 드라이버가 인스톨된 경우, 인스톨 가능한 프린터 드라이버 수는 2개이다.
한편, 제2 실시예에서는, 설정된 제한 수량 만큼의 프린터 드라이버들을 인스톨하는 처리에 관하여 설명한다. 예를 들면, 도 20을 참조하여, 제한 수량이 5개로 지정되어 있고 3개의 프린터 드라이버가 인스톨된 경우에도, 5개의 프린터 드라이버를 인스톨하는 처리를 설명한다.
클라이언트(1000)는 설정된 제한 수량 "m"을 판독한다(2001). 다음, 클라이언트(1000)는, 전술한 도 18의 프린터 목록을 참조하고, 리스팅되어 있는 디바이스들의 수 "d"를 판독한다(2002). 구체적으로는,프린터 목록에 등록된 프린터의 수를 카운팅한다. 도 18의 예에서는, d=10이다.
클라이언트(1000)는, 목록상의 첫번째 장치로부터 판정 처리를 진행시키기 위해, 판정 처리가 행해지는 목록 번호 "n"을 1로 초기화한다. 클라이언트(1OOO)는 인스톨 대상의 디바이스 드라이버들의 수를 카운팅하는 경우, 인스톨된 디바이스 드라이버들의 수 "i"를 0으로 초기화한다(2003).
클라이언트는 프린터 목록상의 n번째의 프린터에 대응하는 드라이버가 인스톨되었는지의 여부를 판정한다(2004). 드라이버가 인스톨되어 있는지의 여부에 대한 판정 처리는 전술한 바와 같다.
단계 2004에서의 처리가, n번째 프린터에 대응하는 드라이버가 인스톨된 것으로 판정되는 경우, 클라이언트는 2007의 처리로 진행한다.
단계 2004에서의 처리가, n번째의 프린터에 대응하는 드라이버가 인스톨되지 않은 것으로 판정되는 경우(2004-아니오), 클라이언트(1000)는 n번째의 프린터에 대응하는 드라이버를 인스톨한다(2005). 클라이언트(1000)는 인스톨된 프린터 드라이버들의 수를 카운팅하기 위해, 인스톨된 드라이버들의 수를 나타내는 값 "i"를 1씩 증가시킨다(2006).
클라이언트는, 인스톨된 프린터 드라이버들의 수 "i"와 단계 2001에서의 처리에 의해 판독된 제한 수량 "m"을 비교한다. 인스톨된 프린터 드라이버들의 수 "i"가, 제한 수량 "m"보다 큰 것으로 판정되는 경우(2007-예), 클라이언트(1OOO)는 도 20에 기술된 처리를 종료한다.
단계 2007의 처리 결과가 아니오로 판정되는 경우, 클라이언트(1000)는 대상 프린터를 다음 프린터로 진행시키기 위해 인크리먼트(increment) 처리를 행한다 (2008). 클라이언트(1000)는, 처리될 n번째의 프린터가 프린터 목록에 존재하는지의 여부를 판정하고(2009), 존재하는 것으로 판정되는 경우, 다시 단계 2004의 처리가 실행된다.
전술한 처리에 의해, 인스톨된 프린터 드라이버들을 고려하면서, 유저에 의한 제한 수량의 프린터 드라이버들이 인스톨될 수 있다. 따라서, 인스톨될 프린터 드라이버들의 수를 제한하면서, 많은 종류의 프린터 드라이버들이 인스톨될 수 있다.
[변형예]
이상 프린터 드라이버들에 관하여 설명했지만, 본 발명은 프린터 이외의 디바이스에 적용될 수도 있다. 또한, 본 발명은 복수 종류의 디바이스들 각각에 대해 적용될 수도 있다. 이 경우, 인스톨되는 상한, 디바이스 순위의 키가 될 속성 정보 및 그 설정값, 드라이버의 언 인스톨 옵션 등이 각 디바이스에 대해 설정된다. 즉, 도 17에 나타낸 인스톨 조건 정보(1006a)는 각 디바이스에 대해 준비된다. 제한 수량에 관하여, 주변 기기들의 각 종류에 대해 인스톨될 디바이스 드라이버의 제한 수량이 기억된다. 전술한 바와 같이, 주변 기기에는 프린터가 포함된다.
본 실시예에서는, 디바이스가 구성 정보 데이터베이스를 유지하고, 클라이언트는 구성 정보를 디바이스로부터 취득하는 것으로 상정하였다. 반면, 디바이스는, 구성 정보 데이터베이스를 유지하기 위한 기억 용량을 절약하고 관리의 일원화를 도모하기 위해, 구성 정보 데이터베이스의 위치 어드레스를 유지하도록 채용될 수 있다. 이 경우, 디바이스는 디바이스 정보에 대한 요구에 응답하여, 구성 정보 데이터베이스의 어드레스(예컨대, URI)를 응답으로서 클라이언트에 송신한다. 이를 수신한 클라이언트는, 응답 메시지에 포함되는 어드레스에 대하여 구성 정보의 요구를 행한다. 구성 정보 취득의 수순은, 디바이스 정보 요구에 대한 응답이 수신된 후에는, 통신의 반대측이 구성 정보 데이터베이스를 유지하기 위한 서버로 변하는 점을 제외하면, 도 19와 동일하다.
또한, 본 실시예에서, 클라이언트는, 디바이스의 구성 정보를, WS-Discovery 의 수순 내의 디바이스 정보로서 해당 디바이스로부터 얻고 있다. 반면, 클라이언트는 SNMP, 액티브 디렉토리 등을 이용하여, 디바이스의 구성 정보를 얻을 수도 있다. SNMP가 이용되는 경우, 디바이스의 하드 디스크(29)는 SNMP(single network management protocol) 에이전트 및 MIB(management information protocol)를 저장한다. SNMP 에이전트는 RAM(22)에 로딩되어 CPU(21)에 의해 실행된다. MIB는 디바이스(본 경우, 프린터)의 통계 정보나 기능 정보를 저장하는 데이터베이스이다. SNMP 에이전트는, 호스트 컴퓨터에 인스톨된 SNMP 관리자으로부터의 요구에 응답하여, MIB를 갱신하거나 또는 MIB에 대한 정보를 판독하여 이를 SNMP 관리자에게 송신한다. MIB에는, 예컨대 해당 디바이스의 사용 빈도, 인쇄 속도, 컬러 인쇄 기능의 유무, 최고 해상도, 양면 인쇄 기능의 유무, 제조자 등이 등록되어 있다. 상기 항목들 중,사용 빈도는 프린터가 사용될 때마다 갱신된다. 그 외의 항목들에 대해서는, 프린터의 모델에 따른 값들이 제조시에 등록되어 있다.
이러한 방식으로, 클라이언트는 SNMP 관리자에 의해 디바이스로부터 직접 디바이스 정보를 취득한다. 또는, SNMP 관리자로서 기능하는 서버가 디바이스 정보를 일괄적으로 취득하고, 클라이언트는 그 서버로부터 디바이스 정보를 취득하도록 구성될 수 있다.
이상, 도면들을 참조하여 본 발명의 실시예에 대해 상술하였지만, 본 발명의 구체적인 구성은 이들 실시예들에 한정되는 것은 아니다.
본 발명에서는, 설정된 제한 수량을 상한값으로서, 인스톨될 디바이스 드라이버가 결정된다. 예를 들면, 도 18에 있어서 상위 4개의 드라이버들이 인스톨되 어 있기 때문에, 나머지 인스톨가능한 디바이스 드라이버는 1개이다. 그러나,본 발명은 이에 한정되지 않고, 단순히 설정된 제한 수량의 디바이스 드라이버들이 인스톨될 수도 있다.
실시예들의 기재와 특허청구범위의 기재는 아래와 같이 연관지어진다.
도 7의 단계 402를 실행하는 WSD 모듈이 주변 기기의 인식 기능을 갖는다. 도 7의 단계 600, 700은 디바이스 드라이버들을 인스톨하는 인스톨 제어 단계에 대응한다. 이를 실행하는 클라이언트(1000), 특히 PnP 콘트롤러(1006)는 인스톨 제어 수단에 대응한다.
도 7의 단계 402, 403은, 접속된 주변 기기를 인식하는 인식 기능을 제공하는 주변 기기 인식 단계에 대응한다. WSD 모듈(1003)은 주변 기기 인식 수단에 대응한다.
도 7의 단계 500은, 소정의 속성 정보에 기초하여 인식된 주변 기기들에 우선 순위를 부여하는 순위 부여 단계에 대응한다. 이를 실행하는 PnP 콘트롤러는 순위 부여 수단에 대응한다.
도 4 및 도 5의 유저 인터페이스는, 속성 정보를 이용자가 지정하기 위한 지정 수단에 대응한다.
도 11의 단계 803 및 804는, 순위 부여 수단에 의해 설정된 순위에 기초하여, 제한 수량에 포함되지 않은 순위의 주변 기기에 대응하는 디바이스 드라이버가 인스톨되어 있는지의 여부를 판정하는 판정 수단/단계에 대응한다.
도 11의 단계 805는, 판정 수단에 의해 제한 수량에 미치지 않는 순위의 주 변 기기에 대응하는 디바이스 드라이버가 인스톨되어 있는 것으로 판정되는 경우, 판정된 디바이스 드라이버를 언 인스톨하는 언 인스톨 제어 수단/단계에 대응한다.
도 12의 단계 902 및 도 19b의 접속 통지(1911)의 수신은, 주변 기기에 의해 발행되는 제1의 신호를 수신하는 제1 수신 수단/단계에 대응한다.
도 12의 단계 403 및 도 19b 디바이스 정보(1904)의 수신은, 제1의 신호의 발행자인 주변 기기에 관한 정보를 수신하는 제2수신 수단/단계에 대응한다.
도 7의 단계 405 및 도 9의 단계 602, 606은, 제2 수신 수단에 의해 수신된 주변 기기에 관한 정보 및 소정의 조건에 기초하여 설정된 주변 기기의 우선 순위가 상기 제한 수량을 충족하는지의 여부를 판정하는 판정 수단/단계에 대응한다.
도 7의 단계 700 및 도 9의 단계 604는, 판정 수단에 의해 주변 기기의 우선 순위가 제한 수량을 충족하는 것으로 판정되는 경우, 주변 기기에 대응하는 디바이스 드라이버를 인스톨하는 인스톨 제어 수단/단계에 대응한다.
도 4의 유저 인터페이스(100) 및 도 5의 유저 인터페이스(200)는, 인스톨될 디바이스 드라이버를 결정하기 위한 속성 정보를 설정하는 설정 수단에 대응한다.
도 7의 단계 500은, 설정 수단에 의해 설정된 속성 정보에 기초하여 디바이스 드라이버의 우선 순위를 설정하는 우선 순위 부여 수단/단계에 대응한다.
[다른 실시예들]
본 발명은 단일 디바이스를 포함하는 장치 또는 복수의 디바이스들로 구성되는 시스템에 적용될 수 있다.
또한, 본 발명은, 공급되는 프로그램 코드를 상기 시스템 또는 장치의 컴퓨 터로 판독한 후, 그 프로그램 코드를 실행시키는, 시스템 또는 장치에 직/간접적으로 전술한 실시예들의 기능들을 실현하는 소프트웨어 프로그램을 공급함으로써 구현될 수 있다. 이 경우, 시스템 또는 장치가 상기 프로그램의 기능들을 갖는 한, 구현 모드는 프로그램에 의존할 필요는 없다.
따라서, 본 발명의 기능들이 컴퓨터에 의해 구현되기 때문에, 컴퓨터에 인스톨되는 프로그램 코드 자체도 본 발명을 구현한다. 즉, 본 발명의 클레임들은 본 발명의 기능들을 구현하기 위한 목적의 컴퓨터 프로그램도 포함한다.
이 경우, 시스템 또는 장치가 상기 프로그램의 기능들을 갖는 한, 프로그램은, 예컨대 해석기에 의해 실행되는 프로그램, 오브젝트 코드, 또는 오퍼레이팅 시스템에 공급되는 스크립 데이터 등 임의의 형태로 실행될 수 있다.
프로그램을 공급하는 데 사용될 수 있는 기억 매체의 예에는 플로피 디스크, 하드 디스크, 광 디스크, 광-자기 디스크, CD-ROM, CD-R, CD-RW, 자기 테이프, 비휘발성 메모리 카드, ROM, 및 DVD(DVD-ROM 및 DVD-R)이 있다.
프로그램을 공급하는 방법에 있어서, 클라이언트 컴퓨터는 자신의 브라우저를 이용하여 인터넷상의 웹사이트에 접속될 수 있으며, 본 발명의 컴퓨터 프로그램 또는 프로그램의 자동 인스톨 가능한 압축 파일은 하드 디스크 등의 기록 매체에 다운로드될 수 있다. 또한, 본 발명의 프로그램은, 그 프로그램을 구성하는 프로그램 코드를 복수의 파일들로 분할하고 서로 다른 웹 사이트에서 그 파일들을 다운로드함으로써 공급될 수 있다. 즉, 본 발명의 기능들을 구현하는 프로그램 파일들을 컴퓨터로 다수의 유저들에게 다운로드하는 WWW(World Wide Web) 서버도, 본 발 명의 클레임들에 의해 포함된다.
또한, CD-ROM 등의 기억 매체 상에 본 발명의 프로그램을 암호화하여 저장하고, 그 기억 매체를 유저들에게 배포하고, 특정 요구들을 만족하는 유저들에게 인터넷을 통해 웹 사이트로부터 암호 키 정보를 다운로드하도록 허용하고, 이들 유저들에게 키 정보를 이용하여 암호화된 프로그램을 복호화하도록 허용할 수 있으며, 이에 의해 프로그램은 유저 컴퓨터에 인스톨된다.
또한, 본 실시예들에 따른 전술한 기능들이 컴퓨터에 의해 판독 프로그램을 실행시킴으로써 구현되는 경우 외에, 전술한 실시예들의 기능들이 이 처리에 의해 구현될 수 있도록 실제 처리의 전부 또는 일부를 실행할 수도 있다.
또한, 기억 매체로부터 판독된 프로그램이, 컴퓨터로 삽입된 기능 확장 보드 또는 컴퓨터에 접속된 기능 확장부에 제공되는 메모리에 기입된 후, 기능 확장 보드 또는 기능 확장부에 탑재되는 CPU 등이, 전술한 실시예들의 기능들이 이 처리에 의해 구현될 수 있도록 실제 처리의 전부 또는 일부를 행한다.
본 발명은 예시적 실시예들을 참조하여 기술되었지만, 본 발명은 개시된 예시적 실시예들에 한정되는 것은 아니라는 것을 이해해야 한다. 이하 클레임들의 범위는 그러한 변경들과, 균등 구조들 및 기능들이 모두 포함되도록 넓게 해석되어야 한다.
본 발명에 따르면, 클라이언트 측의 간단한 구성 변경으로 인해 인스톨되는 디바이스 드라이버의 수를 제한함으로써 유저의 편의를 향상시킬 수 있으며,디바 이스 드라이버의 수의 제한을, 유저가 지정한 우선 순위에 따라 행함으로써, 유저의 편의를 더욱 향상시킬 수 있다.

Claims (36)

  1. 접속된 주변 기기들을 인식하는 인식 기능을 가지며, 상기 접속된 주변 기기들을 이용가능하게 할 수 있는 정보 처리 장치로서,
    인스톨되는 디바이스 드라이버들의 상한 수(upper limit)를 유지하는 유지 수단; 및
    상기 인식 기능에 의해 인식된 주변 기기들에 대응하는 디바이스 드라이버들을 인스톨하는 경우, 상기 유지 수단에 의해 유지되는 상한 수 만큼의 디바이스 드라이버들을 인스톨하는 인스톨 제어 수단
    을 포함하는 정보 처리 장치.
  2. 제1항에 있어서,
    상기 인스톨 제어 수단은, 상기 인식 기능에 의해 인식된 주변 기기들에 대응하는 디바이스 드라이버들 중에서, 인스톨되어 있지 않은 디바이스 드라이버를 인스톨하는 정보 처리 장치.
  3. 제1항 또는 제2항에 있어서,
    상기 상한 수는, 인스톨 가능한 디바이스 드라이버들의 수를 나타내는 상한수이며,
    상기 인스톨 제어 수단은, 상기 상한 수를 인스톨된 디바이스 드라이버들의 상한으로 하고, 상기 인식 기능에 의해 인식된 주변 기기들에 대응하는 디바이스 드라이버들 중에서 인스톨되어 있지 않은 디바이스 드라이버를 인스톨하는 정보 처리 장치.
  4. 제1항 또는 제2항에 있어서,
    접속된 주변 기기들을 인식하는 인식 기능을 제공하기 위한 인식 수단을 더 포함하는 정보 처리 장치.
  5. 제1항 또는 제2항에 있어서,
    상기 인식 기능은 상기 접속된 주변 기기들에 대한 정보를 취득하며,
    상기 인스톨 제어 수단은, 상기 유지 수단에 의해 유지된 상한 수를 인스톨 가능한 디바이스 드라이버들의 수로 하고, 상기 인식 기능에 의해 취득된 주변 기기들에 대한 정보에 기초하여, 인스톨될 디바이스 드라이버들에 대한 후보들을 결정하고, 상기 결정된 디바이스 드라이버의 후보들 중 인스톨되어 있지 않은 디바이스 드라이버를 인스톨하는 정보 처리 장치.
  6. 제1항 또는 제2항에 있어서,
    상기 인식 기능에 의해 인식되는 주변 기기들에, 속성 정보에 기초하여 우선순위를 부여하는 순위 부여 수단을 더 포함하며,
    상기 인스톨 제어 수단은, 상기 순위 부여 수단에 의해 부여된 순위들이 상 기 상한 수 이내의 주변 기기들에 대응하는 디바이스 드라이버들 중에서, 인스톨되어 있지 않은 디바이스 드라이버를 인스톨하는 정보 처리 장치.
  7. 제6항에 있어서,
    상기 속성 정보를 유저가 지정하게 하는 지정 수단을 더 포함하는 정보 처리 장치.
  8. 제1항 또는 제2항에 있어서,
    상기 유지 수단은, 주변 기기의 각 종류에 대해 인스톨되는 디바이스 드라이버들의 상한 수를 유지하는 정보 처리 장치.
  9. 제1항 또는 제2항에 있어서,
    상기 주변 기기들은 프린터를 포함하는 정보 처리 장치.
  10. 제6항에 있어서,
    상기 순위 부여 수단은, 인스톨된 속성을 상기 속성 정보로 하여, 인스톨된 디바이스 드라이버에 대응하는 주변 기기에 대해, 인스톨되지 않은 디바이스 드라이버에 대응하는 주변 기기보다 높은 우선 순위를 부여하는 정보 처리 장치.
  11. 제6항에 있어서,
    상기 순위 부여 수단은, 사용 속성의 빈도를 속성 정보로 하여, 사용 빈도에 기초하여 우선 순위를 부여하는 정보 처리 장치.
  12. 제6항에 있어서,
    상기 순위 부여 수단은, 기능 속성을 속성 정보로 하여, 지정된 기능을 갖는 주변 기기에 대해, 지정된 기능을 갖지 않는 주변 기기들보다 높은 우선 순위를 부여하는 정보 처리 장치.
  13. 제6항에 있어서,
    상기 순위 부여 수단에 의해 설정되는 순위에 기초하여, 상기 상한 수에 포함되지 않는 순위의 주변 기기에 대응하는 디바이스 드라이버가 인스톨되어 있는지 의 여부를 판정하는 판정 수단; 및
    상기 판정 수단에 의해 상기 상한 수에 충족되지 않는 순위의 주변 기기에 대응하는 디바이스 드라이버가 인스톨되어 있는 것으로 판정되는 경우, 상기 판정된 디바이스 드라이버를 언인스톨(uninstall)하는 언인스톨 제어 수단
    을 포함하는 정보 처리 장치.
  14. 주변 기기들과 통신가능하고, 소정 조건에 기초하여 설정된 우선 순위에 따라 상한 수까지 디바이스 드라이버들을 저장하며, 상기 주변 기기들을 이용가능하게 할 수 있는 정보 처리 장치로서,
    상기 주변 기기로부터 발행되는 제1 신호를 수신하는 제1 수신 수단;
    상기 제1 수신 수단에 의해 수신되는 제1 신호의 발행자인 주변 기기에 대한 정보를 수신하는 제2 수신 수단;
    상기 제2 수신 수단에 의해 수신되는 주변 기기에 대한 정보 및 상기 조건에 기초하여 설정되는 상기 주변 기기의 우선 순위가, 상기 상한 수를 충족하는지 여부를 판정하는 판정 수단; 및
    상기 판정 수단에 의해 상기 주변 기기의 우선 순위가 상기 상한 수를 충족하는 것으로 판정되는 경우, 상기 주변 기기에 대응하는 디바이스 드라이버를 인스톨하는 인스톨 제어 수단
    을 포함하는 정보 처리 장치.
  15. 제14항에 있어서,
    상기 제1 수신 수단에 의해 수신되는 제1 신호는, 상기 정보 처리 장치와 통신가능한 주변 기기로부터의 접속 개시 신호인 정보 처리 장치.
  16. 제14항 또는 제15항에 있어서,
    인스톨될 디바이스 드라이버를 결정하기 위한 속성 정보를 설정하는 설정 수단; 및
    상기 설정 수단에 의해 설정되는 속성 정보에 기초하여, 디바이스 드라이버의 우선 순위를 설정하는 우선 순위 부여 수단
    을 포함하며,
    상기 우선 순위 부여 수단은, 상기 제2 수신 수단에 의해 수신되는 주변 기기에 대한 정보가 상기 설정 수단에 의해 설정되는 속성 정보와 일치하는 정보가 많은 주변 기기일수록 높은 우선 순위를 설정하는 정보 처리 장치.
  17. 제14항에 있어서,
    상기 인스톨 제어 수단에 의해 상기 주변 기기의 디바이스 드라이버가 인스톨되는 경우, 이미 인스톨된 디바이스 드라이버들로부터 적어도 하나의 디바이스 드라이버가 언인스톨되는 정보 처리 장치.
  18. 접속된 주변 기기들을 인식하는 인식 기능을 가지며, 상기 접속된 주변 기기들을 이용가능하게 할 수 있는 정보 처리 장치의 제어 방법으로서,
    인스톨되는 디바이스 드라이버들의 상한 수를 유지하는 유지 단계; 및
    상기 인식 기능에 의해 인식된 주변 기기들에 대응하는 디바이스 드라이버들을 인스톨하는 경우, 상기 유지 단계에서 유지되는 상한 수 만큼의 디바이스 드라이버들을 인스톨하는 인스톨 제어 단계
    를 포함하는 정보 처리 장치의 제어 방법.
  19. 제18항에 있어서,
    상기 인스톨 제어 단계는, 상기 인식 기능에 의해 인식된 주변 기기들에 대 응하는 디바이스 드라이버들 중에서, 인스톨되어 있지 않은 디바이스 드라이버를 인스톨하는 정보 처리 장치의 제어 방법.
  20. 제18항 또는 제19항에 있어서,
    상기 상한 수는, 인스톨 가능한 디바이스 드라이버들의 수를 나타내는 상한수이며,
    상기 인스톨 제어 단계는, 상기 상한 수를 인스톨된 디바이스 드라이버들의 상한으로 하고, 상기 인식 기능에 의해 인식된 주변 기기들에 대응하는 디바이스 드라이버들 중에서 인스톨되어 있지 않은 디바이스 드라이버를 인스톨하는 정보 처리 장치의 제어 방법.
  21. 제18항 또는 제19항에 있어서,
    접속된 주변 기기들을 인식하는 인식 기능을 제공하기 위한 인식 단계를 더 포함하는 정보 처리 장치의 제어 방법.
  22. 제18항 또는 제19항에 있어서,
    상기 인식 기능은 상기 접속된 주변 기기들에 대한 정보를 취득하며,
    상기 인스톨 제어 단계는, 상기 유지 단계에서 유지된 상한 수를 인스톨 가능한 디바이스 드라이버들의 수로 하고, 상기 인식 기능에 의해 취득된 주변 기기들에 대한 정보에 기초하여, 인스톨될 디바이스 드라이버들에 대한 후보들을 결정 하고, 상기 결정된 디바이스 드라이버의 후보들 중 인스톨되어 있지 않은 디바이스 드라이버를 인스톨하는 정보 처리 장치의 제어 방법.
  23. 제18항 또는 제19항에 있어서,
    상기 인식 기능에 의해 인식되는 주변 기기들에, 속성 정보에 기초하여 우선순위를 부여하는 순위 부여 단계를 더 포함하며,
    상기 인스톨 제어 단계는, 상기 순위 부여 단계에서 부여된 순위들이 상기 상한 수 이내의 주변 기기들에 대응하는 디바이스 드라이버들 중에서, 인스톨되어 있지 않은 디바이스 드라이버를 인스톨하는 정보 처리 장치의 제어 방법.
  24. 제23항에 있어서,
    상기 속성 정보를 유저가 지정하게 하는 지정 단계를 더 포함하는 정보 처리 장치의 제어 방법.
  25. 제18항 또는 제19항에 있어서,
    상기 유지 단계는, 상기 주변 기기의 각 종류에 대해 인스톨되는 디바이스 드라이버들의 상한 수를 유지하는 정보 처리 장치의 제어 방법.
  26. 제18항 또는 제19항에 있어서,
    상기 주변 기기들은 프린터를 포함하는 정보 처리 장치의 제어 방법.
  27. 제23항에 있어서,
    상기 순위 부여 단계는, 인스톨된 속성을 상기 속성 정보로 하여, 인스톨된 디바이스 드라이버에 대응하는 주변 기기에 대해, 인스톨되지 않은 디바이스 드라이버에 대응하는 주변 기기보다 높은 우선 순위를 부여하는 정보 처리 장치의 제어 방법.
  28. 제23항에 있어서,
    상기 순위 부여 단계는, 사용 속성의 빈도를 속성 정보로 하여, 사용 빈도에 기초하여 우선 순위를 부여하는 정보 처리 장치의 제어 방법.
  29. 제23항에 있어서,
    상기 순위 부여 단계는, 기능 속성을 속성 정보로 하여, 지정된 기능을 갖는 주변 기기에 대해, 지정된 기능을 갖지 않는 주변 기기들보다 높은 우선 순위를 부여하는 정보 처리 장치의 제어 방법.
  30. 제23항에 있어서,
    상기 순위 부여 단계에서 설정되는 순위에 기초하여, 상기 상한 수에 포함되지 않는 순위의 주변 기기에 대응하는 디바이스 드라이버가 인스톨되어 있는지의 여부를 판정하는 판정 단계; 및
    상기 판정 단계에서 상기 상한 수에 충족되지 않는 순위의 주변 기기에 대응하는 디바이스 드라이버가 인스톨되어 있는 것으로 판정되는 경우, 상기 판정된 디바이스 드라이버를 언인스톨하는 언인스톨 제어 단계
    를 포함하는 정보 처리 장치의 제어 방법.
  31. 주변 기기들과 통신가능하고, 소정 조건에 기초하여 설정된 우선 순위에 따라 상기 상한 수까지 디바이스 드라이버들을 저장하며, 상기 주변 기기들을 이용가능하게 할 수 있는 정보 처리 장치의 제어 방법으로서,
    상기 주변 기기로부터 발행되는 제1 신호를 수신하는 제1 수신 단계;
    상기 제1 수신 단계에서 수신되는 제1 신호의 발행자인 주변 기기에 대한 정보를 수신하는 제2 수신 단계;
    상기 제2 수신 단계에서 수신되는 주변 기기에 대한 정보 및 상기 조건에 기초하여 설정되는 상기 주변 기기의 우선 순위가, 상기 상한 수를 충족하는지 여부를 판정하는 판정 단계; 및
    상기 판정 단계에서 상기 주변 기기의 우선 순위가 상기 상한 수를 충족하는 것으로 판정되는 경우, 상기 주변 기기에 대응하는 디바이스 드라이버를 인스톨하는 인스톨 제어 단계
    를 포함하는 정보 처리 장치의 제어 방법.
  32. 제31항에 있어서,
    상기 제1 수신 단계에서 수신되는 제1 신호는, 상기 정보 처리 장치와 통신가능한 주변 기기로부터의 접속 개시 신호인 정보 처리 장치의 제어 방법.
  33. 제31항 또는 제32항에 있어서,
    인스톨될 디바이스 드라이버를 결정하기 위한 속성 정보를 설정하는 설정 단계; 및
    상기 설정 단계에서 설정되는 속성 정보에 기초하여, 디바이스 드라이버의 우선 순위를 설정하는 우선 순위 부여 단계
    를 포함하며,
    상기 우선 순위 부여 단계는, 상기 제2 수신 단계에서 수신되는 주변 기기에 대한 정보가 상기 설정 단계에서 설정되는 속성 정보와 일치하는 정보가 많은 주변 기기일수록 높은 우선 순위를 설정하는 정보 처리 장치의 제어 방법.
  34. 제31항에 있어서,
    상기 인스톨 제어 단계에서 상기 주변 기기의 디바이스 드라이버가 인스톨되는 경우, 이미 인스톨된 디바이스 드라이버들로부터 적어도 하나의 디바이스 드라이버가 언인스톨되는 정보 처리 장치의 제어 방법.
  35. 컴퓨터로 하여금, 접속된 주변 기기들을 인식하는 인식 기능을 가지며, 상기 접속된 주변 기기들을 이용가능하게 하는 프로그램이 기록된 컴퓨터 판독가능한 기 록 매체로서,
    상기 프로그램은,
    인스톨되는 디바이스 드라이버들의 상한 수를 유지하는 유지 단계의 코드들; 및
    상기 인식 기능에 의해 인식된 주변 기기들에 대응하는 디바이스 드라이버들을 인스톨하는 경우, 상기 유지 단계에서 유지되는 상한 수 만큼의 디바이스 드라이버들을 인스톨하는 인스톨 제어 단계의 코드들
    을 포함하는 컴퓨터 판독가능한 기록 매체.
  36. 컴퓨터로 하여금, 주변 기기들과 통신가능하고, 소정 조건에 기초하여 설정된 우선 순위에 따라 상한 수까지 디바이스 드라이버들을 저장하며, 상기 주변 기기들을 이용가능하게 하는 프로그램이 기록된 컴퓨터 판독가능한 기록 매체로서,
    상기 프로그램은,
    상기 주변 기기로부터 발행되는 제1 신호를 수신하는 제1 수신 단계의 코드들;
    상기 제1 수신 단계에서 수신되는 제1 신호의 발행자인 주변 기기에 대한 정보를 수신하는 제2 수신 단계의 코드들;
    상기 제2 수신 단계에서 수신되는 주변 기기에 대한 정보 및 상기 조건에 기초하여 설정되는 상기 주변 기기의 우선 순위가, 상기 상한 수를 충족하는지 여부를 판정하는 판정 단계의 코드들; 및
    상기 판정 단계에서 상기 주변 기기의 우선 순위가 상기 상한 수를 충족하는 것으로 판정되는 경우, 상기 주변 기기에 대응하는 디바이스 드라이버를 인스톨하는 인스톨 제어 단계의 코드들
    을 포함하는 컴퓨터 판독가능한 기록 매체.
KR1020060084128A 2005-09-01 2006-09-01 디바이스 드라이버의 관리 방법 및 정보 처리 장치 KR100778200B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2005-00253795 2005-09-01
JP2005253795A JP4971610B2 (ja) 2005-09-01 2005-09-01 デバイスドライバを管理するためのプログラムおよび方法と情報処理装置

Publications (2)

Publication Number Publication Date
KR20070026234A KR20070026234A (ko) 2007-03-08
KR100778200B1 true KR100778200B1 (ko) 2007-11-22

Family

ID=37102502

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060084128A KR100778200B1 (ko) 2005-09-01 2006-09-01 디바이스 드라이버의 관리 방법 및 정보 처리 장치

Country Status (5)

Country Link
US (1) US7730224B2 (ko)
EP (1) EP1764689A3 (ko)
JP (1) JP4971610B2 (ko)
KR (1) KR100778200B1 (ko)
CN (1) CN100504820C (ko)

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070097969A1 (en) * 2005-11-02 2007-05-03 Alain Regnier Approach for discovering network resources
US7725613B2 (en) * 2006-02-27 2010-05-25 Microsoft Corporation Device installation with host controller consideration
US7496627B2 (en) * 2006-03-16 2009-02-24 Exceptional Innovation, Llc Automation control system having digital logging
US8155142B2 (en) * 2006-03-16 2012-04-10 Exceptional Innovation Llc Network based digital access point device
US8209398B2 (en) * 2006-03-16 2012-06-26 Exceptional Innovation Llc Internet protocol based media streaming solution
US7509402B2 (en) * 2006-03-16 2009-03-24 Exceptional Innovation, Llc Automation control system having a configuration tool and two-way ethernet communication for web service messaging, discovery, description, and eventing that is controllable with a touch-screen display
US8725845B2 (en) 2006-03-16 2014-05-13 Exceptional Innovation Llc Automation control system having a configuration tool
US7966083B2 (en) 2006-03-16 2011-06-21 Exceptional Innovation Llc Automation control system having device scripting
US8001219B2 (en) * 2006-03-16 2011-08-16 Exceptional Innovation, Llc User control interface for convergence and automation system
WO2007124453A2 (en) * 2006-04-20 2007-11-01 Exceptional Innovation Llc Touch screen for convergence and automation system
US7667968B2 (en) 2006-05-19 2010-02-23 Exceptional Innovation, Llc Air-cooling system configuration for touch screen
JP4870621B2 (ja) 2006-09-15 2012-02-08 株式会社リコー 情報処理装置、方法、システム、プログラム及びその記録媒体
KR20080035180A (ko) * 2006-10-18 2008-04-23 삼성전자주식회사 화상형성장치, 화상형성시스템 및 그 제어방법
US7962130B2 (en) * 2006-11-09 2011-06-14 Exceptional Innovation Portable device for convergence and automation solution
JP4923998B2 (ja) * 2006-12-11 2012-04-25 富士ゼロックス株式会社 印刷装置およびプログラム
US7987278B2 (en) * 2006-12-18 2011-07-26 Ricoh Company, Ltd. Web services device profile on a multi-service device: dynamic addition of services
US7873647B2 (en) * 2006-12-18 2011-01-18 Ricoh Company, Ltd. Web services device profile on a multi-service device: device and facility manager
US7680877B2 (en) * 2006-12-18 2010-03-16 Ricoh Company, Ltd. Implementing a web service application on a device with multiple threads
US7904917B2 (en) * 2006-12-18 2011-03-08 Ricoh Company, Ltd. Processing fast and slow SOAP requests differently in a web service application of a multi-functional peripheral
US8127306B2 (en) * 2006-12-18 2012-02-28 Ricoh Company, Ltd. Integrating eventing in a web service application of a multi-functional peripheral
US8112766B2 (en) * 2006-12-21 2012-02-07 Ricoh Company, Ltd. Multi-threaded device and facility manager
US8321546B2 (en) * 2007-01-10 2012-11-27 Ricoh Company, Ltd. Integrating discovery functionality within a device and facility manager
JP4857102B2 (ja) * 2006-12-22 2012-01-18 キヤノン株式会社 情報処理装置、ジョブ処理方法、プログラム及び記憶媒体
JP4295328B2 (ja) * 2007-02-19 2009-07-15 シャープ株式会社 画像処理装置
JP4946556B2 (ja) * 2007-03-19 2012-06-06 富士通株式会社 サービス呼び出し支援プログラムおよび端末装置
US8271621B2 (en) 2007-05-04 2012-09-18 Ricoh Company, Ltd. Metadata communication system
WO2008143881A1 (en) * 2007-05-14 2008-11-27 Exceptional Innovation, Llc Customizable media device
WO2008148096A1 (en) 2007-05-25 2008-12-04 Exceptional Innovation, Llc Customizable remote control device
US8239876B2 (en) * 2007-06-12 2012-08-07 Ricoh Company, Ltd. Efficient web services application status self-control system on image-forming device
US8060891B2 (en) * 2007-06-29 2011-11-15 Microsoft Corporation Management of external hardware appliances in a distributed operating system
JP4960782B2 (ja) * 2007-07-03 2012-06-27 キヤノン株式会社 情報処理装置及びそれを制御する方法及びプログラム
JP5067057B2 (ja) * 2007-07-20 2012-11-07 富士ゼロックス株式会社 画像処理装置及び画像処理プログラム
KR101279438B1 (ko) 2007-07-23 2013-06-26 삼성전자주식회사 유니버셜 프린터 드라이버를 사용하는 인쇄 환경에서화상형성장치의 프린터 드라이버를 설치하는 방법 및 장치
JP4725559B2 (ja) * 2007-08-03 2011-07-13 ブラザー工業株式会社 情報処理装置、及びインストール用プログラム
KR20090031111A (ko) * 2007-09-21 2009-03-25 삼성전자주식회사 화상형성장치 드라이버 프로그램의 관리 방법 및 장치
KR100881723B1 (ko) * 2007-09-21 2009-02-06 한국전자통신연구원 미디어 실감 재현을 위한 디바이스 연동/제어 정보 생성장치 및 방법
US8453164B2 (en) * 2007-09-27 2013-05-28 Ricoh Company, Ltd. Method and apparatus for reduction of event notification within a web service application of a multi-functional peripheral
JP5284023B2 (ja) * 2007-10-05 2013-09-11 キヤノン株式会社 情報処理装置および制御方法および制御プログラム
JP5173354B2 (ja) * 2007-10-22 2013-04-03 京セラドキュメントソリューションズ株式会社 印刷システムおよび印刷用プログラム
EP2075684B1 (en) * 2007-12-28 2019-02-20 Canon Europa N.V. A method and apparatus for controlling routing of print jobs
JP2009288937A (ja) * 2008-05-28 2009-12-10 Brother Ind Ltd インストールシステムおよびプログラム
JP2010008439A (ja) * 2008-06-24 2010-01-14 Brother Ind Ltd デバイスドライバ
KR101569037B1 (ko) * 2009-12-03 2015-11-16 삼성전자주식회사 컨트롤 포인트, 화상형성장치, 및 인쇄 제어 방법
JP5578239B2 (ja) * 2010-10-27 2014-08-27 富士通株式会社 ブレード、管理プログラム、および管理方法
EP2731109B1 (en) 2010-12-14 2016-09-07 SanDisk Technologies LLC Architecture for three dimensional non-volatile storage with vertical bit lines
US8943229B2 (en) 2010-12-30 2015-01-27 Google Inc. Peripheral device detection with short-range communication
JP2013061760A (ja) * 2011-09-13 2013-04-04 Konica Minolta Business Technologies Inc プログラム及び情報処理装置
JP5890648B2 (ja) * 2011-10-21 2016-03-22 キヤノンイメージングシステムズ株式会社 情報処理装置、その制御方法、およびデバイス制御システム
JP5866971B2 (ja) * 2011-10-27 2016-02-24 富士ゼロックス株式会社 画像形成システム
JP6048089B2 (ja) * 2011-12-26 2016-12-21 株式会社リコー 情報処理装置、及びプログラム
US9171584B2 (en) 2012-05-15 2015-10-27 Sandisk 3D Llc Three dimensional non-volatile storage with interleaved vertical select devices above and below vertical bit lines
JP5866102B2 (ja) * 2012-06-12 2016-02-17 三菱電機株式会社 機器管理装置、機器管理方法および機器管理プログラム
US8984186B2 (en) * 2012-08-29 2015-03-17 Google Inc. Augmenting capabilities of a host device
JP2014075056A (ja) * 2012-10-04 2014-04-24 Canon Inc 画像形成装置とその制御方法、印刷システム、並びにプログラム
US9202694B2 (en) 2013-03-04 2015-12-01 Sandisk 3D Llc Vertical bit line non-volatile memory systems and methods of fabrication
US9165933B2 (en) 2013-03-07 2015-10-20 Sandisk 3D Llc Vertical bit line TFT decoder for high voltage operation
WO2014201641A1 (zh) * 2013-06-19 2014-12-24 华为终端有限公司 信息查询方法和设备
JP6225590B2 (ja) * 2013-09-17 2017-11-08 株式会社リコー プログラム、情報処理装置及び情報処理システム
CN103488513B (zh) * 2013-09-30 2016-04-13 北京水木元生科技有限责任公司 设备即插即用通用驱动方法
US9362338B2 (en) 2014-03-03 2016-06-07 Sandisk Technologies Inc. Vertical thin film transistors in non-volatile storage systems
US9379246B2 (en) 2014-03-05 2016-06-28 Sandisk Technologies Inc. Vertical thin film transistor selection devices and methods of fabrication
US9627009B2 (en) 2014-07-25 2017-04-18 Sandisk Technologies Llc Interleaved grouped word lines for three dimensional non-volatile storage
JP2016164781A (ja) * 2015-02-27 2016-09-08 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理装置の制御方法、情報処理システムおよびプログラム
US9450023B1 (en) 2015-04-08 2016-09-20 Sandisk Technologies Llc Vertical bit line non-volatile memory with recessed word lines
JP6439723B2 (ja) 2016-03-09 2018-12-19 信越化学工業株式会社 合成石英ガラス基板の製造方法
JP6624987B2 (ja) * 2016-03-23 2019-12-25 キヤノン株式会社 情報処理装置及びプログラム、制御方法
CA3018022C (en) * 2016-03-31 2020-12-22 Bitdefender Ipr Management Ltd Systems and methods for automatic device detection
CN106168908A (zh) * 2016-09-27 2016-11-30 北京金山安全软件有限公司 一种驱动程序获取方法、服务器及移动终端
JP6916464B2 (ja) * 2017-06-22 2021-08-11 コニカミノルタ株式会社 サーバ用プリンタドライバプログラム
CN107528919A (zh) * 2017-09-25 2017-12-29 江苏英索纳智能科技有限公司 一种局域网设备发现和驱动程序自动安装的方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004038956A (ja) * 2002-06-28 2004-02-05 Microsoft Corp コンピューティングシステムおよびその方法
JP2004149362A (ja) * 2002-10-31 2004-05-27 Taiheiyo Material Kk セメント混和用不分離剤、これを含む無収縮モルタル・コンクリート用混和材及び無収縮モルタル・コンクリート
JP2004362594A (ja) * 2003-06-06 2004-12-24 Microsoft Corp 外部ネットワークデバイスを自動的に発見および構成する方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11203077A (ja) * 1998-01-08 1999-07-30 Seiko Epson Corp 印刷システム及びプリンタの選択方法
JPH11203231A (ja) * 1998-01-09 1999-07-30 Fuji Xerox Co Ltd 電子装置拡張システム
JP4056214B2 (ja) 2000-11-13 2008-03-05 株式会社リコー 情報処理装置、画像形成システム、制御方法及び制御プログラム
JP4393348B2 (ja) * 2000-12-22 2010-01-06 キヤノン株式会社 情報処理装置、方法及びプログラム
US6671749B2 (en) * 2001-03-07 2003-12-30 Hewlett-Packard Development Company, L.P. Peripheral driver installation method and system
US7312886B2 (en) * 2001-12-03 2007-12-25 Canon Kabushiki Kaisha Printer control method, information processing apparatus, program, and storage medium
KR100444996B1 (ko) * 2002-02-08 2004-08-21 삼성전자주식회사 인터넷을 통한 디바이스 드라이버 자동 설치 및 유지 보수방법 및 그 시스템
US7213060B2 (en) 2002-04-23 2007-05-01 Canon Kabushiki Kaisha Web based creation of printer instances on a workstation
JP3578153B2 (ja) * 2002-05-31 2004-10-20 ブラザー工業株式会社 情報処理装置、プログラム、記録媒体、及びインストール状況表示方法
US7752290B2 (en) * 2002-08-21 2010-07-06 Canon Kabushiki Kaisha Information processing apparatus connectable to peripheral device, controlling method, and computer-readable storage medium storing control program thereon
JP3919721B2 (ja) * 2002-10-29 2007-05-30 キヤノン株式会社 情報処理方法及び情報処理装置
JP2005018363A (ja) * 2003-06-25 2005-01-20 Konica Minolta Business Technologies Inc 画像形成システム
JP2005217974A (ja) * 2004-01-30 2005-08-11 Canon Inc 電子機器及びその制御方法
JP2005267544A (ja) * 2004-03-22 2005-09-29 Fuji Xerox Co Ltd プリンタ管理方法および装置並びにプログラム
CN100514315C (zh) * 2004-04-27 2009-07-15 日本冲信息株式会社 计算机的外围装置
US7716382B2 (en) * 2005-01-11 2010-05-11 Microsoft Corporation Rich targeting criteria for selection of driver packages

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004038956A (ja) * 2002-06-28 2004-02-05 Microsoft Corp コンピューティングシステムおよびその方法
JP2004149362A (ja) * 2002-10-31 2004-05-27 Taiheiyo Material Kk セメント混和用不分離剤、これを含む無収縮モルタル・コンクリート用混和材及び無収縮モルタル・コンクリート
JP2004362594A (ja) * 2003-06-06 2004-12-24 Microsoft Corp 外部ネットワークデバイスを自動的に発見および構成する方法

Also Published As

Publication number Publication date
CN1924839A (zh) 2007-03-07
EP1764689A3 (en) 2009-02-25
US7730224B2 (en) 2010-06-01
US20070083679A1 (en) 2007-04-12
JP2007066189A (ja) 2007-03-15
KR20070026234A (ko) 2007-03-08
EP1764689A2 (en) 2007-03-21
CN100504820C (zh) 2009-06-24
JP4971610B2 (ja) 2012-07-11

Similar Documents

Publication Publication Date Title
KR100778200B1 (ko) 디바이스 드라이버의 관리 방법 및 정보 처리 장치
US7600050B2 (en) Information processing apparatus, information processing apparatus control method, information processing program, and network system
US7908609B2 (en) Information processing apparatus with device driver installation control
US7305456B2 (en) Device information acquiring method, server apparatus and computer-readable storage medium
US9007631B2 (en) System, apparatus and method for managing heterogeneous group of devices
US20110261396A1 (en) Control device for managing drivers
US7620960B2 (en) Information processing apparatus storing driver, control program, and medium storing control program
JP2004255873A (ja) フィルタリングシステムおよび方法に基づくサービス属性
US20070032888A1 (en) Control apparatus, communication device, and communication method
JP2003108448A (ja) ネットワークデバイスの管理装置、管理方法及び管理プログラム
US8689242B2 (en) Information processing apparatus for controlling installation, method for controlling the apparatus and control program for executing the method
US20110231581A1 (en) Device management apparatus, device management method, and recording medium
JP2011129054A (ja) 印刷ジョブ管理装置、印刷ジョブ管理システム、印刷ジョブ管理方法、及び印刷ジョブ管理プログラム
US8422040B2 (en) Image forming system and method, management apparatus, and recording medium
JP2005258721A (ja) デバイス構成情報の取得方法及び情報処理装置
US8332494B2 (en) Device management system, servers, method for managing device, and computer readable medium
JP2007265392A (ja) 情報処理装置、プログラム及び該プログラムを記憶した記憶媒体
US11137950B2 (en) Non-transitory storage medium storing instructions executable by communication apparatus, the communication apparatus, and display method
JP5057899B2 (ja) 画像形成装置、アプリケーション制御方法、及びアプリケーション制御プログラム
US11249694B2 (en) Non-transitory storage medium storing instructions executable by communication apparatus, the communication apparatus, and list creating method
JP2013084304A (ja) 情報処理装置及び情報処理方法及びプログラム
JP2013016077A (ja) 情報処理装置、プログラム、及び印刷システム
US20200264817A1 (en) Information processing apparatus and non-transitory computer readable medium
KR101902528B1 (ko) 공급자 제어 메커니즘을 포함하는 플랫폼 시스템 및 플랫폼 시스템의 동작방법
JP2012249328A (ja) 画像処理装置およびその制御方法、プログラム

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121023

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20131029

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20141028

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20151023

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20161025

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee