KR20120086254A - 장치 및 프린터 - Google Patents
장치 및 프린터 Download PDFInfo
- Publication number
- KR20120086254A KR20120086254A KR1020120005512A KR20120005512A KR20120086254A KR 20120086254 A KR20120086254 A KR 20120086254A KR 1020120005512 A KR1020120005512 A KR 1020120005512A KR 20120005512 A KR20120005512 A KR 20120005512A KR 20120086254 A KR20120086254 A KR 20120086254A
- Authority
- KR
- South Korea
- Prior art keywords
- manifest
- application
- information
- framework
- unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1229—Printer resources management or printer maintenance, e.g. device status, power levels
- G06F3/123—Software or firmware update, e.g. device firmware management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
- Facsimiles In General (AREA)
Abstract
장치는, 매니페스트의 정보를 기초로 어플리케이션을 인스톨하고, 본 프레임워크를 사용할 때 이용하는 것이 정해진 규정 매니페스트를 사용하는 프레임워크를 구비한다. 본 장치는, 본 장치가 매니페스트 파일의 선언 값을 변경하는 모델인가 아닌가를 판정한다. 본 장치는, 본 장치가 매니페스트 파일의 선언 값을 변경하는 모델이라고 판정한 경우에, 매니페스트 파일의 선언 값을 변경하는 모델에 부가된 매니페스트 파일은, 디폴트로서 상기 매니페스트 파일에 덮어써진다.
Description
본 발명은, 프레임워크를 갖는 장치, 및 프린터에 관한 것이다.
어플리케이션의 실행 시작/정지등 어플리케이션의 라이프 사이클을 관리하는 프레임워크로서 OSGi(Open Services Gateway initiative)Alliance로부터 OSGi프레임워크가 제창되어 있다. OSGi프레임워크에서는, 어플리케이션의 형식을 Java의 압축 포맷인 jar파일로서 규정하고 있다. jar파일은, 복수의 클래스 파일을 아카이브로서 1개의 파일로 모아서 생성된다. 또한, jar파일은, jar파일의 설명을 갖는 MANIFEST.MF를 포함한다. 이 매니페스트 파일에 OSGi사양의 속성을 기재함으로써, 상기 OSGi프레임워크는, 기재된 속성에 따라서 상기 어플리케이션의 라이프 사이클을 관리한다.
화상형성장치에 있어서, 어플리케이션을 외부에서 인스톨해서 탑재하는 것을 시험해 본다. 상기 OSGi프레임워크에 준거한 시스템을 탑재한 화상형성장치도 보급되어 있다. 또한, 매니페스트 파일에 OSGi사양의 속성뿐만 아니라, 독자의 속성도 정의되어 확장된 다른 화상형성장치도 보여진다.
사용 가능한 기능의 유무와, 하드디스크 드라이브(HDD) 용량이나 메모리의 용량은, 장치의 모델에 따라 달라진다. 작성한 어플리케이션이 이러한 복수의 다른 모델에 대하여 인스톨 가능한 시스템의 구축이 요망되고 있다. 일본국 공개특허공보 특개 2000-305756호에는, 인스톨처의 하드디스크 드라이브(HDD)의 잔량에 따라 1개의 어플리케이션의 인스톨 내용을 변하게 하는 방법이 개시되어 있다. 일본국 공개특허공보 특개 2000-305756호에 개시된 것처럼, HDD의 빈 용량이 적을 경우, 어플리케이션을 압축해서 일시적으로 인스톨하도록, 또한, 빈 용량이 확보될 때 상기 어플리케이션을 해동하도록, 인스톨을 제어한다.
본 발명의 일 국면에 따른 장치는, 매니페스트의 정보를 기초로 어플리케이션을 인스톨하고, 본 프레임워크를 사용할 때 이용하는 것이 정해진 규정 매니페스트를 사용하는 프레임워크를 갖는다. 상기 장치는, 상기 어플리케이션을 상기 장치에 인스톨할 때, 상기 규정 매니페스트의 이외에 다른 매니페스트의 정보도 상기 장치의 모델 정보를 기초로 필요한 것인가 아닌가를 판단하는 판단부와, 상기 판단부에 의해 상기 다른 매니페스트의 정보가 필요하지 않다고 판단되었을 경우에는, 상기 규정 매니페스트의 정보를 상기 다른 매니페스트의 정보를 송신하지 않고 상기 프레임워크에 송신하고, 상기 판단부에 의해 상기 다른 매니페스트의 정보가 필요하다고 판단되었을 경우에는, 상기 규정 매니페스트의 정보의 이외에 상기 다른 매니페스트 정보를 상기 프레임워크에 송신하는 송신부를 구비한다. 상기 프레임워크는, 상기 송신부가 상기 규정 매니페스트의 정보와 상기 다른 매니페스트 정보를 송신할 때, 양쪽의 상기 정보를 기초로 상기 어플리케이션을 인스톨한다.
본 발명의 또 다른 특징들과 국면들은, 첨부도면을 참조하여 아래의 예시적 실시예들의 상세한 설명으로부터 명백해질 것이다.
본 명세서에 포함되고 그 일부를 구성하는 첨부도면들은, 본 발명의 예시적인 실시예들, 특징들 및 국면들을 나타내고, 이 설명과 함께, 본 발명의 원리를 설명하는 역할을 한다.
도 1은 본 발명의 예시적 실시예에 따른 시스템 구성도다.
도 2는 상기 예시적 실시예에 따른 화상형성장치의 하드웨어 구성도다.
도 3a는 상기 예시적 실시예에 따른 상기 화상형성장치의 소프트웨어 구성도다.
도 3b는 인스톨러의 구성도다.
도 4는 상기 예시적 실시예에 따른 매니페스트 파일의 구성도다.
도 5는 상기 예시적 실시예에 따른 인스톨러에 의해 실행된 흐름도다.
도 6은 상기 예시적 실시예에 따른 덮어쓰기부에 의해 실행된 흐름도다.
도 7은 상기 예시적 실시예에 따른 MANIFEST.MF 파일을 도시한 도면이다.
도 8은 상기 예시적 실시예에 따른 MANIFEST_EX.MF 파일을 도시한 도면이다.
도 9는 상기 예시적 실시예에 따른 재압축후 MANIFEST.MF 파일을 도시한 도면이다.
도 1은 본 발명의 예시적 실시예에 따른 시스템 구성도다.
도 2는 상기 예시적 실시예에 따른 화상형성장치의 하드웨어 구성도다.
도 3a는 상기 예시적 실시예에 따른 상기 화상형성장치의 소프트웨어 구성도다.
도 3b는 인스톨러의 구성도다.
도 4는 상기 예시적 실시예에 따른 매니페스트 파일의 구성도다.
도 5는 상기 예시적 실시예에 따른 인스톨러에 의해 실행된 흐름도다.
도 6은 상기 예시적 실시예에 따른 덮어쓰기부에 의해 실행된 흐름도다.
도 7은 상기 예시적 실시예에 따른 MANIFEST.MF 파일을 도시한 도면이다.
도 8은 상기 예시적 실시예에 따른 MANIFEST_EX.MF 파일을 도시한 도면이다.
도 9는 상기 예시적 실시예에 따른 재압축후 MANIFEST.MF 파일을 도시한 도면이다.
이하, 도면들을 참조하여 본 발명의 여러 가지 예시적 실시예들, 특징들 및 국면들을 상세히 설명한다.
종래기술에서는, 사용 가능한 기능의 유무, 하드 디스크 드라이브(HDD) 용량, 또는 메모리 용량등의 장치마다 변하는 속성에 따라, 선언 값 또는 어플리케이션 이름을 바꾸어서 어플리케이션을 인스톨하는 것은 고려하지 않는다.
예를 들면, 단일 기능 프린터(SFP)와 다기능 프린터(MFP)간에는 탑재된 유닛에 차이가 있다. 화상형성장치의 리소스량에 대해서, 상기 MFP가 SFP보다도 클 수 있다.
본 발명에서는, 사용 가능한 기능, HDD용량 또는 메모리 용량이 다른 장치에 대하여, OSGi의 표준사양으로부터 일탈하지 않고, 개개의 장치에 적합한 선언 값에 근거하여, 어플리케이션을 인스톨하는 것을 대상으로 삼는다.
이하, 본 발명을 예시적 실시예에 따라 설명한다. OSGi프레임워크는, jar파일에 포함된 MANIFEST.MF라고 하는 명칭의 매니페스트 파일을 판독하는 사양을 갖는다. 프린터 모델에 따라 사용 가능한 기능의 유무, HDD 용량 또는 메모리 용량에 차이가 있는 경우, 매니페스트 파일의 OSGi사양의 속성값을 프린터 모델마다 설정하고 싶은 케이스가 있다. 그 경우, OSGi의 사양에서는, 복수의 매니페스트 파일을 갖는 어플리케이션을 작성한 경우에도, OSGi프레임워크가 매니페스트 파일을 개별적으로 판독할 수 없다.
그 때문에, 매니페스트 파일의 기재를 변경한 어플리케이션을 프린터 모델마다 작성할 필요가 있다. 또한, 1개의 어플리케이션은, 2개의 패키지로 나누어져야 한다. 이렇게 하여, 어플리케이션의 관리가 복잡해진다고 하는 결점이 있다. 또한, 어플리케이션 제공자는, 유저가 소유하는 화상형성장치의 모델에 따라, 상기 1개의 어플리케이션을 변경하여서 얻어진 다른 어플리케이션을 제공할 필요가 있다.
본 발명은, 사용 가능한 기능의 유무, HDD용량 또는 메모리 용량에 의존하여 변하는 속성들에 따라 매니페스트의 선언 값 또는 어플리케이션 이름을 바꾸어서 어플리케이션을 인스톨하는 것을 대상으로 삼는다.
이후, 도면을 참조하여, 본 발명의 예시적 실시예에 따라 구체적으로 설명한다. 상기 예시적 실시예에 따라 기재된 구성요소는 예시들이며, 본 발명의 범위는 그것들에 한정되지 않는다.
도 1은, 본 발명의 예시적 실시예에 따른 정보처리장치를 포함하는 네트워크 시스템의 구성도다. 도 1을 참조하면, 화상형성장치(101)는, 1대의 장치에, 프린터, 복사기 및 팩스밀리(FAX)등의 기능을 겸비한다. 화상형성장치(101)에는 복수의 어플리케이션이 인스톨될 수 있다. 화상형성장치(101)는, 화상형성장치에 할당된 고유의 기기 식별자(ID)를 가진다. 정보처리장치(102)는, 화상형성장치(101)를 원격으로 조작하기 위해서 사용된다. 네트워크(103)는, 인터넷등이다. 화상형성장치(101)는, 네트워크(103)를 통해 정보처리장치(102)와 통신을 한다.
도 2는, 정보처리장치(102)를 구성하는 하드웨어 구성을 도시한 도면이다. 중앙처리유닛(CPU)(202)은, 각종 프로그램을 실행하고, 여러 가지 기능을 실현한다. 판독전용 메모리(ROM)(204)는, 각종 프로그램을 기억한다. CPU(202)는, ROM(204)에 기억되어 있는 프로그램을 랜덤 액세스 메모리(RAM)(203)에 로드하여 그 프로그램을 실행한다.
RAM(203)은, CPU(202)의 일시적인 작업 기억영역으로서도 이용된다. 입/출력 인터페이스(205)는, 각 장치, 및 각 서버 군에 접속되어 있는 디스플레이(도면에 나타내지 않는다)에 데이터를 송신한다. 추가로, 입/출력 인터페이스(205)는, 포인팅 디바이스(도면에 나타내지 않는다)로부터 데이터를 수신한다. 네트워크 인터페이스 카드(NIC)(206)에 의해, 정보처리장치(102)와 화상형성장치(101)를 네트워크(103)를 통해 통신되게 한다. 상기 유닛들은, 버스(207)를 통해 데이터를 송수신할 수 있다.
화상형성장치(101)는, 도 2의 구성을 갖고, 인쇄 유닛(도면에 나타내지 않는다), 및/또는 스캐너 유닛(도면에 나타내지 않는다)을 더 갖는다. 화상형성장치(101)가 MFP일 경우에, 화상형성장치(101)는 인쇄 유닛 및/또는 스캐너 유닛의 이외에, 기타 유닛을 더 구비한다. 한편, 화상형성장치(101)가 SFP일 경우에, 화상형성장치(101)는 스캐너 유닛을 구비하지 않고, 인쇄 유닛만을 구비한다. 인쇄 유닛은, 버스(207)를 통해 각 유닛에/으로부터 데이터를 송수신할 수 있다. 또한, 인쇄 유닛은, 래스터(raster) 화상 데이터를 비롯한 각종 화상 데이터를 기록 매체에 인쇄하거나, 또는 그 화상 데이터를 외부기기에 송신할 수 있다. 스캐너 유닛은, 원고대 위에 놓인 원고를 판독하고, 화상 데이터를 생성한다.
도 3a는 화상형성장치(101)의 소프트웨어 구성을 도시한 도면이다. 여기서 나타낸 각 구성부를 실현하는 프로그램은 ROM(204)에 기억되어 있다. 그 프로그램들은 RAM(203)에 로드된다. CPU(202)는, 그 프로그램들을 실행함으로써, 각 구성부가 실현된다. 퍼스널 컴퓨터(PC) 어플리케이션(302)은 어플리케이션을 인스톨한다. 정보처리장치(102)는, PC어플리케이션(302)을 구비한다. PC어플리케이션(302)은, NIC(206)를 통하여, 어플리케이션 프로그래밍 인터페이스(API)(304)를 이용해서 인스톨 처리를 인스톨러(305)에 의뢰한다. 어플리케이션 관리 어플리케이션(303)은, 유저에 대하여, 그 어플리케이션을 지시하기 위한 화면을 표시하고, 인스톨러(305)에 대하여 그 어플리케이션의 인스톨 지시를 행한다. 정보처리장치(102)는, NIC(206)를 통하여, 상기 어플리케이션 관리 어플리케이션(303)에 액세스하는 것이 가능하다. 어플리케이션 관리 어플리케이션(303)은, 인스톨러(305)를 통하여 OSGi프레임워크(306)에 인스톨 처리를 의뢰한다. 인스톨러(305)의 상세에 관해서는 후술한다.
OSGi프레임워크(306)는, 인스톨러(305)로부터의 인스톨 의뢰를 기초로, 지정된 어플리케이션을 인스톨하고, 추가로 그 어플리케이션을 시작 또는 정지시킨다. 본 예시적 실시예에 따른 OSGi프레임워크(306)는, OSGi Alliance에서 규정된 표준 프레임워크의 사양에 준거하고 있다. 본 예시적 실시예에서는, OSGi프레임워크(306)의 구성을, OSGi Alliance에서 규정된 표준사양을 일탈하지 않고 실현하여서 달성한다.
가상 머신(307)은 어플리케이션을 실행하기 위한 실행 환경이며, 예를 들면 Java(등록상표)의 가상 머신에 의해 실현되는 것이다. 가상 머신(307)은, 제1 실행 환경인 오퍼레이팅 시스템(OS)(308) 상에서 실현된 실행 환경이다. 또한, 가상 머신(307)은, Java에 근거하여 기술된 어플리케이션을 실행하기 위한 제2 실행 환경이다. 이러한 환경을 화상형성장치(101)에 구비시킨다. 이 때문에, 화상형성장치(101)가 생산된 후에도, 화상형성장치(101)의 인쇄 유닛 및/또는 스캐너 유닛을 제어하기 위한 어플리케이션을 인스톨 및 실행시키는 것이 가능하게 된다. OS(308)는, 화상형성장치(101) 전체를 제어하는 실행 환경이다. OS(308)는, 복사기의 각종 기능을 실시간으로 제어가능한 실시간 OS의 각 모듈, 또는, 임계적으로 복사기의 옵션 장치, 및 확장 카드를 포함한 각 기능을 제어하는 것이 가능한 라이브러리 군이다. 또한, 상기 OS(308)는, 그 상위에서 동작하는 어플리케이션에 대하여, 인터페이스 코맨드를 제공하는 모듈 군에 의해 실현되는 것이다.
인스톨러(305)에 대해서 도 3b를 참조하여 설명한다. 도 3b는, 인스톨러(305)의 구성도다. 모델 판정부(310)는, 화상형성장치(101)가 MFP인지 SFP인지를 판정한다. 화상형성장치(101)에는, 모델 정보가 제공된다. 화상형성장치(101)가 MFP인지 SFP인지를 기초로, 서로 다른 모델 정보가 제공된다. 모델 판정부(310)는, 그 모델 정보를 기초로 판정 처리를 행한다. 인스톨 지시부(311)는, OSGi프레임워크(306)에 대하여, 어플리케이션의 인스톨 의뢰를 행한다.
덮어쓰기부(312)는, 후술하는 규정 매니페스트의 일부에, 다른 매니페스트의 선언 값을 덮어쓰는 처리를 행한다. 해동부(313)는, 어플리케이션 관리 어플리케이션(303), 또는 PC어플리케이션(302)으로부터 인스톨 지시된 어플리케이션을 해동한다. 제한 판정부(314)는, 매니페스트 파일을 덮어쓸 때의 제한 사항을 판정한다. 재압축부(315)는, 실행 파일, 및 덮어쓰기부(312)에 의해 다른 매니페스트의 선언 값이 덮어써진 규정 매니페스트를 포함하는 파일의 파일 형식을 재압축한다.
어플리케이션의 작성을 설명한다. 도 4는 본 예시적 실시예에 따른 상기 어플리케이션의 매니페스트 파일의 디렉토리 구성을 나타낸다. 어플리케이션은, 이 매니페스트 파일 및 실행 파일을 포함하는 파일 형식을 압축하여서 얻어진다. 매니페스트는, 매니페스트 파일과 동의어다.
jar코맨드로 jar파일을 작성할 경우, META-INF폴더(401)에 MANIFEST.MF파일(402)이 자동적으로 생성된다. 자동적으로 생성된 MANIFEST.MF파일(402)과 아울러, 본 예시적 실시예에서는, 매니페스트 파일의 선언 값을 변경하기 위한 모델에 대해 매니페스트 항목을 기재한다. 이 때문에, MANIFEST_EX.MF 파일(403)을 제공한다. MEATA-INF폴더(401)에 상기 파일을 포함하는 jar파일 형식의 어플리케이션을 작성한다.
자동적으로 생성된 MANIFEST.MF 파일(402)을 규정 매니페스트라고 부르고, 규정 매니페스트와는 별도로 제공된 MANIFEST_EX.MF 파일(403)을 다른 매니페스트라고 부른다. OSGi의 표준에 준거하여, OSGi프레임워크(306)는 규정 매니페스트인 MANIFEST.MF 파일(402)에 기재되어 있는 선언 값만을 판독한다. 그 때문에, 본 예시적 실시예에 따른 화상형성장치(101)는, 해동부(313), 덮어쓰기부(312) 및 재압축부(315)를 구비하고 있다. 한번 어플리케이션을 해동하고, 규정 매니페스트의 선언 값을 재기록하고, 압축한다. 이렇게 하여, OSGi표준을 일탈하지 않고, 화상형성장치(101)의 모델마다 최적의 매니페스트가 사용된다.
어플리케이션의 인스톨 처리를 설명한다. 유저는, 상기의 어플리케이션을, PC어플리케이션(302) 또는, 어플리케이션 관리 어플리케이션(303)이 제공한 유저 인터페이스(UI) 화면으로부터 지정하고, 그 어플리케이션을 인스톨한다. 인스톨러(305)는, 입력된 어플리케이션의 인스톨 처리를 상기 OSGi프레임워크(306)에 의뢰한다.
도 5는, 인스톨러(305)의 처리, 즉, 인스톨 처리의 지시를 받고나서, OSGi프레임워크(306)에 인스톨 처리를 의뢰할 때까지의 처리의 흐름도다. 단계S501에서, 처리를 시작한다. 단계S502에서, 해동부(313)는, jar파일 형식의 어플리케이션을 해동한다.
단계S503에서, 모델 판정부(310)는, 화상형성장치(101)가 매니페스트 파일의 선언 값을 변경하기 위한 모델인가 아닌가를, 모델 정보를 기초로 판단한다. 모델 정보가 매니페스트 파일의 선언 값을 변경하기 위한 모델을 가리키지 않으면(단계S503에서 NO), 단계S507에 있어서, 인스톨 지시부(311)는, OSGi프레임워크(306)에 인스톨 처리를 의뢰한다. 그 후, 단계S508에서, 그 처리를 종료한다. 이 경우, 화상형성장치(101)는 MFP이며,MANIFEST.MF파일(402)도 MFP를 위해 준비된 매니페스트다. 이 때문에, 덮어쓰기 처리가 실행되지 않는다.
모델 정보가 매니페스트 파일의 선언 값을 변경하기 위한 모델을 가리키면(단계S503에서 YES), 덮어쓰기부(312)는, 단계S504에서 어플리케이션에서 MANIFEST_EX.MF파일(403)의 선언 값을, MANIFEST.MF파일(402)의 일부에 덮어 쓴다. 덮어 쓰기 로직은, 도 6을 참조하여 설명한다. 단계S505에서, 덮어쓰기부(312)는, 불필요한 MANIFEST_EX.MF 파일(403)을 삭제한다.
단계S506에서, 재압축부(315)는, 실행 파일, 및 규정 매니페스트로 구성된 파일의 형식을, jar파일 형식으로 재압축하고, 그 어플리케이션을 저장한다. 단계S507에서, 인스톨 지시부(311)는, 재압축부(315)에 의해 재압축된 어플리케이션의 인스톨 동작을 OSGi프레임워크(306)에 의뢰한다. 단계S508에서는, 상기 처리를 종료한다.
이상의 처리에 의해, OSGi프레임워크(306)는, 모델 정보에 근거하여, 규정 매니페스트만으로 상기 어플리케이션을 인스톨하는 처리, 또는 규정 매니페스트와 다른 매니페스트의 양쪽을 기초로 상기 어플리케이션을 인스톨하는 처리 중 어느 한쪽의 처리로 상기 어플리케이션을 인스톨한다. 인스톨하기 위한 어플리케이션에 관련한 매니페스트를 사용해서 상기 어플리케이션이 인스톨된다.
인스톨러(305)는, 도 3b의 구성을 갖고, 도 5의 처리를 실행시킨다. 이렇게 하여, 복수의 다른 화상형성장치에 대하여 공통의 어플리케이션을 작성한다. 그리고, OSGi프레임워크(306)를 수정하지 않고 OSGi의 사양을 따른 어플리케이션이, 인스톨된다.
도 6은, 단계S504에서의 덮어쓰기 과정의 흐름도다. 단계S601에서는, 처리를 시작한다. 단계S602에서, 덮어쓰기부(312)는, MANIFEST_EX.MF 파일(403)에 기재되어 있는 1행째의 속성, 즉 선언 값을 참조한다. 단계S603에서는, 덮어쓰기부(312)는, 현재 참조하고 있는 속성이, 후술하는 덮어쓰기 지정가능한 속성인가 아닌가를 판정한다. 그 속성이 덮어쓰기 지정가능한 경우(단계S603에서 YES), 단계S604에서는, 참조하고 있는 속성과 일치하는 MANIFEST.MF파일(402)의 속성값을, MANIFEST_EX.MF파일(403)의 속성값으로 덮어 쓴다. 단계S605에서는, MANIFET_EX.MF 파일(403)의 다음 행의 속성의 확인동작으로 처리를 진행시킨다. 그 속성이 덮어쓰기 지정가능하지 않다고 판정되었을 경우(단계S603에서 NO), 단계S605에서는, MANIFET_EX.MF파일의 다음 행의 속성으로 처리를 진행한다. 단계S606에서는, 속성이 존재하는 것인가 아닌가를 판정한다. 속성이 존재하지 않으면(단계S606에서 N0), 단계S607에서는 그 처리를 종료한다. 속성이 존재하고 있으면(단계S606에서 YES), 단계S603으로 처리가 되돌아간다.
도 7은, MANIFEST.MF파일(402)의 선언 값(701), 번들(bundle)의 벤더 이름(702), 번들의 버전(703), 번들의 이름(704), 어플리케이션의 최대 메모리 사용량(705), 최대 쓰레드 사용량(706) 및 최대 디스크 스페이스(707)를 나타낸다. 상기 MANIFEST.MF파일(402)은, MFP용이다.
도 8의 801은, MANIFEST_EX.MF파일(403)로 도시된 MANIFEST_EX.MF파일을 나타낸다. 802는 "MaximumMemoryUsage"를 기재하고, 803은 "MaximumFilespaceUsage"를 기재하고 있다. 그 기재는, 매니페스트 파일의 선언 값을 변경하기 위한 모델에서 이것들 2개의 항목을 변경하고 싶은 경우에 대한 것이다. "MaximumMemoryUsage"(802)와 "MaximumFilespaceUsage"(803)은, 어플리케이션을 실행할 때에 이용된 메모리 용량 및 HDD용량의 선언한 값을 가리킨다. 어플리케이션은, 상기 선언 값들을 참조하여서 실행된다. MANIFEST_EX.MF파일은, MFP용의 매니페스트 파일의 일부의 선언 값을 덮어 쓸 때에 이용된다. MFP용의 매니페스트 파일의 리소스의 사용량은, SFP용의 매니페스트 파일보다 크게 설정되어 있다. 이것은, MFP가 SFP와 비교해서 보유하고 있는 리소스량이 많기 때문이다. MFP에서는, 어플리케이션 실행시에 이용된 리소스량이 크게 확보되어 있기 때문에, SFP에서 실행할 때와 비교하여, 보다 고속으로 어플리케이션을 처리하는 것이 가능하게 된다.
도 9의 901에서는, 어플리케이션의 인스톨처가 매니페스트 파일의 선언 값을 변경하기 위한 모델이었을 경우에 단계S504에서는 규정 매니페스트인 MANIFEST.MF파일을 작성한다. 속성 802와 같은 속성 705를 덮어쓴다. 또한, 속성 803과 같은 속성 707을 덮어쓴다. 항목 902, 903, 904, 906은 701의 값과 같은 값을 갖는다. 확실히, 905, 907의 항목이 801의 MANIFEST_EX.MF의 값을 갖는다.
도 5에 대해서 보충한다. 본 예시적 실시예에서는 나타내지 않았지만, 단계S502와 단계S503의 사이에 다음의 처리를 행해도 된다. 다시 말해, 종래의 어플리케이션을 판독했을 때 처리를 행한다. 종래의 어플리케이션은, 규정 매니페스트만을 포함한다. 이 경우, 덮어쓰기 처리를 실행할 수 없다. 단계S502의 뒤에, 해동한 어플리케이션이 규정 매니페스트와는 다른 매니페스트를 포함하고 있는 것인가 아닌가를 판정한다. 해동한 어플리케이션이 규정 매니페스트와는 다른 매니페스트를 포함하고 있지 않을 때, 단계S507의 처리에 진행되고, OSGi프레임워크(306)는 상기 어플리케이션을 인스톨한다. 이 처리에 의해, 본 예시적 실시예에 따라 새로운 어플리케이션의 이외에, 이미 시장에 공개된 종래의 어플리케이션에 대응한 화상형성장치(101)를 제공하는 것이 가능하다.
화상형성장치(101)의 모델 정보에 근거하여, OSGi프레임워크(306)에서 규정된 제1 매니페스트만을 이용해서 상기 어플리케이션을 인스톨할지, 또는 규정되지 않고 있는 제2 매니페스트를 함께 이용해서 상기 어플리케이션을 인스톨할지를 바꾸는 인스톨러(305)에 대해서 설명한다. 인스톨러(305)는, 프레임워크(306)의 사양을, OSGi의 표준으로부터 일탈하지 않고 작성한다. 또한, 화상형성장치(101)의 모델마다 어플리케이션을 반드시 준비할 필요가 없어진다. 이 때문에, 어플리케이션 제공자는, 유저가 소유한 화상형성장치(101)의 모델에 관계되지 않고, 소정의 어플리케이션만 제공하여도 된다.
제한 사항을 설명한다. 최후에, 단계S603의 판정에 사용된 제한 사항에 관하여 설명한다. PC어플리케이션(302) 및 어플리케이션 관리 어플리케이션(303)은, 어플리케이션의 인스톨 지시시에, MANIFEST.MF파일의 속성의 일부를 참조해서, 그 속성값을 정보처리장치(102)의 화면 위에 표시한다. 표시 속성 및 속성값은, PC어플리케이션(302)과 어플리케이션 관리 어플리케이션(303)간에 다르다. 표시 속성의 속성값을 MANIFEST_EX.MF파일에 기재해서 그 변경을 허용하면, 어플리케이션측에서 MANIFEST_EX.MF파일을 참조해서 그 MANIFEST_EX.MF파일을 수정해서 그 매니페스트 파일을 표시해야 한다. 이러한 영향을 피하기 위해서, MANIFEST_EX.MF파일(801)에 기재가능한 속성을 한정한다. 기재 가능한 속성이외의 속성을 기재했을 경우, 덮어 써지지 않고 그 속성이 무시되는 것으로 한다.
덮어쓰기가 가능한 매니페스트 속성은, MaximumMemoryUsage, MaximumFileSpaceUsage를 포함한다. 또한, 덮어쓰기가 불가능한 매니페스트 속성은, 번들 벤더 및 번들 이름을 포함한다.
상기 예시적 실시예의 변형예에 따른 설명을 한다. 상기의 예시적 실시예에서는, MANIFEST_EX.MF파일의 내용을, MANIFEST.MF파일에 덮어쓰는 방법에 대해서 개시했다. 또는, 본 발명은, MANIFEST.MF파일을 삭제하고, MANIFEST_EX.MF의 파일명을 MANIFEST.MF로 재기록하여서, 달성될 수 있다. 이 경우, MANIFEST_EX.MF파일에는, 도 9에 나타나 있는 바와 같이 시작시간부터 인스톨 처리에 필요한 정보를 모두 기재해서 놓아야 한다. 예시적 실시예에 의하면, 개발자가 MANIFEST_EX.MF 파일을 작성할 때에, 변경만 기재하면 좋다. 그러므로, 상기 변형예에 따른 것보다 개발자의 개발 시간양은 작다.
상기의 예시적 실시예에서는, MFP 또는 SFP 등의 화상형성장치(101)의 기종을 기초로 구별을 행하고, 모델 정보를 설정했다. 다시 말해, MFP를 나타내는 플래그 또는 SPF를 나타내는 플래그가 화상형성장치(101)에 저장된다. 그렇지만, 본 발명은 이것에 한정되지 않는다. 예를 들면, 메모리 용량, 중앙처리유닛(CPU)의 용량, 또는 탑재하고 있는 옵션 등의 정보를 기초로 구별해도 좋다. 이러한 구별 결과에 의거하여, 모델 정보를 설정해도 좋다. 이 경우, 특정 임계치이상의 메모리 용량을 갖는 화상형성장치에 플래그 "0"을 할당하면 좋고, 그 특정 임계치미만의 메모리 용량을 갖는 화상형성장치에 플래그 "1"을 할당하면 좋다.
또한 디바이스 식별번호(ID)와 같은 기종, 또는 고유의 화상형성장치의 ID를 기초로 매니페스트의 취급방법을 구별하고, 그 구별 결과에 따라 모델 정보를 설정해도 좋다. 더욱이, 리소스 또는 옵션의 증설에 따라, 모델 정보를 도중에 바꾸어도 좋다. 이에 따라, 현재 사용된 화상형성장치의 상황에 따라 적절하게 어플리케이션을 인스톨하는 것이 가능하다.
상기의 예시적 실시예에서는 모델 판정부(310)를 설치했다. 이와는 달리, 모델 판정부(310)를 설치하지 않고, 다른 매니페스트가 필요한 것인가 아닌가를 미리 화상형성장치(101)에 설정하고, 다른 매니페스트가 필요한 것인가 아닌가를 판정하는 판정부를 설치해도 된다.
(기타의 실시예)
또한, 본 발명의 국면들은, 메모리 디바이스에 기록된 프로그램을 판독 및 실행하여 상기 실시예의 기능들을 수행하는 시스템 또는 장치(또는 CPU 또는 MPU 등의 디바이스들)의 컴퓨터에 의해서, 또한, 시스템 또는 장치의 컴퓨터에 의해 수행된 단계들, 예를 들면, 메모리 디바이스에 기록된 프로그램을 판독 및 실행하여 상기 실시예들의 기능들을 수행하는 방법에 의해, 실현될 수도 있다. 이를 위해, 상기 프로그램은, 예를 들면, 네트워크를 통해 또는, 여러 가지 형태의 메모리 디바이스의 기록매체(예를 들면, 컴퓨터 판독 가능한 매체)로부터, 상기 컴퓨터에 제공된다. 이러한 경우에, 프로그램을 격납한 시스템 또는 장치, 및 기록매체는, 본 발명의 범위 내에 있는 것으로서 포함된다.
본 발명을 예시적 실시예들을 참조하여 기재하였지만, 본 발명은 상기 개시된 예시적 실시예들에 한정되지 않는다는 것을 알 것이다. 아래의 청구항의 범위는, 모든 변형, 동등한 구조 및 기능을 포함하도록 아주 넓게 해석해야 한다.
Claims (8)
- 매니페스트의 정보를 기초로 어플리케이션을 인스톨하고, 본 프레임워크를 사용할 때 이용하는 것이 정해진 규정 매니페스트를 사용하는 프레임워크를 갖는 장치로서,
상기 어플리케이션을 상기 장치에 인스톨할 때, 상기 규정 매니페스트의 이외에 다른 매니페스트의 정보도 상기 장치의 모델 정보를 기초로 필요한 것인가 아닌가를 판단하는 판단부; 및
상기 판단부에 의해 상기 다른 매니페스트의 정보가 필요하지 않다고 판단되었을 경우에는, 상기 규정 매니페스트의 정보를 상기 다른 매니페스트의 정보를 송신하지 않고 상기 프레임워크에 송신하고, 상기 판단부에 의해 상기 다른 매니페스트의 정보가 필요하다고 판단되었을 경우에는, 상기 규정 매니페스트의 정보의 이외에 상기 다른 매니페스트 정보를 상기 프레임워크에 송신하는 송신부를 구비하고,
상기 프레임워크는, 상기 송신부가 상기 규정 매니페스트의 정보와 상기 다른 매니페스트 정보를 송신할 때, 양쪽의 상기 정보를 기초로 상기 어플리케이션을 인스톨하는, 장치.
- 제 1 항에 있어서,
상기 규정 매니페스트의 일부에, 상기 다른 매니페스트의 정보를 덮어쓰는 덮어쓰기부를 더 구비하고,
상기 송신부는, 상기 덮어쓰기부가 상기 규정 매니페스트의 일부에 상기 다른 매니페스트를 덮어쓰는 상기 규정 매니페스트를 송신하여서, 상기 규정 매니페스트의 정보, 및 상기 다른 매니페스트의 정보를 송신하는, 장치.
- 제 2 항에 있어서,
상기 규정 매니페스트 및 상기 다른 매니페스트는, 상기 어플리케이션에 할당된 메모리 용량을 선언한 선언 값을 기재하고,
상기 덮어쓰기부는, 상기 어플리케이션에 할당된 상기 메모리 용량을 선언한 상기 선언 값을 덮어쓰는, 장치.
- 제 3 항에 있어서,
상기 어플리케이션은 실행 파일 및 매니페스트 파일을 포함하는 압축 형식으로 얻어진 형식을 갖고, 상기 장치는,
상기 어플리케이션을 해동하는 해동(decompression)부; 및
상기 해동부의 해동 후에, 상기 실행 파일, 및 상기 덮어쓰기부에 의해 상기 규정 매니페스트의 일부에 다른 매니페스트의 정보가 덮어써진 규정 매니페스트를 포함하는 상기 형식을 재압축하는 압축부를 더 구비한, 장치.
- 제 4 항에 있어서,
상기 어플리케이션은, 인쇄 유닛 또는 스캐너 유닛을 제어하고,
상기 장치는 화상형성장치인, 장치.
- 어플리케이션의 라이프 사이클을 관리하고, 관리 대상의 어플리케이션을 상기 어플리케이션에 관련된 규정 이름을 갖는 매니페스트의 선언 값에 의거하여 관리하는 프레임워크를 구비한 장치로서,
소정의 어플리케이션을 인스톨해 상기 프레임워크가 그 어플리케이션을 관리 대상으로서 관리할 때, 상기 규정 이름을 갖는 상기 매니페스트의 이외에 다른 매니페스트를 이용할 필요가 있는 것인가 아닌가를 상기 장치의 장치 정보를 기초로 판정하는 판정부; 및
상기 판정부가 상기 다른 매니페스트를 이용할 필요가 없다고 판정한 경우에는, 상기 다른 매니페스트의 선언 값을 이용하지 않고 상기 규정 이름을 갖는 상기 매니페스트의 선언 값을 상기 프레임워크에 송신하도록 구성되고, 상기 판정부가 상기 다른 매니페스트를 이용할 필요가 있다고 판정한 경우에는, 상기 다른 매니페스트의 선언 값을 상기 규정 이름을 갖는 매니페스트의 선언 값에 이용하고 나서, 상기 규정 이름을 갖는 상기 매니페스트의 선언 값을 상기 프레임워크에 송신하는 송신부를 구비한, 장치.
- 어플리케이션을 실행하는 프린터로서,
상기 어플리케이션의 라이프 사이클을 관리하고, 관리 대상의 상기 어플리케이션을 상기 어플리케이션에 관련된 규정의 파일명을 갖는 매니페스트의 선언 값에 의거하여 관리하는 프레임워크를 구비하고,
상기 프린터에 대하여 상기 규정의 파일명을 갖는 매니페스트를 재기록하는 것을 나타내는 플래그가 할당된 경우, 상기 규정의 파일명을 바꾸지 않고 상기 매니페스트의 선언 값을 재기록하고, 상기 재기록 후의 상기 규정의 파일명을 갖는 매니페스트를 상기 프레임워크에 송신하고, 인스톨을 의뢰하는, 프린터.
- 제 7 항에 있어서,
상기 프린터는 화상처리 유닛으로서 프린트 유닛만을 구비하는 단일 기능 프린터이고,
상기 규정의 파일명을 갖는 매니페스트를 재기록하는 것을 나타내는 플래그는, 상기 단일 기능 프린터에 할당되는, 프린터.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011013254A JP2012155478A (ja) | 2011-01-25 | 2011-01-25 | 画像形成装置、装置、画像形成装置の制御方法、およびプログラム |
JPJP-P-2011-013254 | 2011-01-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120086254A true KR20120086254A (ko) | 2012-08-02 |
KR101461444B1 KR101461444B1 (ko) | 2014-11-13 |
Family
ID=45607581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120005512A KR101461444B1 (ko) | 2011-01-25 | 2012-01-18 | 장치 및 프린터 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8832678B2 (ko) |
EP (1) | EP2479667A1 (ko) |
JP (1) | JP2012155478A (ko) |
KR (1) | KR101461444B1 (ko) |
CN (1) | CN102707907B (ko) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101428151B1 (ko) | 2011-12-27 | 2014-08-08 | 주식회사 포스코 | 고망간 열연 아연도금강판 및 그 제조방법 |
US9176751B2 (en) * | 2012-04-04 | 2015-11-03 | Xerox Corporation | Tools and methods for customizing multi-function devices |
GB2542127B (en) * | 2015-09-08 | 2020-06-03 | Arm Ip Ltd | Processing digital content |
US11539850B2 (en) | 2016-01-06 | 2022-12-27 | Hewlett-Packard Development Company, L.P. | Printer including copy and scan functions |
US10365909B2 (en) * | 2016-04-21 | 2019-07-30 | Data Accelerator Ltd. | Method and system for deploying virtualized applications |
US10956136B2 (en) * | 2018-10-16 | 2021-03-23 | Ebay, Inc. | User interface resource file optimization |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000305756A (ja) | 1999-04-20 | 2000-11-02 | Canon Inc | データ処理装置およびデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体 |
JP2001344082A (ja) * | 2000-05-31 | 2001-12-14 | Seiko Instruments Inc | ファイル管理システムおよび印刷装置 |
US7089553B1 (en) * | 2000-10-12 | 2006-08-08 | International Business Machines Corporation | Method, system, computer program product, and article of manufacture for downloading a remote computer program according to a stored configuration |
US20030140174A1 (en) * | 2002-01-08 | 2003-07-24 | Tsutomu Ohishi | Method for generating application for information processing apparatus and image forming apparatus |
US7103874B2 (en) * | 2003-10-23 | 2006-09-05 | Microsoft Corporation | Model-based management of computer systems and distributed applications |
US7765540B2 (en) * | 2003-10-23 | 2010-07-27 | Microsoft Corporation | Use of attribution to describe management information |
US20050091259A1 (en) * | 2003-10-24 | 2005-04-28 | Microsoft Corporation Redmond Wa. | Framework to build, deploy, service, and manage customizable and configurable re-usable applications |
US20050289536A1 (en) * | 2004-06-23 | 2005-12-29 | International Business Machines Coporation | Automated deployment of an application |
JP2009098789A (ja) * | 2007-10-15 | 2009-05-07 | Canon Inc | 情報処理装置 |
-
2011
- 2011-01-25 JP JP2011013254A patent/JP2012155478A/ja active Pending
-
2012
- 2012-01-17 EP EP12151411A patent/EP2479667A1/en not_active Withdrawn
- 2012-01-18 KR KR1020120005512A patent/KR101461444B1/ko active IP Right Grant
- 2012-01-19 CN CN201210020322.3A patent/CN102707907B/zh active Active
- 2012-01-23 US US13/356,289 patent/US8832678B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US8832678B2 (en) | 2014-09-09 |
CN102707907B (zh) | 2015-03-25 |
US20120192174A1 (en) | 2012-07-26 |
KR101461444B1 (ko) | 2014-11-13 |
EP2479667A1 (en) | 2012-07-25 |
JP2012155478A (ja) | 2012-08-16 |
CN102707907A (zh) | 2012-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20120086254A (ko) | 장치 및 프린터 | |
US9854131B2 (en) | Image forming apparatus with personal setting synchronization and method for controlling same | |
US7895373B2 (en) | Electronic device for data access management | |
US9086938B2 (en) | Information processing apparatus, control method thereof, and storage medium | |
US9696978B2 (en) | Information processing apparatus, application management method, and non-transitory computer-readable medium | |
US20160360067A1 (en) | Image processing apparatus, non-transitory computer readable medium, and method for charging for processing | |
JP4474440B2 (ja) | 多機能周辺装置(mfp)によるサービスの提供 | |
US9110618B2 (en) | Printing apparatus and log recording method | |
JP5338571B2 (ja) | 画像処理システム、管理装置、画像処理装置、管理方法、プログラムおよび記録媒体 | |
US20090193181A1 (en) | Control Unit, Image Processing Apparatus and Computer-Readable Storage Medium | |
CN109660688B (zh) | 信息处理装置及其控制方法 | |
JP2007206819A (ja) | 情報処理装置、情報処理装置の制御方法および制御プログラム | |
JP6570364B2 (ja) | 画像形成装置及びその制御方法 | |
JP2014013427A (ja) | 情報処理装置、プログラム及びシステム | |
CN109388356B (zh) | 图像形成装置、其控制方法和计算机可读介质 | |
US9692917B2 (en) | Operating information storing system, operating information storing method, and non-transitory computer readable recording medium storing an operating information storing method for storing information from volatile memory to non-volatile memory | |
JP4526508B2 (ja) | 電子機器,電子機器システムおよび機能補完方法と機能補完プログラム | |
KR20190110396A (ko) | 워크폼 공유 | |
JP5445051B2 (ja) | 情報処理装置、apiプログラム、及びログ環境提供方法 | |
JP2008257339A (ja) | 管理装置、管理方法、記憶媒体、プログラム | |
JP2009020594A (ja) | ジョブ管理装置、ジョブ管理方法、ジョブ管理プログラムならびに記憶媒体 | |
JP4516404B2 (ja) | データベース構築方法、データベース構築システムおよびデータベース構築プログラム | |
JP5733353B2 (ja) | 電子機器,ソフトウェア更新方法,およびプログラム | |
JP2021189487A (ja) | 管理装置およびその制御方法 | |
JP2007041939A (ja) | 印刷システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20171025 Year of fee payment: 4 |