KR20050014084A - 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어재포장 시스템 및 방법 - Google Patents

응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어재포장 시스템 및 방법

Info

Publication number
KR20050014084A
KR20050014084A KR1020030052542A KR20030052542A KR20050014084A KR 20050014084 A KR20050014084 A KR 20050014084A KR 1020030052542 A KR1020030052542 A KR 1020030052542A KR 20030052542 A KR20030052542 A KR 20030052542A KR 20050014084 A KR20050014084 A KR 20050014084A
Authority
KR
South Korea
Prior art keywords
application software
file
repackaging
image
unit
Prior art date
Application number
KR1020030052542A
Other languages
English (en)
Other versions
KR100506069B1 (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 소프트온넷(주)
Priority to KR10-2003-0052542A priority Critical patent/KR100506069B1/ko
Priority to JP2004185187A priority patent/JP2005050314A/ja
Publication of KR20050014084A publication Critical patent/KR20050014084A/ko
Application granted granted Critical
Publication of KR100506069B1 publication Critical patent/KR100506069B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/116Details of conversion of file system types or formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은, 일반적인 응용 소프트웨어를 가상 환경에서 실행할 수 있는 응용 소프트웨어 스트리밍 서비스 제공 시스템에 있어서, 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장(repackaging)에 관한 것으로, 메타이미지 및 최소 설치 사양 형성에 필요한 응용 소프트웨어를 입력하고, 상기 응용 소프트웨어에 기초하여 메타이미지 및 응용 소프트웨어의 최소 설치 사양을 형성하고, 상기 최소 설치 사양을 참조하여 상기 메타이미지에 규칙을 적용하고 지식 데이터를 생성하고, 상기 생성된 지식 데이터에 의해 지식 DB의 갱신을 하고, 상기 메타이미지와 상기 지식 DB로부터의 지식 데이터에 기초하여 재포장 응용 소프트웨어 파일 생성을 하고, 이 생성된 재포장 응용 소프트웨어 파일을 스트리밍 서버에 업로드(upload) 함으로써 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장을 한다.

Description

응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템 및 방법{A SYSTEM FOR REPACKAGING APPLICATION SOFTWARE FOR STREAMING OF APPLICATION SOFTWARE AND METHOD THEREOF}
본 발명은 응용 소프트웨어 스트리밍 서비스 제공 시스템 및 방법에 관한 것으로서, 보다 상세하게는 사용자 컴퓨터에 응용 소프트웨어를 설치하지 않고도 가상 실행환경에서 일반 응용 소프트웨어를 스트리밍할 수 있는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장(repackaging) 시스템 및 방법에 관한 것이다.
종래에는 CD 또는 디스켓 등과 같은 매체에 저장되어 있는 응용 소프트웨어를 사용자 컴퓨터에 복사하여 설치를 한 후에 응용 소프트웨어를 사용하도록 되어 있는 것이 일반적이다. 따라서, 미리 설치된 사용 빈도가 낮은 응용 소프트웨어는 RAM(Random Access Memory), 하드디스크 등의 사용자 컴퓨터의 자원의 낭비를 초래하였고, 응용 소프트웨가 설치되어 있는 사용자 컴퓨터에 의해서만 응용 소프트웨어가 사용될 수 있었으므로 응용 소프트웨어의 활용도가 제한되었다. 또한, 관리자가 사용자 컴퓨터에 응용 소프트웨어를 설치하고 이를 유지 관리하는데 많은 비용이 소요되었다.
관리자가 응용 소프트웨어를 설치하고 유지 관리하는데 소요되는 비용을 줄이기 위한 종래의 기술을 살펴보면 다음과 같다.
응용 소프트웨어를 제공하는 관리자 서버와 사용자 컴퓨터가 네트워크를 통해서 접속되어 있는 환경에서, 사용자 컴퓨터를 통한 응용 소프트웨어의 웹 구매(web shopping)와 관리자 서버에 의해 응용 소프트웨어가 배포되는 기술이 있다. 이는 응용 소프트웨어를 설치하고 유지 관리하는데 소요되는 비용을 절감하는데 그다지 큰 효과가 없다.
이에 비해 한층 발전된 기술로 네트워크를 통한 응용 소프트웨어 배포, 설치, 수거 등을 할 수 있는 것으로, 네트워크를 통한 응용 소프트웨어 설치에 관한 기술이 미국 특허 6,324,690(B1)에 공개되어 있다. 이는 관리자 서버에 의해 네트워크를 통해 지정된 시간에 사용자 컴퓨터에 응용 소프트웨어를 설치하고 수거할수 있도록 하는 것으로, 응용 소프트웨어를 재포장하여 응용 소프트웨어를 설치·수거하는 서비스 제공을 가능하게 하는 기술이다. 본 발명의 설명에서는 이를 종래의 기술로 예를 들어 설명한다.
도 1은 종래 네트워크 설치 방식에 따라 응용 소프트웨어를 재포장하여 사용자 컴퓨터에 응용 소프트웨어를 설치·수거하는 시스템의 개략적인 구성블록도이다. 종래 시스템은 이미지 생성부(145), 응용 소프트웨어 삭제부(142), 설치 패키지(package) 생성부(143), 설치 스케쥴러(installation scheduler)(144) 및 통신부(141)로 이루어진 소스 워크스테이션(source workstation)(140), 통신부(131) 및 설치 패키지 저장 관리부(132)로 이루어진 파일 서버(130), 통신부(111), 프로그램 TSR(Terminate and Stay Resident)(112), 프로그램 설치부(113) 및 프로그램 제거부(114)로 이루어진 사용자 컴퓨터(110)가 서로 네트워크(120)를 통해 접속되어 있다.
이미지 생성부(145)는 응용 소프트웨어 설치 전의 이미지와 응용 소프트웨어 설치 후의 이미지인 스냅샷(snapshot)을 생성하고, 설치 패키지 생성기(143)는 이미지 생성부(145)에서 생성된 스냅샷(snapshot)에 기초하여 응용 소프트웨어의 설치 패키지를 생성하고, 소스 워크스테이션(140)의 통신부(141) 및 파일 서버(130)의 통신부(131)를 통해 설치 패키지 저장 관리부(132)로 설치 패키지를 업로드(upload) 한다. 응용 소프트웨어 삭제부(142)는 설치 패키지 생성기(143)가 설치 패키지의 업로드를 완료하면 소스 워크스테이션(140)으로부터 설치 패키지의 생성에 사용된 응용 소프트웨어를 삭제한다.
파일 서버(130)의 설치 패키지 저장 관리부(132)에 관리되고 있는 설치 패키지는 소스 워크스테이션(140)의 설치 스케쥴러(144)에 지정되어 있는 시간에 네트워크(120)에 접속되어 있는 파일 서버(130)의 통신부(131) 및 사용자 컴퓨터 통신부(111)를 통해 프로그램 TSR(112)으로 전송된다.
프로그램 설치부(113)는 프로그램 TSR(112)로 전송된 설치 패키지의 내용인 응용 소프트웨어를 사용자 컴퓨터(110)에 설치하고, 프로그램 제거부(114)는 지정된 시간에 사용자 컴퓨터(110)에 설치되어 있는 응용 소프트웨어를 제거한다.
도 2는 종래 네트워크 설치 방식에 따라 응용 소프트웨어를 재포장하여 사용자 컴퓨터에 응용 소프트웨어를 설치·수거하는 방법이 수행되는 흐름도이다.
소스 워크스테이션(140)의 파일 및 운영체제 관련 정보의 제 1 스냅샷이 이미지 생성부(145)에 의해 생성된다(단계 S201). 제 1 스냅샷이 생성된 후 설치 패키지를 생성하기 위한 응용 소프트웨어가 소스 워크스테이션(140)에 설치된다(단계 S202). 응용 소프트웨어가 소스 워크스테이션(140)에 설치된 후 제 2 스냅샷이 이미지 생성부(145)에 의해 생성된다(단계 S203).
설치 패키지 생성기(143)는 응용 소프트웨어 설치 전의 스냅샷인 제 1 스냅샷과 응용 소프트웨어 설치 후의 스냅샷인 제 2 스냅샷을 비교하여 응용 소프트웨어의 설치 패키지를 생성한다(단계 S204).
설치 패키지 생성기(143)에 의해 생성된 응용 소프트웨어의 설치 패키지는 소스 워크스테이션(140)의 통신부(141) 및 파일 서버(130)의 통신부(131)를 통해 설치 패키지 저장 관리부(132)로 업로드 된다(단계 S205).
설치 패키지 생성기(143)에 의한 응용 소프트웨어의 설치 패키지가 파일 서버(130)의 설치 패키지 저장 관리부(132)에 업로드 된 후, 응용 소프트웨어 삭제부(142)는 소스 워크스테이션(140)으로부터 설치 패키지의 생성에 사용된 응용 소프트웨어를 삭제한다(단계 S206).
파일 서버(130)의 설치 패키지 저장 관리부(132)에 업로드 되어있는 설치 패키지는 소스 워크스테이션(140)의 설치 스케쥴러(144)에 지정되어 있는 시간을 참조하여 파일 서버(130)의 통신부(131) 및 사용자 컴퓨터 통신부(111)를 통해 프로그램 TSR(112)로 전송된다(단계 S207).
프로그램 설치부(113)는 사용자 컴퓨터(110)의 프로그램 TSR(112)으로 전송된 설치 패키지의 내용인 응용 소프트웨어를 사용자 컴퓨터(110)에 설치하고(단계 S208), 프로그램 제거부(114)는 지정된 시간에 사용자 컴퓨터(110)에 설치되어 있는 응용 소프트웨어를 제거한다(단계 S209).
상술한 바와 같이, 관리자 서버가 지정된 시간에 사용자 컴퓨터에 응용 소프트웨어를 설치하고 수거할 수 있도록 응용 소프트웨어를 재포장하는 기술에 의하면, 관리자 서버는 사용자 컴퓨터에 응용 소프트웨어를 자동적으로 배포, 설치, 수거하는 관리 프로그램을 구비한다. 이러한 관리 프로그램은 응용 소프트웨어를 재포장한 설치 패키지를 스케쥴링하여 사용자 컴퓨터에 배포 및 설치하고, 설치된 응용 소프트웨어를 사용자 컴퓨터로부터 수거할 수 있게 되어 응용 소프트웨어의 유지관리에 소요되는 비용이 절감되는 효과가 있다. 그러나, 이는 응용 소프트웨어가 모든 관리자 서버에 설치되어야 하는 관리자 중심의 작업이 요구되고, 사용자컴퓨터의 운영체제에 변경이 가해지기 때문에 사용자 컴퓨터의 운영체제의 안정성이 떨어지는 문제점이 있다. 또한, 응용 소프트웨어를 재포장한 설치 패키지가 네트워크를 통해서 정상적으로 사용자의 워크스테이션에 설치되더라도, 사용자 컴퓨터에 있어서의 실행 환경과 설치된 응용 소프트웨어의 실행 환경이 정합되지 않을 수 있기 때문에 정상적인 실행은 보장될 수 없다.
이보다 한층 더 발전된 기술로 응용 소프트웨어의 배포, 설치, 수거의 절차가 없이 응용 소프트웨어를 사용할 수 있도록 함으로써, 응용 소프트웨어의 배포, 설치, 수거에 소요되는 비용을 획기적으로 절감하고, 응용 소프트웨어를 스트리밍으로 사용하기 때문에 사용자 컴퓨터의 응용 소프트웨어 실행 환경에 구애받지 않고 응용 소프트웨어를 사용할 수 있어 응용 소프트웨어 활용도를 증가시킨 것으로, 분산 컴퓨팅 환경에서 임대 소프트웨어 프로그램을 수행하는 기술이 SoftonNet사 특허인 PCT/KR2000/00076에 공개되어 있다. 이는 관리자 서버에 의한 배포, 설치, 수거가 없이 사용자가 '클릭 앤 런(click and run)'으로 즉시 응용 소프트웨어를 사용할 수 있도록 한다. 따라서, 응용 소프트웨어의 관리비용을 절감할 수 있고, 가상 실행 환경에서 운영체제의 변경 없이 응용 소프트웨어를 실행할 수 있어서 운영체제의 안정성이 보장된다.
이는 사용자 컴퓨터가 네트워크를 통해 스트리밍 서버에 접속하고 인증을 거쳐 스트리밍 서버에 등록되어 있는 응용 소프트웨어에서 필요로 하는 부분을 요청한다. 사용자 컴퓨터는 스트리밍 서버로부터 응용 소프트웨어에서 필요로 하는 부분만을 전송 받아 응용 소프트웨어의 실행 환경을 구성하고 응용 소프트웨어를 실행한다. 그리고, 사용자 컴퓨터는 응용 소프트웨어를 실행하면서 스트리밍 서버에 응용 소프트웨어에서 더 필요로 하는 부분을 요청하여 전송 받으면서 응용 소프트웨어의 실행 환경을 구성하고 응용 소프트웨어를 실행한다.
그러나, 응용 소프트웨어의 스트리밍 서비스 제공 시스템에 있어서, 현재까지 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장에 관한 기술은 전혀 알려진 것이 없다. 다만, 응용 소프트웨어를 스트리밍 환경하에서 사용하기 위해서는 자바(Java)와 같이 분산 컴퓨팅(computing) 환경을 지원하는 소프트웨어를 사용하여 응용 소프트웨어를 재작성을 하거나, 처음부터 분산 컴퓨팅 환경을 고려하여 응용 소프트웨어를 작성하여야 한다.
따라서, 본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 사용자 컴퓨터에 응용 소프트웨어를 설치하지 않고 스트리밍 서버에 업로드 되어 있는 재포장 응용 소프트웨어 파일을 스트리밍으로 실행할 수 있는 응용 소프트웨어 재포장(repackaging) 시스템 및 방법을 제공하는 것이다.
본 발명의 또 다른 목적은 사용자 컴퓨터의 실제 운영체제 및 환경에 변경을 가하지 않으면서 가상 환경에서 응용 소프트웨어를 실행할 수 있는 응용 소프트웨어 재포장(repackaging) 시스템 및 방법을 제공하는 것이다.
상기와 같은 본 발명의 목적은 재포장될 응용 소프트웨어 파일을 수신하는 입력부, 상기 입력부로부터 입력된 응용 소프트웨어 파일에 기초하여 응용 소프트웨어에 요구되는 최소 설치 사양을 형성하고 메타이미지를 생성하는 메타이미지 및최소 설치 사양 형성부 및 상기 메타이미지에 기초하여 재포장 응용 소프트웨어 파일을 생성하여 스트리밍 서버로 업로드 하는 재포장 응용 소프트웨어 파일 생성 및 업로드 처리부를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템에 의해서 달성될 수 있다.
또한, 상기와 같은 본 발명의 목적은 응용 소프트웨어를 재포장하는 방법에 있어서, 메타이미지 및 최소 설치 사양 형성에 필요한 응용 소프트웨어를 입력받는 단계, 상기 입력된 응용 소프트웨어에 기초하여 응용 소프트웨어의 최소 설치 사양을 형성하는 단계, 상기 응용 소프트웨어의 설치전 스캔 이미지 및 설치후 스캔 이미지를 생성하는 단계, 상기 설치전 스캔 이미지 및 설치후 스캔 이미지를 비교하는 단계, 상기 비교 결과에 상응하는 메타 이미지를 생성하는 단계, 상기 생성된 메타이미지에 기초하여 재포장 응용 소프트웨어 파일을 생성하는 단계 및 상기 생성된 재포장 응용 소프트웨어 파일을 스트리밍 서버로 업로드 하는 단계를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법 에 의해서도 달성될 수 있다.
도 1은 종래 네트워크 설치 방식에 따라 응용 소프트웨어를 재포장하여 사용자 컴퓨터에 응용 소프트웨어를 설치·수거하는 시스템의 개략적인 구성블록도이다.
도 2는 종래 네트워크 설치 방식에 따라 응용 소프트웨어를 재포장하여 사용자 컴퓨터에 응용 소프트웨어를 설치·수거하는 방법이 수행되는 흐름도이다.
도 3은 본 발명에 따른 응용 소프트웨어의 스트리밍 서비스 시스템의 개략적인 구성블록도이다.
도 4는 도 3의 메타이미지 및 최소 설치 사양 형성부의 세부 구성블록도이다.
도 5는 도 3의 지식 데이터 생성 처리부의 세부 구성블록도이다.
도 6은 도 3의 지식 데이터 갱신부의 블록도이다.
도 7은 도 3의 재포장 응용 소프트웨어 파일 생성 및 업로드(upload) 처리부의 세부 구성블록도이다.
도 8은 본 발명에 따른 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어재포장 방법이 수행되는 과정을 도시한 흐름도이다.
도 9는 도 8의 메타이미지(meta-image) 및 최소 설치 사양 형성 단계의 세부 흐름도이다.
도 10은 도 8의 지식 데이터 생성 단계의 세부 흐름도이다.
도 11은 도 8의 지식 데이터 갱신 단계의 세부 흐름도이다.
도 12는 도 8의 재포장 응용 소프트웨어 파일 생성 및 업로드(upload) 단계의 세부 흐름도이다.
〈도면의 주요 부분에 대한 부호의 설명〉
310 : 사용자 컴퓨터
320 : 네트워크
330 : 스트리밍 서버
340 : 재포장 응용 소프트웨어 파일 생성 및 업로드 처리부
344 : 변환부
344-1 : 메타이미지(meta-image) 분석기
344-2 : 스크립트 파일(script file) 생성기
342 : 재포장 응용 소프트웨어 파일 업로드부(upload part)
343 : 재포장 응용 소프트웨어 파일 생성부
350 : 메타이미지 및 최소 설치 사양 형성부
351 : 초기 환경 생성부
352 : 이미지 생성부
353 : 이미지 비교부
360 : 지식 데이터 생성 처리부
361 : 규칙 적용부
361-1 : 공통 규칙 적용부
361-2 : 특정 규칙 적용부
362 : 시험부
363 : 지식 데이터 생성부
370 : 지식 DB(Data Base)
380 : 갱신 장치
381 : 지식 데이터 갱신 입력부
382 : 지식 데이터 갱신 서버
390 : 응용 소프트웨어 재포장 시스템
395 : 입력부
도 3은 본 발명에 따른 응용 소프트웨어의 스트리밍 서비스 시스템의 개략적인 구성블록도이다.
이하, 본 발명에 따른 실시예를 첨부 도면을 참조하여 구체적으로 설명한다.
응용 소프트웨어의 스트리밍 서비스 시스템은 응용 소프트웨어 재포장 시스템(390), 응용 소프트웨어 재포장 시스템(390)에 접속된 스트리밍 서버(330) 및 인터넷 등의 네트워크(320)를 통해 스트리밍 서버(330)에 접속된 사용자 컴퓨터(310)로 구성된다.
응용 소프트웨어 재포장 시스템(390)은 응용 소프트웨어를 스트리밍으로 사용할 수 있도록 하기 위한 재포장 응용 소프트웨어 파일을 생성하고, 이 재포장 응용 소프트웨어 파일을 스트리밍 서버(330)로 업로드 하기 위한 것으로, 입력부(395), 메타이미지 및 최소 설치 사양 형성부(350), 지식 데이터 생성 처리부(360), 갱신 장치(380), 지식 DB(Knowledge Data Base)(370) 재포장 응용 소프트웨어 파일 생성 및 업로드 처리부(340)로 구성되어 있다.
입력부(395)는 메타이미지 및 최소 설치 사양 형성에 필요한 응용 소프트웨어를 메타이미지 및 최소 설치 사양 형성부(350)로 입력한다.
메타이미지 및 최소 설치 사양 형성부(350)는 입력부(395)로부터 입력된 응용 소프트웨어에 기초하여 메타이미지 및 응용 소프트웨어의 최소 설치 사양을 형성하여 지식 데이터 생성 처리부(360)로 전송한다. 여기서, 응용 소프트웨어의 최소 설치 사양은 응용 소프트웨어가 구동될 수 있는 운영체제와 스트리밍 환경하에서 응용 소프트웨어가 구동되기 위한 응용 소프트웨어에 대한 최소 사양이다. 예를 들면, 윈도우 운영체제 상에서는 최소 설치 사양은 응용 소프트웨어가 구동될 수 있는 윈도우 및 인터넷 익스플로어만의 운영체제와 스트리밍 환경하에서 응용 소프트웨어가 구동되기 위한 응용 소프트웨어에 대한 최소 사양이다. 최소 설치 사양은 하나의 응용 소프트웨어만이 설치되어 구동되는 것을 고려한 것이므로 다른 응용 소프트웨어는 설치되어 있지 않은 상태에 대한 것이다. 따라서, 하나의 응용 소프트웨어 이외의 응용 소프트웨어가 설치되어 있는 상태에서 최소 설치 사양이 얻어지면, 재포장 응용 소프트웨어 파일 생성 및 업로드 처리부(340)에 의해 생성된 재포장 응용 소프트웨어 파일이 스트리밍 환경하에서 사용자 컴퓨터(310)에서 정상적으로 실행되지 않을 수 있다.
지식 데이터 생성 처리부(360)는 메타이미지 및 최소 설치 사양 형성부(350)에서 형성된 최소 설치 사양을 참조하여 메타이미지에 공통 규칙 또는 공통 규칙 및 특정 규칙을 적용하고 미리 설정된 시험 규칙에 따라 응용 소프트웨어를 시험하여 지식 데이터를 생성한다. 그리고, 지식 데이터 생성 처리부(360)는 갱신부(380)를 통해 지식 DB(370)의 지식 데이터를 갱신한다.
재포장 응용 소프트웨어 파일 생성 및 업로드 처리부(340)는 메타이미지 및 지식 DB(370)로부터의 지식 데이터에 기초하여 재포장 응용 소프트웨어 파일을 생성하고, 생성된 재포장 응용 소프트웨어 파일을 스트리밍 서버(330)로 업로드 한다. 여기서, 지식 DB(370)는 스트리밍 서비스 제공 시스템에 있어서의 사용자 컴퓨터에 의해 응용 소프트웨어가 실행될 때의 운영체제와 응용 소프트웨어에 대한 공통 사항 및 사용자 컴퓨터에서 응용 소프트웨어가 실행될 때의 프로세스(process) 사이의 연동, 하드웨어 설정, 디바이스 드라이버(device driver) 설정, 라이센스(license) 처리 등의 응용 소프트웨어마다 특이한 성격을 갖는 특정 사항을 저장 관리한다.
스트리밍 서버(330)는 재포장 응용 소프트웨어 파일 생성 및 업로드 처리부(340)로부터 업로드 된 재포장 응용 소프트웨어 파일을 스트리밍 서버(330)의 통신부(331)를 통해 재포장 응용 소프트웨어 파일 저장 관리부(332)에 저장 및 관리한다. 또한, 사용자 컴퓨터(310)로부터 요청이 있는 경우, 스트리밍 서버(330)는 사용자 컴퓨터(310)가 재포장 응용 소프트웨어의 내용인 응용 소프트웨어를 스트리밍으로 사용할 수 있도록 재포장 응용 소프트웨어 파일을 전송한다.
사용자 컴퓨터(310)는 재포장 응용 소프트웨어 파일에서 필요로 하는 부분을 스트리밍 서버(330)로 요청하여 이를 수신한다. 사용자 컴퓨터(310)의 재포장 응용 소프트웨어 파일 실행부(312)는 재포장 응용 소프트웨어 파일의 내용인 응용 소프트웨어를 실행하는데 필요한 공통 사항 및 특정 사항의 설치 사양에 기초한 환경을 구축하여 가상 환경에서 응용 소프트웨어를 실행한다. 사용자 컴퓨터(310)가 가상 환경에서 응용 소프트웨어를 실행하는 중에 재포장 응용 소프트웨어 파일에서 응용 소프트웨어의 실행에 필요한 부분이 더 있으면, 스트리밍 서버(330)로 재포장 응용 소프트웨어 파일에서 필요로 하는 부분을 요청하여 이를 전송 받고, 사용자 컴퓨터(310)의 재포장 응용 소프트웨어 파일 실행부(312)에 의해 응용 소프트웨어를 실행하는데 필요한 환경을 구축하여 가상 환경에서 응용 소프트웨어를 실행함으로써 응용 소프트웨어를 스트리밍으로 실행한다. 즉, 이들을 반복적으로 수행함으로써 사용자 컴퓨터(310)는 응용 소프트웨어를 스트리밍으로 사용할 수 있다.
도 4는 도 3의 메타이미지 및 최소 설치 사양 형성부(350)의 세부 구성블록도이다. 메타 이미지 및 최소 설치 사양 형성부(350)는 초기 환경 생성부(351), 이미지 생성부(352) 및 이미지 비교부(353)를 포함하여 구성된다.
초기 환경 생성부(351)는 입력부(395)로부터 입력된 응용 소프트웨어에 기초하여 응용 소프트웨어 재포장 시스템을 지원할 수 있는 응용 소프트웨어의 최소 설치 사양을 일반적인 이미지 복원 방식에 의해 형성한다.
이미지 생성부(352)는 초기 환경 생성부(351)에서 형성된 응용 소프트웨어의 최소 설치 사양에 기초하여 응용 소프트웨어를 필터링(filtering)하는 응용 소프트웨어 필터링 처리, 응용 소프트웨어를 스캔하여 스캔 이미지를 생성하는 응용 소프트웨어 스캔 이미지 생성 처리, 응용 소프트웨어의 스캔 회수를 판단하는 스캔 회수 판단 처리, 응용 소프트웨어의 설치 환경을 추가 변경 및 응용 소프트웨어의 설치 환경을 복원하는 설치 환경 추가 변경 및 설치 환경 복원처리를 수행한다. 여기서, 설치 환경은 응용 소프트웨어가 어떤 운영체제에 설치되었을 때의 파일 정보, 레지스트리, 운영체제 정보 및 응용 소프트웨어 구분 정보를 의미한다.
응용 소프트웨어 필터링 처리는 응용 소프트웨어의 재포장에 불필요한 부분을 스캔 과정에서 제외시키거나 특별한 처리를 하여 스트리밍 환경하에서 응용 소프트웨어의 사용에 최적인 파일 리스트, 파일 데이터 및 디렉토리(file list and directory) 구조의 파일 정보, 레지스트리(registry), 운영체제 정보 및 응용 소프트웨어 구분 정보를 응용 소프트웨어 재포장에 정합되도록 하기 위한 것이다. 즉, 필터링은 응용 소프트웨어의 파일 정보, 레지스트리, 운영체제 정보 및 응용 소프트웨어 구분 정보에서 필요가 없는 부분으로 인하여 발생되는 응용 소프트웨어의 실행 속도 저하와 비정상적인 실행을 보정하기 위한 것이다.
응용 소프트웨어 스캔 이미지 생성 처리는 설치 환경에 기초하여 응용 소프트웨어의 파일 정보, 레지스트리, 운영체제 정보 및 응용 소프트웨어 구분 정보를추출하여 응용 소프트웨어 스캔 이미지를 생성하는 것이다. 또, 스캔 회수 판단 처리는 응용 소프트웨어의 설치 환경을 추가 변경할 것인지 또는 응용 소프트웨어의 설치 환경을 복원할 것인지를 판단하는 것이다. 설치 환경 추가 변경은 사용자 컴퓨터마다 다른 응용 소프트웨어의 설치 경로를 특정 경로로 고정하여 응용 소프트웨어 재포장을 함으로써 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장을 단순화하기 위한 것으로서, 생성된 응용 소프트웨어 스캔 이미지가 운영자에 의한 응용 소프트웨어 설치 전에 저장되어 있는 응용 소프트웨어 스캔 이미지이면 응용 소프트웨어의 설치 환경을 추가 변경하는 것이고, 설치 환경 복원은 응용 소프트웨어 스캔 이미지가 응용 소프트웨어 설치 후에 저장되어 있는 응용 소프트웨어 스캔 이미지이면 응용 소프트웨어가 설치되기 전의 응용 소프트웨어의 설치 환경을 복원하는 것이다.
이미지 비교부(353)는 응용 소프트웨어 설치 전에 추가 변경되어 있는 설치 환경에서의 스캔 이미지와 응용 소프트웨어 설치 후에 복원되어 있는 설치 환경에서의 스캔 이미지를 비교하여 응용 소프트웨어 설치 전, 후에 추가 변경된 파일 정보, 레지스트리, 운영체제 정보 및 응용 소프트웨어 구분 정보로 이루어진 데이터 구조의 메타이미지를 형성한다. 여기서, 운영체제 정보는 폰트(font) 처리, 사용자 컴퓨터 초기화 처리, 단축 아이콘(Short Cut) 처리, 링크(link) 파일 처리, 환경 변수 처리, 운영체제와 응용 소프트웨어에 사용되는 DB(Data Base) 설정 처리 등의 정보로 구성되며, 응용 소프트웨어 구분 정보는 응용 소프트웨어의 실행 파일명과 실행 파일 버전(version) 등의 정보로 구성된다.
도 5는 도 3의 지식 데이터 생성 처리부(360)의 세부 구성블록도이다.
지식 데이터 생성 처리부(360)는 공통 규칙 적용부(361-1) 및 특정 규칙 적용부(361-2)로 이루어진 규칙 적용부(361), 시험부(362), 지식 데이터 생성부(363)로 구성된다.
규칙 적용부(361)는 초기 환경 생성부(351)에서 형성된 응용 소프트웨어의 최소 설치 사양과 이미지 비교부(353)에서 생성된 메타이미지에 기초하여 공통 규칙, 또는 공통 규칙 및 특정 규칙을 적용하기 위한 것이다. 공통 규칙 적용부(361-1)는 스트리밍 서비스 제공 시스템에서 사용자 컴퓨터가 응용 소프트웨어를 실행할 때의 운영체제와 응용 소프트웨어에 대한 공통 규칙을 적용한다. 그리고, 공통 규칙의 적용에 따른 응용 소프트웨어가 후술할 시험부(362)에 의한 시험에서 정상적인 동작을 하지 않는 경우, 특정 규칙 적용부(362-2)가 특정 규칙을 적용한다. 여기서, 공통 규칙은 파일 정보, 레지스트리, 운영체제 정보 및 응용 소프트웨어 구분 정보의 적어도 하나에 포함되어 있는 폰트(font) 처리, 사용자 컴퓨터 초기화 처리, 단축 아이콘(Short Cut) 처리, 링크(link) 파일 처리, 환경 변수 처리, 운영체제와 응용 소프트웨어에 사용되는 DB(Data Base) 설정 처리 등에 대한 규칙으로 구성된다. 또, 특정 규칙은 스트리밍 서비스 제공 시스템에서 사용자 컴퓨터(310)에서 응용 소프트웨어가 실행될 때의 응용 소프트웨어마다 특이한 성격을 갖는 프로세스 사이의 연동, 하드웨어 설정, 디바이스 드라이버 설정, 라이센스 처리 등의 규칙이다.
시험부(362)는 공통 규칙 적용부(361-1)에 의해 공통 규칙이 적용된 응용 소프트웨어가 정상적으로 동작하는지, 또는 공통 규칙이 적용되지 않아 특정 규칙이 적용된 응용 소프트웨어가 정상적으로 동작하는지 등의 응용 소프트웨어의 모든 기능을 일정한 시험 규칙에 의해 시험한다.
지식 데이터 생성부(363)는 시험부(362)에 의해 시험이 이루어진 응용 소프트웨어가 사용자 컴퓨터(310)에서 실행될 때 운영체제와 응용 소프트웨어에 대한 공통 사항과 특정 사항에 특정 사항에 대한 지식 데이터를 생성한다.
도 6은 도 3의 지식 데이터 갱신부(380)의 블록도이다.
지식 데이터 갱신부(380)는 지식 DB(370)에 저장 관리되고 있는 지식 데이터를 지식 데이터 생성 처리부(360)로부터 수신된 지식 데이터로 갱신하는 것으로 지식 데이터 갱신 입력부(381) 및 지식 데이터 갱신 서버(382)로 구성되어 있다. 지식 데이터 갱신 입력부(381)는 지식 데이터 생성 처리부(360)의 지식 데이터 생성부(363)로부터 수신된 지식 데이터를 지식 데이터 갱신 서버(382)로 전송한다. 지식 데이터 갱신 서버(382)는 지식 데이터 갱신 입력부(381)로부터 수신된 지식 데이터에 의해 주기적으로 또는 비주기적으로 지식 DB(370)의 지식 데이터를 갱신한다.
도 7은 도 3의 재포장 응용 소프트웨어 파일 생성 및 업로드(upload) 처리부의 세부 구성블록도이다. 재포장 응용 소프트웨어 파일 생성 및 업로드 처리부(340)는 메타이미지 분석부(344-1) 및 스크립트 파일 생성부(344-2)로 구성된 변환부(344), 재포장 응용 소프트웨어 파일 생성부(343), 재포장 응용 소프트웨어 파일 업로드부(upload part)(342) 및 통신부(331)로 구성되어 있다.
메타이미지 분석부(344-1)는 이미지 비교부(353)로부터 수신된 파일 정보, 레지스트리, 운영체제 정보 및 응용 소프트웨어 구분 정보의 메타이미지 중에서 운영체제 정보 및 응용 소프트웨어 구분 정보를 분석하고 이에 기초하여 지식 DB(370)에 질의를 하기 위한 질의문을 형성하여 질의를 하며 지식 DB(370)로부터 인터프리터(interpreter) 방식에서 사용할 수 있는 명령어인 스크립트 파일(script file)의 생성 및 실행에 필요한 스크립트 환경 정보를 획득한다. 응용 소프트웨어 구분 정보는 메타이미지 분석부(344-1)로부터 지식 DB(370)에 질의시에 지식 DB(370)에서 지표(index)로 사용된다.
스크립트 파일 생성부(344-2)는 메타이미지 분석부(344-1)로부터의 스크립트 환경 정보에 기초하여 스크립트 파일을 생성한다.
재포장 응용 소프트웨어 파일 생성부(343)는 메타이미지 분석부(344-1)로부터의 파일 정보, 레지스트리 및 스크립트 파일 생성부(344-2)로부터의 스크립트 파일에 기초하여 재포장 응용 소프트웨어 파일을 생성한다.
재포장 응용 소프트웨어 파일 업로드부(342)는 재포장 응용 소프트웨어 파일 생성부(343)로부터의 재포장 응용 소프트웨어 파일을 통신부(341)를 통해 스트리밍 서버(330)로 업로드 한다. 이때, 재포장 응용 소프트웨어 파일은 스트리밍 서버(330)의 통신부(331)를 통해 재포장 응용 소프트웨어 파일 저장 관리부(332)로 업로드 된다.
도 8은 본 발명에 따른 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법이 수행되는 과정을 도시한 흐름도이다.
메타이미지 및 최소 설치 사양 형성에 필요한 응용 소프트웨어가 입력부(395)에 의해 메타이미지 및 최소 설치 사양 형성부(350)에 입력된다(단계 S801).
메타이미지 및 최소 설치 사양 형성부(350)는 입력부(395)로부터 수신된 응용 소프트웨어에 기초하여 메타이미지 및 응용 소프트웨어의 최소 설치 사양을 형성하여 지식 데이터 생성 처리부(360)로 전송한다(단계 S802).
규칙 적용부(361)는 메타이미지 및 최소 설치 사양 형성부(350)에서 형성된 최소 설치 사양을 참조하여 메타이미지에 지식 데이터 생성 처리부(360)에 의해 공통 규칙 및 특정 규칙을 적용하고 시험 규칙에 따라 응용 소프트웨어를 시험하여 지식 데이터를 생성하고(단계 S803), 갱신 장치(380)를 개재하여 지식 DB(370)의 지식 데이터를 갱신한다(단계 S804).
재포장 응용 소프트웨어 파일 생성 및 업로드 처리부(340)는 메타이미지 및 최소 설치 사양 형성부(350)로부터 수신된 메타이미지와 지식 DB(370)로부터 추출한 지식 데이터에 기초하여 재포장 응용 소프트웨어 파일을 생성하고, 생성된 재포장 응용 소프트웨어 파일을 스트리밍 서버(330)로 업로드 한다(단계 S805).
스트리밍 서버(330)의 재포장 응용 소프트웨어 파일 저장 관리부(332)는 업로드된 재포장 응용 소프트웨어 파일의 응용 소프트웨어를 저장 및 관리한다(단계 S806).
사용자 컴퓨터(310)는 네트워크(320)를 통해 스트리밍 서버(330)에 재포장 응용 소프트웨어 파일에서 필요로 하는 부분을 요청하여 이를 수신하고(단계S807), 사용자 컴퓨터(310)의 재포장 응용 소프트웨어 파일 실행부(312)에 의해 이 재포장 응용 소프트웨어 파일의 내용인 응용 소프트웨어를 실행하는데 필요한 공통 사항 및 특정 사항의 설치 사양에 기초한 환경을 구축하여 가상 환경에서 응용 소프트웨어를 실행한다(단계 S808). 가상 환경에서 응용 소프트웨어를 실행하는 중에 재포장 응용 소프트웨어 파일에서 응용 소프트웨어의 실행에 필요한 부분이 더 있는지 판단하고(단계 S809), 재포장 응용 소프트웨어 파일에서 응용 소프트웨어의 실행에 필요한 부분이 더 있다고 판단되면 단계 S807 및 단계 S808이 수행되도록 함으로써 사용자 컴퓨터(310)가 응용 소프트웨어를 스트리밍으로 실행한다.
도 9는 도 8의 메타이미지(meta-image) 및 최소 설치 사양 형성 단계의 세부 흐름도이다.
입력부(395)로부터 입력된 응용 소프트웨어에 기초하여 초기 환경 생성부(351)는 응용 소프트웨어 재포장 시스템을 지원할 수 있는 응용 소프트웨어의 최소 설치 사양을 일반적인 이미지 복원 방식에 의해 유지한다(단계 S901).
이미지 생성부(352)는 초기 환경 생성부(351)에 의해 형성된 응용 소프트웨어의 최소 설치 사양에 기초하여 응용 소프트웨어 필터링 처리를 수행하고(단계 S902), 설치 환경에 기초하여 응용 소프트웨어 스캔 이미지를 생성하고(단계 S903), 응용 소프트웨어의 스캔 회수를 판단한다(단계 S904). 응용 소프트웨어의 스캔 회수가 1로 판단된 경우(단계 S905), 응용 소프트웨어의 설치 환경을 추가 변경하는 설치 환경 추가 변경을 하고(단계 S906), 입력부(395)로부터 입력된 응용 소프트웨어를 응용 소프트웨어 재포장 운영자가 응용 소프트웨어 재포장 시스템에설치한다(단계 S907).
단계 S907이 수행된 후 단계 S903 및 단계 S904를 수행한다. 이때 스캔 회수는 1이 아닌 것으로 판단되면(단계 S905), 응용소프트웨어가 설치되기 전의 응용 소프트웨어의 설치 환경을 복원하는 설치 환경 복원 처리가 수행한다(단계 S908).
이미지 비교부(353)는 응용 소프트웨어 설치 전에 추가 변경된 설치 환경에서의 스캔 이미지와 응용 소프트웨어 설치 후에 복원된 설치 환경에서의 스캔 이미지를 비교하여 메타이미지를 형성한다(단계 S909).
도 10은 도 8의 지식 데이터 생성 단계의 세부 흐름도이다.
공통 규칙 적용부(361-1)는 초기 환경 생성부(351)에서 형성된 응용 소프트웨어의 최소 설치 사양과 이미지 비교부(353)에서 생성된 메타이미지에 기초하여 사용자 컴퓨터가 응용 소프트웨어를 실행할 때의 운영체제와 응용 소프트웨어에 대한 공통 규칙을 적용한다(단계 S1001).
시험부(362)는 공통 규칙 적용에 따른 응용 소프트웨어가 정상적인 동작을 하는지 여부를 시험한다(단계 S1002).
단계 S1002에서의 시험 결과가 정상적인 동작인 경우(단계 S1003), 지식 데이터 생성부(363)는 응용 소프트웨어에 대한 지식 데이터를 생성한다(단계 S1004).
단계 S1002에서의 시험 결과가 정상적인 동작 아닌 경우(단계 S1003), 특정 규칙 적용부(362-2)는 초기 환경 생성부(351)로부터의 응용 소프트웨어의 최소 설치 사양과 이미지 비교부(353)로부터의 메타이미지에 기초하여 사용자 컴퓨터가 응용 소프트웨어를 실행할 때의 프로세스(process) 사이의 연동, 하드웨어 설정, 디바이스 드라이버(device driver) 설정, 라이센스(license) 처리 등의 응용 소프트웨어마다 특이한 성격을 갖는 특정 규칙을 적용한다.(단계 S1005).
시험부(362)는 특정 규칙 적용에 따른 응용 소프트웨어가 정상적인 동작을 하는지 여부를 시험한다(단계 S1006).
단계 S1006에서 수행된 시험 결과가 정상적인 동작인 아닌 경우(단계 S1003), 또 다른 특정 규칙에 따라 단계 S1005 및 단계 S1006을 반복적으로 수행하고, 단계 S1006에서의 시험 결과가 정상적인 동작으로 되는 경우(단계 S1003), 지식 데이터 생성부(363)는 응용 소프트웨어에 대한 지식 데이터를 생성한다(단계 S1004).
도 11은 도 8의 지식 데이터 갱신 단계의 세부 흐름도이다.
지식 데이터 갱신 입력부(381)는 지식 데이터 생성 처리부(360)의 지식 데이터 생성부(363)로부터의 지식 데이터를 지식 데이터 갱신 서버(382)에 입력하고(단계 S1101), 지식 데이터 갱신 서버(382)는 지식 데이터 갱신 입력부(381)로부터의 지식 데이터에 기초하여 주기적 또는 비주기적으로 지식 DB(370)의 지식 데이터를 갱신한다(단계 S1102).
도 12는 도 8의 재포장 응용 소프트웨어 파일 생성 및 업로드(upload) 단계의 세부 흐름도이다.
메타이미지 분석부(344-1)는 메타이미지 및 최소 설치 사양 형성부(350)의 이미지 비교부(353)로부터의 메타이미지 중에서 운영체제 정보 및 응용 소프트웨어 구분 정보를 분석하고(단계 S1201), 이에 기초하여 지식 DB(370)에 질의를 하기 위한 질의문을 형성하여 질의를 하고(단계 S1202), 지식 DB(370)로부터 인터프리터(interpreter) 방식에서 사용할 수 있는 명령어인 스크립트 파일(script file)의 생성 및 실행에 필요한 스크립트 환경 정보를 획득한다(단계 S1203).
스크립트 파일 생성부(344-2)는 메타이미지 분석부(344-1)로부터의 스크립트 환경 정보에 기초하여 스크립트 파일을 생성한다(단계 S1204).
재포장 응용 소프트웨어 파일 생성부(343)는 메타이미지 분석부(344-1)로부터의 파일 정보, 레지스트리, 및 스크립트 파일 생성부(344-2)로부터의 스크립트 파일에 기초하여 재포장 응용 소프트웨어 파일을 생성한다(단계 S1205).
재포장 응용 소프트웨어 파일 업로드부(342)는 재포장 응용 소프트웨어 파일 생성부(343)로부터의 재포장 응용 소프트웨어 파일을 통신부(341)를 통해 스트리밍 서버(330)로 업로드 한다(단계 S1206). 단계 S1206에서 재포장 응용 소프트웨어 파일은 스트리밍 서버(330)의 통신부(331)를 통해 재포장 응용 소프트웨어 파일 저장 관리부(332)로 업로드 된다.
상기와 같은 본 발명에 따르면, 스트리밍 서버와 사용자 컴퓨터가 네트워크을 개재하여 접속되어 있는 환경에서 사용자 컴퓨터에 응용 소프트웨어를 설치하는 일이 없이 스트리밍 서버에 업로드 되어있는 응용 소프트웨어를 스트리밍 방식으로 실행할 수 있는 응용 소프트웨어 스트리밍 서비스를 제공할 수 있다.
또한, 실제 운영체제 및 환경에 변경을 가하지 않으면서 가상 실행 환경에서 실행할 수 있도록 응용 소프트웨어를 스트리밍 하는 본 발명의 응용 소프트웨어의스트리밍에 의하면, 응용 소프트웨어의 유지관리 비용을 획기적으로 저감하면서도 운영체제의 안정성을 확보할 수 있어서 응용 소프트웨어 관리측면에서 편이성이 향상되는 효과가 있다.
비록 본 발명이 상기 언급된 바람직한 실시예와 관련하여 설명되어졌지만, 발명의 요지와 범위로부터 벗어남이 없이 다양한 수정이나 변형을 하는 것이 가능하다. 따라서 첨부된 특허청구의 범위는 본 발명의 요지에서 속하는 이러한 수정이나 변형을 포함할 것이다.

Claims (30)

  1. 응용 소프트웨어의 재포장 시스템에 있어서,
    재포장될 응용 소프트웨어 파일을 수신하는 입력부;
    상기 입력부로부터 입력된 응용 소프트웨어 파일에 기초하여 응용 소프트웨어에 요구되는 최소 설치 사양을 형성하고 메타이미지를 생성하는 메타이미지 및 최소 설치 사양 형성부; 및
    상기 메타이미지에 기초하여 재포장 응용 소프트웨어 파일을 생성하여 스트리밍 서버로 업로드 하는 재포장 응용 소프트웨어 파일 생성 및 업로드 처리부를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  2. 제 1항에 있어서,
    상기 메타이미지 및 최소 설치 사양 형성부는
    상기 입력부로부터 입력된 응용 소프트웨어 파일에 기초하여 응용 소프트웨어의 최소 설치 사양을 형성하는 초기 환경 생성부;
    상기 응용 소프트웨어 파일의 설치 전 스캔 이미지 및 설치 후 스캔 이미지를 생성하는 이미지 생성부; 및
    상기 이미지 생성부에서 생성된 응용 소프트웨어 설치 전후의 스캔 이미지를 비교하여 메타이미지를 생성하는 이미지 비교부를 더 포함하는 특징으로 하는 응용소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  3. 제 1 항에 있어서,
    상기 생성된 메타이미지에 미리 설정된 규칙을 적용하여 그 결과에 상응하는 지식 데이터를 생성하는 지식 데이터 생성 처리부가 더 포함되는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  4. 제 2 항 또는 3 항에 있어서,
    상기 이미지 생성부는 상기 응용 소프트웨어의 최소 설치 사양에 기초하여 응용 소프트웨어를 필터링하고, 응용 소프트웨어를 스캔하여 스캔 이미지를 생성하고, 응용 소프트웨어의 스캔 회수를 산출하여 스캔 회수에 따라 응용 소프트웨어의 설치 환경을 추가 변경 또는 복원하는 기능을 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  5. 제 4 항에 있어서,
    상기 응용 소프트웨어의 필터링은
    상기 응용 소프트웨어 스트리밍에 사용되지 않는 파일 정보, 레지스트리(registry), 운영체제 정보 또는 응용 소프트웨어 구분 정보를 추출하여 이미지 생성 대상에서 제외하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  6. 제 4 항에 있어서,
    상기 운영체제 정보는
    폰트 처리, 사용자 컴퓨터 초기화 처리, 단축 아이콘 처리, 링크 파일 처리, 환경 변수 처리, 운영체제와 응용 소프트웨어에 사용되는 DB(Data Base) 설정 처리 중에서 적어도 하나 이상의 처리 정보를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  7. 제 4 항에 있어서,
    상기 응용 소프트웨어 구분 정보는 응용 소프트웨어의 실행 파일명 및 실행 파일 버전의 정보를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  8. 제 4 항에 있어서,
    상기 파일 정보는 파일 리스트, 파일 데이터 및 디렉토리 구조를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  9. 제 4 항에 있어서,
    상기 응용 소프트웨어의 설치 환경의 추가 변경은 사용자 컴퓨터마다 다른응용 소프트웨어 설치 경로를 특정 경로로 고정하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  10. 제 3 항에 있어서,
    상기 지식 데이터 생성 처리부는
    상기 응용 소프트웨어의 최소 설치 사양에 기초하여 상기 메타이미지에 미리 설정된 규칙을 적용하는 규칙 적용부 ;
    미리 설정된 시험 규칙에 따라 상기 규칙이 적용된 응용 소프트웨어가 정상적으로 실행되는지 여부를 판단하는 시험부; 및
    상기 응용 소프트웨어가 정상적으로 실행되는 것으로 판단된 경우 상기 응용 소프트웨어 실행 시의 운영체제 및 응용 소프트웨어에 관련된 지식 데이터를 생성 및 저장하는 지식 데이터 생성부를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  11. 제 10 항에 있어서,
    상기 규칙 적용부는
    스트리밍 환경에서 상기 응용 소프트웨어 실행시의 공통되는 운영 체제 환경 및 공통적인 응용 소프트웨어 환경에 관련된 공통 규칙을 상기 응용 소프트웨어에 적용하는 공통 규칙 적용부; 및
    상기 스트리밍 환경에서 상기 응용 소프트웨어 실행시의 상기 응용 소프트웨어별 특이 사항과 관련된 특정 규칙을 상기 응용 소프트웨어에 적용하는 특정 규칙 적용부를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  12. 제 11 항에 있어서,
    상기 공통 규칙은 파일 정보, 레지스트리, 운영체제 정보 및 응용 소프트웨어 구분 정보의 적어도 하나에 포함되어 있는 폰트 처리, 사용자 컴퓨터 초기화 처리, 단축 아이콘 처리, 링크 파일 처리, 환경 변수 처리, 운영체제와 응용 소프트웨어에 사용되는 DB(Data Base) 설정 처리 중에서 적어도 하나 이상의 처리 규칙으로 구성되는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  13. 제 11항에 있어서,
    상기 특정 규칙은 프로세스 사이의 연동, 하드웨어 설정, 디바이스 드라이버 설정, 라이센스 처리 중에서 적어도 하나 이상의 처리 규칙으로 구성되는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  14. 제 3 항에 있어서,
    상기 지식 데이터 생성 처리부에 의해 생성된 지식 데이터를 갱신 처리하는 갱신부가 더 포함되는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  15. 제 14 항에 있어서,
    상기 갱신부는
    상기 생성 처리부로부터 생성된 지식 데이터를 지식 데이터 갱신 서버에 입력하는 지식 데이터 갱신 입력부; 및
    상기 지식 데이터 갱신 입력부로부터 수신된 상기 지식 데이터에 의해 지식 데이터를 갱신하는 지식 데이터 갱신 서버를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  16. 제 1 항에 있어서,
    상기 재포장 응용 소프트웨어 파일 생성 및 업로드 처리부는
    상기 메타 이미지를 분석한 정보를 지식 데이터와 비교하여 상기 메타 이미지에 상응하는 파일 정보, 레지스트리 및 스크립트 파일을 변환하는 변환부;
    상기 변환된 파일 정보, 레지스트리, 및 스크립트 파일에 기초하여 재포장 응용 소프트웨어 파일을 생성하는 재포장 응용 소프트웨어 파일 생성부, 및
    상기 생성된 재포장 응용 소프트웨어 파일을 상기 파일 서버에 업로드 하는 재포장 응용 소프트웨어 파일 업로드부를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  17. 제 16 항에 있어서,
    상기 변환부는
    상기 메타이미지 중에서 운영체제 정보 및 응용 소프트웨어 구분 정보를 분석하여 상기 지식 DB에 질의를 하고 스크립트 환경 정보를 획득하는 메타이미지 분석부; 및
    상기 메타이미지 분석부에서 획득된 스크립트 환경 정보에 기초하여 스크립트 파일을 생성하는 스크립트 파일 생성부를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 시스템.
  18. 응용 소프트웨어를 재포장하는 방법에 있어서,
    메타이미지 및 최소 설치 사양 형성에 필요한 응용 소프트웨어를 입력받는 단계;
    상기 입력된 응용 소프트웨어에 기초하여 응용 소프트웨어의 최소 설치 사양을 형성하는 단계;
    상기 응용 소프트웨어의 설치전 스캔 이미지 및 설치후 스캔 이미지를 생성하는 단계;
    상기 설치전 스캔 이미지 및 설치후 스캔 이미지를 비교하는 단계;
    상기 비교 결과에 상응하는 메타 이미지를 생성하는 단계; 및
    상기 생성된 메타이미지에 기초하여 재포장 응용 소프트웨어 파일을 생성하는 단계; 및
    상기 생성된 재포장 응용 소프트웨어 파일을 스트리밍 서버로 업로드 하는 단계를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  19. 제 18 항에 있어서,
    상기 최소 설치 사양을 참조하여 상기 메타이미지에 미리 설정된 규칙을 적용하는 단계; 및
    상기 적용 결과에 상응하는 지식 데이터를 생성하는 단계가 더 포함되고,
    상기 재포장 응용 소프트웨어 파일을 생성하는 단계는 상기 메타이미지 및 상기 지식 데이터에 기초하여 이루어지는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  20. 제 18 항 또는 19 항에 있어서,
    상기 응용 소프트웨어를 필터링하는 단계가 더 포함되고,
    상기 필터링은 상기 응용 소프트웨어 스트리밍에 사용되지 않는 파일 정보, 레지스트리(registry), 운영체제 정보 또는 응용 소프트웨어 구분 정보를 추출하여 이미지 생성 대상에서 제외하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  21. 제 20항에 있어서,
    상기 운영체제 정보는
    폰트 처리, 사용자 컴퓨터 초기화 처리, 단축 아이콘 처리, 링크 파일 처리, 환경 변수 처리, 운영체제와 응용 소프트웨어에 사용되는 DB(DataBase) 설정 처리 중에서 적어도 하나 이상의 처리 정보를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  22. 제 20항에 있어서,
    상기 응용 소프트웨어 구분 정보는
    응용 소프트웨어의 실행 파일명 및 실행 파일 버전의 정보를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  23. 제 20항에 있어서,
    상기 파일 정보는 파일 리스트, 파일 데이터 및 디렉토리 구조를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  24. 제 20 항에 있어서,
    상기 응용 소프트웨어의 설치 환경의 추가 변경은
    사용자 컴퓨터마다 다른 응용 소프트웨어 설치 경로를 특정 경로로 고정하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장방법.
  25. 제 20 항 또는 제 24 항에 있어서,
    상기 설치 환경은 응용 소프트웨어가 특정 운영체제에 설치되었을 때의 파일 정보, 레지스트리, 운영체제 정보 및 응용 소프트웨어 구분 정보 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  26. 제 18 항에 있어서,
    상기 메타이미지에 미리 설정된 규칙을 적용하는 단계는
    상기 메타 이미지에 미리 설정된 공통 규칙을 적용하는 단계;
    상기 공통 규칙이 적용된 상기 응용 소프트웨어가 정상적으로 동작하는지를 판단하는 단계;
    상기 응용 소프트웨어가 정상적으로 동작하는 경우 상기 공통 규칙이 적용된 상기 응용 소프트웨어에 상응하는 지식 데이터를 생성하는 단계;
    상기 공통 규칙이 적용된 상기 응용 소프트웨어가 정상적으로 동작하지 않는 경우 상기 메타 이미지에 미리 설정된 특정 규칙을 적용하는 단계;
    상기 특정 규칙이 적용된 상기 응용 소프트웨어가 정상적으로 동작하는지를 판단하는 단계; 및
    상기 응용 소프트웨어가 정상적으로 동작하는 경우 상기 특정 규칙이 적용된상기 응용 소프트웨어에 상응하는 지식 데이터를 생성하는 단계를 더 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  27. 제 26항에 있어서,
    상기 공통 규칙은
    파일 정보, 레지스트리, 운영체제 정보 및 응용 소프트웨어 구분 정보의 적어도 하나에 포함되어 있는 폰트 처리, 사용자 컴퓨터 초기화 처리, 단축 아이콘 처리, 링크 파일 처리, 환경 변수 처리, 운영체제와 응용 소프트웨어에 사용되는 DB(Data Base) 설정 처리 중에서 적어도 하나 이상의 처리 규칙을 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  28. 제 26항에 있어서,
    상기 특정 규칙은
    응용 소프트웨어마다 특이한 성격을 갖는 프로세스 사이의 연동, 하드웨어 설정, 디바이스 드라이버 설정, 라이센스 처리 중에서 적어도 하나 이상의 처리 규칙을 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  29. 제 18 항 또는 19 항에 있어서,
    상기 재포장 응용 소프트웨어 파일을 생성하는 단계는
    상기 메타이미지 및 상기 지식 데이터에 기초하여 상기 메타이미지에 상응하는 파일 정보, 레지스트리 및 스크립트 파일로 변환하는 단계; 및
    상기 파일 정보, 레지스트리 및 스크립트 파일에 기초하여 재포장 응용 소프트웨어 파일을 생성하는 단계를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
  30. 제 29 항에 있어서,
    상기 변환 단계는
    상기 메타이미지 중에서 운영체제 정보 및 응용 소프트웨어 구분 정보를 분석하여 상기 지식 DB에 질의를 하고 스크립트 환경 정보를 획득하는 단계; 및
    상기 스크립트 환경 정보에 기초하여 스크립트 파일을 생성하는 단계를 포함하는 것을 특징으로 하는 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어 재포장 방법.
KR10-2003-0052542A 2003-07-30 2003-07-30 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어재포장 시스템 및 방법 KR100506069B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR10-2003-0052542A KR100506069B1 (ko) 2003-07-30 2003-07-30 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어재포장 시스템 및 방법
JP2004185187A JP2005050314A (ja) 2003-07-30 2004-06-23 アプリケーションソフトウェアストリーミングのためのアプリケーションソフトウェア再パッケージシステム、及びその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0052542A KR100506069B1 (ko) 2003-07-30 2003-07-30 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어재포장 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20050014084A true KR20050014084A (ko) 2005-02-07
KR100506069B1 KR100506069B1 (ko) 2005-08-03

Family

ID=34270601

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0052542A KR100506069B1 (ko) 2003-07-30 2003-07-30 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어재포장 시스템 및 방법

Country Status (2)

Country Link
JP (1) JP2005050314A (ko)
KR (1) KR100506069B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100980777B1 (ko) * 2007-12-18 2010-09-10 한국전자통신연구원 웹기반 소프트웨어 처리 시스템 및 방법

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100927442B1 (ko) 2007-08-16 2009-11-19 주식회사 마크애니 가상 응용프로그램 생성 시스템, 가상 응용프로그램 설치방법, 네이티브 api 호출 처리 방법 및 가상응용프로그램 수행 방법
KR100937048B1 (ko) 2008-04-04 2010-01-15 한국전자통신연구원 소프트웨어 변환 시스템, 단말 및 그 방법
KR101078660B1 (ko) 2008-12-22 2011-11-01 한국전자통신연구원 소프트웨어 변환 시스템 및 방법
KR101078661B1 (ko) 2009-03-11 2011-11-01 한국전자통신연구원 이동형 소프트웨어의 업데이트 방법
JP5476834B2 (ja) * 2009-07-24 2014-04-23 株式会社リコー 情報処理装置、ワークフローシステム、ワークフロー管理方法、プログラムおよび記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100980777B1 (ko) * 2007-12-18 2010-09-10 한국전자통신연구원 웹기반 소프트웨어 처리 시스템 및 방법

Also Published As

Publication number Publication date
JP2005050314A (ja) 2005-02-24
KR100506069B1 (ko) 2005-08-03

Similar Documents

Publication Publication Date Title
JP6774499B2 (ja) オフラインでのハイブリッドアプリケーションへのアクセスの提供
US7243346B1 (en) Customized library management system
KR101619557B1 (ko) 커스터마이즈된 컴퓨터 응용 프로그램 패키지
US9696981B2 (en) Incremental deployment of computer software program logic
US8918779B2 (en) Logical migration of applications and data
US9588752B2 (en) Performing unattended software installation
US8316120B2 (en) Applicability detection using third party target state
US20070245338A1 (en) Virtual machine management program and virtual machine management method
JP2017107555A (ja) ソフトウェア・コンテナ中のソフトウェアの識別を決定するための方法、システム、およびプログラム
US11561784B2 (en) Versioning of pipeline templates for continuous delivery of services on datacenters configured in cloud platforms
US8196137B2 (en) Remote auto provisioning and publication of applications
US20040098419A1 (en) Method and apparatus for a migration assistant
JP6940751B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
KR20060051932A (ko) 소프트웨어를 실행 동안 업데이트하는 시스템, 방법 및컴퓨터-판독가능 매체
US20180246710A1 (en) Software update apparatus and method in virtualized environment
CN106897607B (zh) 一种应用程序监控方法及装置
US20150172107A1 (en) Caching and analyzing images for faster and simpler cloud application deployment
CN110012096B (zh) 移动客户端服务更新管理方法、装置及系统
JP7493053B2 (ja) イメージファイル生成方法、装置及びコンピュータプログラム
US20160371071A1 (en) Account-based software upgrades in a multi-tenant ecosystem
US11392366B1 (en) Optimized compilation of pipelines for continuous delivery of services on datacenters configured in cloud platforms
CN113760306A (zh) 安装软件的方法、装置、电子设备及存储介质
KR100506069B1 (ko) 응용 소프트웨어의 스트리밍을 위한 응용 소프트웨어재포장 시스템 및 방법
CN115576600A (zh) 基于代码变更的差异处理方法、装置、终端及存储介质
CN115336237A (zh) 远程存储的文件的预测性供应

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: 20120727

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20131028

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140728

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160927

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20170727

Year of fee payment: 13