KR20100030581A - Method and system for extracting repacking data of application program on host computer in dirty personal computer environment - Google Patents

Method and system for extracting repacking data of application program on host computer in dirty personal computer environment Download PDF

Info

Publication number
KR20100030581A
KR20100030581A KR1020090083388A KR20090083388A KR20100030581A KR 20100030581 A KR20100030581 A KR 20100030581A KR 1020090083388 A KR1020090083388 A KR 1020090083388A KR 20090083388 A KR20090083388 A KR 20090083388A KR 20100030581 A KR20100030581 A KR 20100030581A
Authority
KR
South Korea
Prior art keywords
clean
environment
application
unit
virtual
Prior art date
Application number
KR1020090083388A
Other languages
Korean (ko)
Other versions
KR101160057B1 (en
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 KR20100030581A publication Critical patent/KR20100030581A/en
Application granted granted Critical
Publication of KR101160057B1 publication Critical patent/KR101160057B1/en

Links

Images

Classifications

    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Abstract

PURPOSE: A method and a system for extracting repacking data of an application program on a host computer in confused personal computer environment are provided to extract repacking data from a confused PC by using virtual green pc in a host. CONSTITUTION: A data storage(300) stores a clean PC image for clean PC environment and repacking data which is generated in installing an application. A virtual environment unit(320b) virtualizes the clean PC environment based on the clean PC image saved in data storage module in a host computer. An application installer(310b) installs the application in the clean PC environment.

Description

더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 방법 및 시스템{METHOD AND SYSTEM FOR EXTRACTING REPACKING DATA OF APPLICATION PROGRAM ON HOST COMPUTER IN DIRTY PERSONAL COMPUTER ENVIRONMENT}TECHNICAL AND SYSTEM FOR EXTRACTING REPACKING DATA OF APPLICATION PROGRAM ON HOST COMPUTER IN DIRTY PERSONAL COMPUTER ENVIRONMENT}

본 발명은 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 방법 및 시스템에 관한 것으로, 더욱 상세하게는 데이터 저장부에 있는 클린PC 이미지를 사용하여 호스트 컴퓨터상에 클린PC환경을 가상화하고, 가상화된 클린PC환경상에서 어플리케이션의 재패킹 데이터를 얻어내기 위한 추출 시스템 및 방법에 관한 것이다.The present invention relates to a method and system for extracting repacking data of an application on a host computer in a dirty PC environment, and more particularly, to virtualize a clean PC environment on a host computer using a clean PC image in a data storage unit. , An extraction system and method for obtaining application repacking data in a virtualized clean PC environment.

대부분의 회사들이 회사가 보유하고 있는 개인용컴퓨터들의 도입 비용뿐만 아니라 업그레이드나 유지보수 비용 등과 같이 도입 후에 드는 여러가지 관리비용인 TCO(Total Cost Of Ownership)를 줄이기 위한 방법을 찾게 되었다.Most companies have found a way to reduce the total cost of ownership (TCO), which is not only the cost of introducing personal computers they own, but also various administrative costs such as upgrades and maintenance costs.

이러한 문제들을 해결하기 위해서 기존의 개인PC에 설치하여 사용하던 어플리케이션들을 복사본을 생성하여 중앙서버에 저장하고, 이를 사내 통신망을 통해 각각의 개인PC에 배포하여 어플리케이션을 쉽게 설치하거나 업데이트 하는 방법을 사용하게 되었다. 이것보다 한 단계 진보한 방법으로 서버에 재패킹된 어플리케이 션을 올려놓고 SAAS(Software As A Service) 또는 SOD(Software On Demand) 방식을 사용해서 클라이언트에 설치되어 있지 않은 어플리케이션을 실행할 때 필요한 데이터를 서버로부터 실시간으로 다운로드 받음으로써, 클라이언트에서 어플리케이션을 실행 할 수 있는 방법으로 발전해 왔다.To solve these problems, make a copy of the applications installed on the existing personal PC and save them on the central server, and distribute them to each personal PC through the internal communication network to easily install or update the application. It became. One more advanced step is to put the repackaged application on the server and use the Software As A Service (SAAS) or Software On Demand (SOD) method to run the data that is not installed on the client. Downloading from the server in real time has evolved into a way to run applications on the client.

앞에서 기술된 두 가지 방법 모두 설치프로그램을 통해서 설치된 어플리케이션을 재패킹하는 방법이 필요한데, 기존의 방법은 크게 모니터링 방식과 스넵샷 방식으로 구분할 수 있다.Both methods described above require a method of repacking the installed application through the installation program. The existing methods can be largely divided into a monitoring method and a snapshot method.

"모니터링 방식"은 클린PC(Clean PC)상에서 어플리케이션의 설치에 의해서 생성 또는 수정되는 폴더 및 파일과 레지스트리의 내용을 어플리케이션 설치가 완료될 때까지 모니터링 하고 있다가 설치가 완료되면 변경된 폴더 및 파일과 레지스트리의 변경사항을 취합하여 이를 재패킹 데이터로 활용하는 방식으로, 항상 설치프로그램은 클린PC 상에서 실행해야 하는 불편함과 취합된 내용을 통하여 어플리케이션을 재패킹하기 때문에 시간이 많이 소요되었다."Monitoring method" monitors the contents of folders and files and registry created or modified by application installation on a clean PC until the application installation is completed. After the installation is completed, the changed folders and files and registry are monitored. By collecting the changes in and using them as repacking data, the installer always takes a lot of time because it repackages the application through the inconvenience and need to run on a clean PC.

또한, "스냅샷 방식"은 클린PC(Clean PC)상에서 어플리케이션의 설치전에 폴더 및 파일과 레지스트리에 대한 첫 번째 스냅샷 이미지를 생성하고, 어플리케이션의 설치 후 두 번째 스냅샷 이미지를 생성하여 두 번째 스냅샷 이미지와 첫 번째 스냅샷 이미지의 폴더 및 파일과 레지스트리의 차분을 구하여 이를 재패킹 데이터로 활용하는 방식으로, 이 방법 또한 항상 설치프로그램은 클린PC상에서 실행해야 하는 불편함과 스냅샷을 통해 변경된 내용을 비교하여 어플리케이션을 재패킹하기 때문에 시간이 많이 소요되었다.In addition, the "Snapshot Method" creates a first snapshot image of folders, files, and the registry before installing the application on a Clean PC, and a second snapshot by creating a second snapshot image after the application is installed. The difference between the shot image, the folder and file of the first snapshot image, and the registry is used as the repacking data. This method also always makes the installation program inconvenient to run on a clean PC and changes made through snapshots. It was very time consuming because the application was repacked by comparing them.

여기서, "클린PC"라 함은 PC하드웨어상에 윈도우즈 운영체제만을 설치하고, 이 운영체제가 동반하는 최소한의 기본 어플리케이션만이 설치된 PC상태를 의미한다. 여기에서 "최소한의 기본 어플리케이션만이 설치된 PC상태"란, 운영체제와 어플리케이션이 구동되기 위한 최소 사양으로서 예를 들면 윈도우 2000 운영체제 서비스팩이 적용되지 않은 상태가 일반적인 클린PC라고 할 수 있겠지만 어플리케이션 구동에 Windows 2000 ‘서비스팩 3’이상이 설치되어 있어야 한다면 Windows 2000 ‘서비스팩 3’이상이 설치된 상태를 클린PC라 볼 수도 있다.Here, the "clean PC" refers to a PC state in which only the Windows operating system is installed on the PC hardware and only minimal basic applications accompanying the operating system are installed. Here, "PC state with only minimum basic application installed" is the minimum specification for operating system and application. For example, Windows 2000 operating system service pack is not applied. If Windows 2000 Service Pack 3 or later is installed, Windows 2000 Service Pack 3 or later is installed as a clean PC.

앞에서 기술된 어플리케이션을 재패킹하는 방식은 모두 클린PC가 기본환경으로 필요하나, 일반인이 사용하는 개인PC는 다양어플리케이션을 오랜시간 사용과 삭제를 반복한 상태인 더티PC(Dirty PC)가 된다. 이러한 더티PC상에서 어플리케이션을 설치하면 기존에 설치되어 있는 어플리케이션들로 인해 정상적인 어플리케이션 구성요소를 추출할 수 없음으로, 별도의 클린PC가 항상 필요한 문제가 있었다.All the methods of repacking the application described above require a clean PC as a basic environment, but a personal PC used by the general public becomes a dirty PC which has repeatedly used and deleted various applications for a long time. When the application is installed on such a dirty PC, since a normal application component cannot be extracted due to existing applications, a separate clean PC is always required.

여기서, 더티PC라 함은 클린PC를 포함하는 개념으로, 클린PC에 임의의 어플리케이션이 한 개 이상 설치된 상태를 이야기 하며, 일반 사용자들이 사용하는 개인PC의 대부분 더티PC로 볼 수 있다. 즉, 오랜시간 동안 다양한 어플리케이션을 설치, 사용과 삭제를 반복하다보면, 일반인이 사용하는 개인PC의 경우 해당 OS의 파일 시스템, 레지스트리 등 환경이 초기 OS만 설치된 상태와 차이가 나게 되는데, 이러한 상태를 '더티PC(Dirty PC)'라고 한다.Here, the dirty PC is a concept including a clean PC, which refers to a state in which one or more arbitrary applications are installed on the clean PC, and can be viewed as a dirty PC of most personal PCs used by general users. In other words, if you repeatedly install, use, and delete various applications for a long time, the personal PC used by the general public will be different from the state where only the initial OS is installed, such as the file system and registry of the corresponding OS. It is called 'Dirty PC'.

이와 같은 더티PC하에서 정상적인 어플리케이션 구성요소를 추출할 수 없는 이유는, 기존에 설치된 어플리케이션들에 의해 공통으로 사용하는 DLL 파일, COM 파일 등이 최신 버전으로 설치되어있는 경우에, 어플리케이션 설치프로그램은 해당 DLL 파일, COM 파일 등을 새로 생성하지 않는다. 따라서 별도의 클린PC가 항상 필요하였다.The reason why it is not possible to extract normal application components under such dirty PC is that if the DLL files, COM files, etc. commonly used by existing applications are installed in the latest version, the application installer will install the corresponding DLL. Do not create new files, COM files, etc. Therefore, a separate clean PC was always needed.

본 발명은 상기 문제점을 해결하기 위해 안출된 것으로, 본 발명의 목적은, 클린PC가 아닌 더티PC상에서도 어플리케이션의 재패킹 데이터를 추출할 수 있는 시스템 및 방법을 제공하는 것을 목적으로 한다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is to provide a system and method capable of extracting repacking data of an application even on a dirty PC instead of a clean PC.

상기의 목적을 달성하기 위하여 본 발명에 따른 어플리케이션의 재패킹 데이터를 추출하는 시스템은, 클린PC환경의 가상화에 필요한 클린PC 이미지와 어플리케이션의 설치 중에 생성되는 재패킹 데이터를 저장하는 데이터 저장부와, 데이터 저장부에 저장된 클린PC 이미지에 기초하여, 더티PC 환경의 호스트 컴퓨터상에 클린PC환경을 가상화하는 가상환경부와, 가상화된 클린PC환경하에서 어플리케이션을 설치하는 어플리케이션 설치부를 포함하며, 가상환경부는 어플리케이션 설치부에 의해 요청되는 메시지를 후킹하고, 후킹된 메시지에 기초하여 어플리케이션 설치부가 쓰기 요청한 재패킹 데이터를 데이터 저장부에 저장하는 것을 특징으로 한다.In order to achieve the above object, a system for extracting repacking data of an application according to the present invention includes a data storage unit for storing a cleanPC image and repacking data generated during installation of an application required for virtualization of a clean PC environment; Based on the clean PC image stored in the data storage unit, a virtual environment unit for virtualizing the clean PC environment on the host computer of the dirty PC environment, and an application installation unit for installing the application under the virtualized clean PC environment, the virtual environment unit And hooking a message requested by the installation unit, and storing the repacking data requested by the application installation unit in the data storage unit based on the hooked message.

또한, 상기 데이터 저장부는, 클린PC 이미지를 생성하기 위한 클린PC 이미지 생성부와, 클린PC 이미지 생성부에서 생성된 클린PC 이미지를 저장하기 위한 클린PC 이미지 저장부와, 가상화된 클린PC환경상에서 어플리케이션 설치부의 구동에 의해 생성되는 재패킹 데이터를 저장하기 위한 재패킹 데이터 저장부를 포함하는 것을 특징으로 한다.The data storage unit may include a clean PC image generation unit for generating a clean PC image, a clean PC image storage unit for storing the clean PC image generated by the clean PC image generation unit, and an application in a virtualized clean PC environment. And a repacking data storage unit for storing repacking data generated by driving of the installation unit.

또한, 상기 클린PC 이미지 생성부는, 가상화된 클린PC환경하에서 클린PC의 구성요소인 폴더 및 파일 정보를 추출하는 파일정보 생성부와, 가상화된 클린PC환경하에서 클린PC의 구성요소인 레지스트리 정보를 추출하는 레지스트리정보 생성부와, 가상화된 클린PC의 구성요소를 통하여 클린PC 이미지를 생성, 수정, 삭제, 관리하기 위한 클린PC 이미지 관리부를 포함하는 것을 특징으로 한다.The clean PC image generation unit may include a file information generation unit that extracts folder and file information that is a component of the clean PC in a virtualized clean PC environment, and extracts registry information that is a component of the clean PC in a virtualized clean PC environment. And a clean PC image management unit for creating, modifying, deleting, and managing a clean PC image through components of the virtual PC.

또한, 상기 클린PC 이미지는, 어플리케이션 설치부가 실행되는 클린PC환경을 구성하기 위한 클린PC 구성요소로서, 폴더, 파일 및 레지스트리(registry) 정보를 포함하는 것을 특징으로 한다.In addition, the clean PC image is a clean PC component for configuring a clean PC environment in which the application installation unit is executed, and includes a folder, a file, and registry information.

또한, 상기 클린PC는, PC(Personal Computer) 하드웨어상에 윈도즈 운영체제만을 설치하고, 이 운영체제가 동반하는 기본 어플리케이션만이 설치된 PC상태인 것을 특징으로 한다.In addition, the clean PC is characterized in that the PC is installed only on the Windows operating system on the personal computer (PC) hardware, and only the basic application accompanying the operating system is installed.

또한, 상기 시스템은, 사용자의 요청에 따라 더티PC 환경의 호스트컴퓨터의 메모리에 로드되어 실행되며, 가상환경부를 메모리에 로드하고 실행하기 위한 가상환경 구동부를 더 포함하는 것을 특징으로 한다.In addition, the system is loaded and executed in the memory of the host computer of the dirty PC environment at the request of the user, characterized in that it further comprises a virtual environment driving unit for loading and executing the virtual environment in the memory.

또한, 상기 가상환경부는, 더티PC 환경의 호스트컴퓨터상에서 어플리케이션 설치부가 클린PC상에서 동작하는 것과 동일한 결과를 낼 수 있는 클린PC환경을 호스트 컴퓨터의 내부에 가상화하는 것을 특징으로 한다.The virtual environment unit may be configured to virtualize a clean PC environment in the host computer, which may produce the same result as the application installation unit operating on the clean PC, on the host computer in the dirty PC environment.

또한, 상기 클린PC환경은, 가상환경부가 클린PC 이미지에 기초하여 가상화된 가상환경요소를 어플리케이션 실행부에 제공해 줌으로서, 클린PC환경에서 어플리케이션 실행부가 동작하는 것과 동일한 결과를 낼 수 있는 환경을 포함하는 것을 특징으로 한다.In addition, the clean PC environment includes an environment in which the virtual environment unit provides a virtual environment element virtualized based on the clean PC image to the application execution unit, thereby producing the same result as the application execution unit operates in the clean PC environment. Characterized in that.

또한, 상기 더티PC 환경은, 클린PC환경의 호스트 컴퓨터에 소정의 어플리케이션이 한 개 이상 설치되어 있음으로 인해, 어플리케이션 설치부에 의해 설치되는 어플리케이션의 구성요소를 클린PC환경에서와 동일하게 얻을 수 없는 환경을 포함하는 것을 특징으로 한다.In addition, in the dirty PC environment, since one or more predetermined applications are installed in the host computer of the clean PC environment, the components of the application installed by the application installation unit cannot be obtained in the same way as in the clean PC environment. It is characterized by including the environment.

또한, 상기 가상화된 가상환경요소는, 기본적으로 가상 파일 시스템(Virtual File System)을 포함하는 것을 특징으로 한다. In addition, the virtualized virtual environment element, characterized in that it comprises a virtual file system (Virtual File System) basically.

또한, 상기 가상화된 가상환경요소는, 가상 파일 시스템(Virtual File System), 가상 레지스트리 시스템(Virtual Registry System) 및 가상 컴포넌트 시스템(Virtual Component System)을 포함하는 것을 특징으로 한다.In addition, the virtualized virtual environment element, characterized in that it comprises a virtual file system (Virtual File System), a virtual registry system (Virtual Registry System) and a virtual component system (Virtual Component System).

또한, 상기 어플리케이션 설치부는, 호스트 컴퓨터의 운영체제에 설치하여 사용할 수 있는 한, 어플리케이션의 구성요소와 설치정보를 포함하는 것을 특징으로 한다.The application installation unit may include components of the application and installation information as long as the application installation unit can be installed and used in an operating system of the host computer.

또한, 상기 어플리케이션의 구성요소는, 어플리케이션을 구성하는 폴더 및 파일 정보와 레지스트리 정보를 포함하는 것을 특징으로 한다.In addition, the component of the application is characterized in that it contains folder and file information and registry information constituting the application.

또한, 상기 재패킹 데이터는, 어플리케이션 설치부에 의해 설치되는 어플리케이션의 구성요소를 사용목적에 맞게 재구성한 것을 특징으로 한다.In addition, the repacking data is characterized in that the components of the application installed by the application installation unit is reconfigured according to the purpose of use.

또한, 상기 재패킹 데이터는, 블록단위로 실시간으로 저장되거나, 파일단위로 저장되는 것을 특징으로 한다.The repacking data may be stored in real time in units of blocks or in units of files.

본 발명의 제2 실시예에 따르면, 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 방법이 제공되는데, 상기 방법은 (a) 클린PC환 경의 가상화에 필요한 클린PC 이미지를 저장하는 단계와, (b) 가상환경부가, 저장된 클린PC 이미지에 기초하여 더티PC 환경의 호스트 컴퓨터상에 클린PC환경을 가상화하는 단계와, (c) 어플리케이션 설치부가, 가상화된 클린PC환경하에서 어플리케이션을 설치하는 단계와, (d) 가상환경부가, 어플리케이션을 설치하는 도중에 요청되는 메시지를 후킹하고, 후킹된 메시지에 기초하여 어플리케이션 설치부에 의해 쓰기 요청된 재패킹 데이터를 저장하는 단계를 포함하는 것을 특징으로 한다.According to a second embodiment of the present invention, there is provided a method for extracting repacking data of an application on a host computer in a dirty PC environment, the method comprising the steps of: (a) storing a clean PC image for virtualization of the clean PC environment; (B) the virtual environment unit virtualizing the clean PC environment on the host computer of the dirty PC environment based on the stored clean PC image, and (c) the application installation unit installs the application under the virtualized clean PC environment. And (d) hooking the message requested during the installation of the application by the virtual environment unit and storing the repacking data requested by the application installation unit based on the hooked message. .

또한, 상기 방법은, (d) 더티PC 환경의 호스트 컴퓨터의 메모리에 가상화된 클린PC환경에서 구동중인 어플리케이션 설치부의 실행을 종료하는 단계와, (e) 어플리케이션 설치부의 실행이 종료된 후, 가상화된 클린PC환경을 호스트 컴퓨터로부터 제거하는 단계와, (f) 더티PC 환경의 호스트 컴퓨터의 메모리에 로딩된 가상환경부와 가상환경 구동부를 더티PC 환경의 호스트 컴퓨터의 메모리로부터 제거하는 단계를 포함하는 것을 특징으로 한다.The method may further include (d) terminating execution of an application installer running in a clean PC environment virtualized in a memory of a host computer in a dirty PC environment, and (e) after execution of the application installer is terminated. Removing the clean PC environment from the host computer, and (f) removing the virtual environment unit and the virtual environment driver loaded in the memory of the host computer of the dirty PC environment from the memory of the host computer of the dirty PC environment. It is done.

또한, 상기 방법은, (g) 클린PC환경의 호스트 컴퓨터에 구성된 레지스트리 정보를 추출 하는 단계와, (h) 클린PC환경의 호스트 컴퓨터에 구성된 폴더 및 파일 정보를 추출하는 단계와, (i) 추출된 레지스트리 정보, 폴더 및 파일 정보에 기초하여 클린PC 이미지를 생성하는 단계를 포함하는 것을 특징으로 한다.In addition, the method includes the steps of: (g) extracting registry information configured on a host computer in a clean PC environment; (h) extracting folder and file information configured on a host computer in a clean PC environment; And generating a clean PC image based on the registered registry information, folder, and file information.

또한, 상기 방법은, (j) 소정의 클린PC 설치프로그램을 분석하여 레지스트리 정보를 추출하는 단계와, (k) 클린PC 설치프로그램을 분석하여 폴더 및 파일 정보를 추출하는 단계와, (l) 추출된 레지스트리 정보, 폴더 및 파일 정보에 기초하여 클린PC 이미지를 생성하는 단계를 포함하는 것을 특징으로 한다.In addition, the method comprises the steps of: (j) analyzing the predetermined clean PC installer to extract registry information, (k) analyzing the clean PC installer to extract folder and file information, and (l) extracting And generating a clean PC image based on the registered registry information, folder, and file information.

또한, 상기 클린PC 이미지는, 어플리케이션 설치부가 실행되는 클린PC환경을 구성하기 위한 클린PC 구성요소로서, 폴더, 파일 및 레지스트리(registry) 정보를 포함하는 것을 특징으로 한다.In addition, the clean PC image is a clean PC component for configuring a clean PC environment in which the application installation unit is executed, and includes a folder, a file, and registry information.

또한, 상기 클린PC는, PC(Personal Computer) 하드웨어상에 윈도즈 운영체제만을 설치하고, 이 운영체제가 동반하는 기본 어플리케이션만이 설치된 PC상태인 것을 특징으로 한다.In addition, the clean PC is characterized in that the PC is installed only on the Windows operating system on the personal computer (PC) hardware, and only the basic application accompanying the operating system is installed.

또한, 상기 가상환경부는, 더티PC 환경의 호스트컴퓨터상에서 어플리케이션 설치부가 클린PC상에서 동작하는 것과 동일한 결과를 낼 수 있는 클린PC환경을 호스트 컴퓨터의 내부에 가상화하는 것을 특징으로 한다.The virtual environment unit may be configured to virtualize a clean PC environment in the host computer, which may produce the same result as the application installation unit operating on the clean PC, on the host computer in the dirty PC environment.

또한, 상기 클린PC환경은, 가상환경부가 클린PC 이미지에 기초하여 가상화된 가상환경요소를 어플리케이션 실행부에 제공해 줌으로서, 클린PC환경에서 어플리케이션 실행부가 동작하는 것과 동일한 결과를 낼 수 있는 환경을 포함하는 것을 특징으로 한다.In addition, the clean PC environment includes an environment in which the virtual environment unit provides a virtual environment element virtualized based on the clean PC image to the application execution unit, thereby producing the same result as the application execution unit operates in the clean PC environment. Characterized in that.

또한, 상기 더티PC 환경은, 클린PC환경의 호스트 컴퓨터에 소정의 어플리케이션이 한 개 이상 설치되어 있음으로 인해, 어플리케이션 설치부에 의해 설치되는 어플리케이션의 구성요소를 클린PC환경에서와 동일하게 얻을 수 없는 환경을 포함하는 것을 특징으로 한다.In addition, in the dirty PC environment, since one or more predetermined applications are installed in the host computer of the clean PC environment, the components of the application installed by the application installation unit cannot be obtained in the same way as in the clean PC environment. It is characterized by including the environment.

또한, 상기 가상화된 가상환경요소는, 기본적으로 가상 레지스트리 시스템(Virtual Registry System)을 포함하는 것을 특징으로 한다.In addition, the virtualized virtual environment element, characterized in that it comprises a virtual registry system (Virtual Registry System) basically.

또한, 상기 가상화된 가상환경요소는, 가상 파일 시스템(Virtual File System), 가상 레지스트리 시스템(Virtual Registry System) 및 가상 컴포넌트 시스템(Virtual Component System)을 포함하는 것을 특징으로 한다.In addition, the virtualized virtual environment element, characterized in that it comprises a virtual file system (Virtual File System), a virtual registry system (Virtual Registry System) and a virtual component system (Virtual Component System).

또한, 상기 어플리케이션 설치부는, 호스트 컴퓨터의 운영체제에 설치하여 사용할 수 있는 한, 어플리케이션의 구성요소와 설치정보를 포함하는 것을 특징으로 한다.The application installation unit may include components of the application and installation information as long as the application installation unit can be installed and used in an operating system of the host computer.

또한, 상기 어플리케이션의 구성요소는, 어플리케이션을 구성하는 폴더 및 파일 정보와 레지스트리 정보를 포함하는 것을 특징으로 한다.In addition, the component of the application is characterized in that it contains folder and file information and registry information constituting the application.

또한, 상기 재패킹 데이터는, 어플리케이션 설치부에 의해 설치되는 어플리케이션의 구성요소를 사용목적에 맞게 재구성한 것을 특징으로 한다.In addition, the repacking data is characterized in that the components of the application installed by the application installation unit is reconfigured according to the purpose of use.

또한, 상기 재패킹 데이터는, 블록단위로 실시간으로 저장되거나 또는 파일단위로 저장되는 것을 특징으로 한다.The repacking data may be stored in real time in units of blocks or in units of files.

본 발명의 제3 실시예에 따르면, 상기 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 독출 가능한 기록매체가 제공된다.According to a third embodiment of the present invention, there is provided a computer-readable recording medium having recorded thereon a program for executing the method.

상술한 바와 같이, 본 발명에 따르면, 클린PC가 아닌 호스트 컴퓨터의 메모리상에서 클린PC 이미지를 사용하여 클린PC환경을 가상화하고, 가상화된 클린PC환경상에서 어플리케이션 설치부를 구동함으로서, 어플리케이션 설치부가 클린PC상에서 동작하는 것과 동일한 결과를 얻을 수 있으며, 이를 통해 클린PC가 아닌 더티PC상에서도 재패킹 데이터 생성을 위한 어플리케이션 구성요소를 쉽게 얻을 수 있다.As described above, according to the present invention, by using the clean PC image on the memory of the host computer instead of the clean PC, the clean PC environment is virtualized, and the application installation unit is driven on the clean PC by driving the application installation unit on the virtualized clean PC environment. You get the same results as it does, and you can easily get the application components for repacking data generation on dirty PCs instead of clean PCs.

또한, 본 발명에 따르면, 폴더 및 파일, 레지스트리 정보의 취합이 아닌 어 플리케이션 설치부의 실행에 따라 실시간으로 어플리케이션 구성요소를 재패킹할 수 있음으로 재패킹에 소요되는 시간을 단축하는 효과를 줄 수 있다.In addition, according to the present invention, the application component can be repacked in real time according to the execution of the application installation unit, rather than the collection of folders, files, and registry information, thereby reducing the time required for repacking. .

이하, 첨부도면을 참조하여 본 발명의 바람직한 실시예를 상세하게 설명한다. 이하에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description of the present invention, when it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.

먼저, 본 발명에 따른 기술적 사상을 당업자가 보다 용이하게 이해할 수 있도록 명세서상에 기술되는 클린PC환경 및 더티PC환경의 의미를 먼저 설명한다.First, the meanings of the clean PC environment and the dirty PC environment described in the specification will be described first so that those skilled in the art can more easily understand the technical idea according to the present invention.

"클린PC환경"이란, 클린PC의 운영체제상에서 어플리케이션이 실행될 때에 운영체제에 의해서 제공되는 파일시스템, 레지스트리시스템, 라이브러리, 문자폰트, DLL(Dynamic Link Library), COM(Component Object Model), RPC(Remote Procedure Call)등의 환경적인 요소들을 이야기한다.A "clean PC environment" is a file system, registry system, library, character font, dynamic link library (DLL), component object model (COM), or RPC (remote procedure) provided by an operating system when an application runs on a clean PC operating system. Talk about environmental factors such as Call.

한편, "더티PC환경"이란, 클린PC환경상에서 사용자들이 설치한 어플리케이션들에 의해 폴더 및 파일, 레지스트리, 문자폰트, DLL, COM, RPC 환경 및 데이터가 변경되어 새롭게 구성된 환경적인 요소들을 이야기한다. 더티PC환경은 클린PC환경을 포함하며, 사용자PC의 대부분은 운영체제 이외의 어플리케이션들이 설치된 상태이기 때문에 더티PC환경임을 알 수 있다.On the other hand, "dirty PC environment" refers to environmental elements newly configured by changing folders and files, registry, text font, DLL, COM, RPC environment, and data by applications installed by users in the clean PC environment. The dirty PC environment includes a clean PC environment, and most of the user PCs are dirty PC environments because applications other than the operating system are installed.

또한, "가상화"란 어플리케이션이 실행될 수 있는 가상의 환경을 메모리(200) 내에 구축하는 것을 의미한다.In addition, "virtualization" means building a virtual environment in the memory 200 in which the application can run.

또한, "재패킹(repacking)"이란 어플리케이션 설치부에 의해 설치된 어플리케이션을 서비스 목적에 적합하도록 재구성하는 것으로, 본 발명에서는 소스코드의 수정없이 하나의 파일안에 어플리케이션 파일, 폴더, 레지스트리를 포함시켜 서비스 가능한 데이터를 만드는 것을 의미한다.In addition, "repacking" refers to reconfiguring an application installed by an application installation unit to suit a service purpose. In the present invention, an application file, a folder, and a registry may be included in one file without modification of source code. To create data.

상술한 바와 같은 환경적인 요소들의 전체 혹은 일부를 어플리케이션 설치부(310)를 수행할 때 제공하기 위해, 운영체제상에 본 발명에 따른 호스트 컴퓨터(1000)의 데이터 저장부(300)에 저장된 가상환경부(320)를 사용하여 클린PC 이미지를 가상화하고, 어플리케이션 설치부(310)가 실행되는 중에 요청하는 클린PC의 폴더 및 파일 정보, 레지스트리 정보를 어플리케이션 설치부(310)에게 제공함으로써 어플리케이션 설치부(310)가 클린PC상에서 구동하는 것과 동일한 효과를 제공하는 환경적인 요소들이 구성된 것을 “클린PC환경”이라 언급하기로 한다.In order to provide all or a part of the environmental elements as described above when performing the application installation unit 310, the virtual environment unit stored in the data storage unit 300 of the host computer 1000 according to the present invention on the operating system ( 320, the clean PC image is virtualized, and the application installation unit 310 is provided by providing the application installation unit 310 with the folder and file information of the clean PC and the registry information which are requested while the application installation unit 310 is being executed. The environmental elements that provide the same effect as running on a clean PC are referred to as the "clean PC environment."

이하, 도면을 참조하여 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 시스템을 상세하게 설명한다.Hereinafter, a system for extracting repacking data of an application on a host computer in a dirty PC environment will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 호스트 PC, 유무선 데이터 통신 네트워크, 외부저장장치를 포함한 전체 시스템을 도시한 도면이며, 도 2은 본 발명의 실시예에 따른 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 호스트컴퓨터의 구성도이다. 한편, 도 3은 본 발명의 실시예에 따른 데이터 저장부의 클린PC 이미지 생성부의 구성도이며, 도 4는 본 발명에 따른 실시예에 따른 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션 설치부에 의해 가상화되는 클린PC환경을 도시한 도면이다.1 is a diagram showing an entire system including a host PC, a wired and wireless data communication network, and an external storage device according to an embodiment of the present invention, and FIG. 2 is a diagram illustrating an application on a host computer in a dirty PC environment according to an embodiment of the present invention. A diagram of a host computer extracting repacking data. On the other hand, Figure 3 is a block diagram of a clean PC image generating unit of the data storage unit according to an embodiment of the present invention, Figure 4 is a clean virtualized by the application installation unit on the host computer of the dirty PC environment according to an embodiment of the present invention A diagram showing a PC environment.

도 1 내지 도 4를 참조하면, 본 발명에 따른 시스템은, 도 2에 도시된 바와 같이, 호스트 컴퓨터(1000) 내부에 구성되는 중앙처리장치(100), 메모리(200), 테이터 저장부(300), 통신부(400)를 포함한다. 한편, 도 2에서 데이터 저장부(300)는 호스트 컴퓨터(1000)에 존재하는 것으로 도시되어 있으나, 데이터 저장부(300)는 도 1에서 도시된 바와 같이, 유무선 데이터 통신 네트워크(2000)를 통해 연결된 별도의 외부저장장치(3000)일 수 있다.1 to 4, as illustrated in FIG. 2, the system according to the present invention includes a central processing unit 100, a memory 200, and a data storage unit 300 that are configured inside the host computer 1000. ), The communication unit 400. Meanwhile, although the data storage unit 300 is shown in the host computer 1000 in FIG. 2, the data storage unit 300 is connected through the wired / wireless data communication network 2000 as shown in FIG. 1. It may be a separate external storage device 3000.

데이터 저장부(300)는 어플리케이션을 호스트 컴퓨터(1000)에 설치하기 위한 어플리케이션 설치부(310a)와, 사용자가 선택한 어플리케이션 설치부(310a)가 구동될 수 있는 클린PC환경(340a)을 가상화시키는 가상환경부(320a)와, 가상환경부(320a)를 메모리(200)에 로드하여 가상의 클린PC환경(340a)을 메모리(200)에 활성화시키고, 실행가능한 클린PC 이미지 리스트를 표시해주는 가상환경 구동부(330a)와, 가상환경부(320a)를 통해 클린PC환경을 가상화하고 어플리케이션 설치부(310a)가 요청하는 폴더 및 파일, 레지스트리 정보를 제공하는 클린PC 이미지 저장부(340)와, 어플리케이션 설치부(310a)에 의해 클린PC환경에 설치된 어플리케이션의 구성요소가 사용목적에 따라 재구성된 재패킹 데이터를 저장하는 재패킹 데이터 저장부(350)와, 클린PC 이미지를 생성하기 위한 클린PC 이미지 생성부(360)와, 데이터 저장부(300)에 저장된 데이터를 소정의 형식으로 읽고, 쓰는 파일시스템부(300a)를 포함하고 있다. The data storage unit 300 virtualizes the application installation unit 310a for installing the application in the host computer 1000 and the clean PC environment 340a in which the application installation unit 310a selected by the user can be driven. The virtual environment driver 330a which loads the environment unit 320a and the virtual environment unit 320a into the memory 200 to activate the virtual clean PC environment 340a in the memory 200 and displays a list of executable clean PC images. And a clean PC image storage unit 340 for virtualizing the clean PC environment through the virtual environment unit 320a and providing folder, file, and registry information requested by the application installation unit 310a, and the application installation unit 310a. Repacking data storage unit 350 for storing the repacking data reconstructed according to the purpose of the components of the application installed in the clean PC environment by using a clean PC for creating a clean PC image An image generator 360 and a file system 300a which read and write data stored in the data storage 300 in a predetermined format are included.

특히, 재패킹 데이터 저장부(350)는 어플리케이션 구성요소인 파일을 구별할 수 있는 인덱스 정보와 파일 데이터를 저장할 수 있는 한 개 또는 여러 개의 저장 공간으로 구성된다. 각 파일은 사용방법에 따라서 파일 또는 저장공간 단위로 압축되거나 압축되지 않을 수 있다.In particular, the repacking data storage unit 350 is composed of one or more storage spaces that can store the file information and the index information to distinguish the file as an application component. Each file may or may not be compressed in a file or storage unit according to a usage method.

또한, 재패킹 데이터 저장부(350)는 어플리케이션 구성요소인 파일의 데이터블록을 구별할 수 있는 인덱스 정보와 파일 데이터를 저장할 수 있는 한 개 또는 여러 개의 저장공간으로 구성된다. 어플리케이션 구성요소인 파일은 운영체제(210)가 메모리에 데이터를 로딩하는 것과 동일한 크기의 블록(block)으로 나누어서 저장되며, 각 블록은 사용방법에 따라 압축되거나 또는 압축되지 않을 수 있다.In addition, the repacking data storage unit 350 is composed of one or more storage spaces that can store the file data and index information to distinguish the data block of the file that is the application component. The file, which is an application component, is divided into blocks of the same size as the operating system 210 loads data into a memory, and each block may or may not be compressed according to a usage method.

한편, 데이터 저장부(300)의 어플리케이션 설치부(310a), 가상환경부(320a), 가상환경 구동부(330a)는 각각 호스트 컴퓨터(1000)의 메모리(200)에 로딩되어 실행되며, 이러한 각 부에 대응하는 메모리(200)내의 어플리케이션 설치부(310b), 가상환경부(320b), 가상환경 구동부(330b)를 도 2에서 도시하고 있다. 이러한 데이터 저장부(300)는 소정의 반도체 소자인 RAM 또는 ROM 등으로 구성되거나, Hard 디스크 등으로 구성될 수 있으며, 사용 방법에 따라 호스트 컴퓨터(1000)의 내부저장 장치인 Hard Disk 또는 외부저장장치(3000)인 외장 Hard Disk, CD/DVD-ROM, USB 메모리 등으로 대체될 수 있다. 또한, 데이터 저장부(300)에 저장되어 있는 데이터는 운영체제(210)가 인식할 수 있는 파일시스템부(300a)위에 저장된다.Meanwhile, the application installation unit 310a, the virtual environment unit 320a, and the virtual environment driver 330a of the data storage unit 300 are loaded and executed in the memory 200 of the host computer 1000, respectively. The application installation unit 310b, the virtual environment unit 320b, and the virtual environment driver 330b in the corresponding memory 200 are illustrated in FIG. 2. The data storage unit 300 may be configured with a predetermined semiconductor device, such as RAM or ROM, or may be configured with a hard disk. The hard disk or external storage device, which is an internal storage device of the host computer 1000, may be configured according to a method of use. It can be replaced with an external hard disk (3000), CD / DVD-ROM, USB memory, or the like. In addition, the data stored in the data storage unit 300 is stored on the file system unit 300a that can be recognized by the operating system 210.

가상환경부(320b)는 클린PC 이미지 저장부(340)에 저장된 클린PC 이미지에 기초하여, 호스트 컴퓨터(1000)의 운영체제(210)상에서 어플리케이션 설치부(310b)가 클린PC상에서 실행되는 것과 동일한 상태인 소정의 클린PC환경(340a)을 가상화한다. 보다 구체적으로 가상환경부(320b)는 가상 레지스트리 시스템(Virtual Registry System), 가상 파일 시스템(Virtual File System), 가상 컴포넌트 시스템(Virtual Component System) 등으로 호스트 컴퓨터(1000)의 메모리(200) 내부에 클린PC환경(340a)을 가상화시킨다. 이때 가상 파일 시스템은 필수적인 요소이나, 가상 레지스트리 시스템과 가상 컴포넌트는 필요에 따라 사용되지 않을 수도 있다.The virtual environment unit 320b may be in the same state as that of the application installation unit 310b running on the clean PC on the operating system 210 of the host computer 1000 based on the clean PC image stored in the clean PC image storage unit 340. The predetermined clean PC environment 340a is virtualized. More specifically, the virtual environment unit 320b is a virtual registry system, a virtual file system, a virtual component system, or the like, and cleans the inside of the memory 200 of the host computer 1000. Virtualize the PC environment 340a. In this case, the virtual file system is an essential element, but the virtual registry system and the virtual component may not be used if necessary.

여기서, "가상 파일 시스템(Virtual File System)"이란, 호스트 컴퓨터(1000)에 설치되어 있지 않은 폴더 및 파일 정보를 데이터 저장부(300)의 클린PC 이미지 저장부(340)를 참조하여 호스트 컴퓨터(1000)의 메모리(200)에 소정의 파일 데이터 및 폴더들이 존재하는 것과 같이 인식시키는 가상화된 가상환경을 말한다. 이러한 가상 파일 시스템은 운영체제에서 제공되는 FSD(File System Driver)와 유사하다. 즉, 응용프로그램 설치부(310b)가 어플리케이션을 설치하는 도중에 운영체제(210)에 요청하는 메시지를 후킹(hooking)한다. 이때 응용프로그램 설치부(310b)에 의해 요청되는 메시지는 파일의 데이터블록을 호출(call)하는 메시지이다. 이후, 가상 파일 시스템은 후킹된 메시지에 기초하여 어플리케이션 설치부(310b)가 쓰기요청하는 재패킹 데이터를 재패킹 데이터 저장부(350)에 저장한다. 여기서, 본 발명에서 후킹이란 모니터링의 의미로 사용된다.Here, " virtual file system " refers to a folder and file information that is not installed in the host computer 1000, by referring to the clean PC image storage unit 340 of the data storage unit 300 with the host computer ( It refers to a virtualized virtual environment that recognizes that predetermined file data and folders exist in the memory 200 of 1000. This virtual file system is similar to the FSD (File System Driver) provided by the operating system. That is, the application installation unit 310b hooks a message requesting the operating system 210 while installing the application. In this case, the message requested by the application installation unit 310b is a message for calling a data block of a file. Thereafter, the virtual file system stores the repacking data written by the application installation unit 310b in the repacking data storage unit 350 based on the hooked message. Here, in the present invention, hooking is used to mean monitoring.

한편, "가상 레지스트리 시스템(Virtual Registry System)"이란, 호스트 컴퓨터(1000)에 설치되어 있지 않은 레지스트리 키(Key)및 데이터(Value)를 데이터 저장부(300)의 클린PC 이미지 저장부(340)를 참조하여 호스트 컴퓨터(1000)의 메모리(200)에 소정의 레지스트리 키(Key)및 데이터(Value)들이 존재하는 것과 같이 인식시키는 가상화된 가상환경을 말한다.On the other hand, a "virtual registry system" means a registry key and data that are not installed in the host computer 1000, and the clean PC image storage unit 340 of the data storage unit 300. A virtualized virtual environment that recognizes a predetermined registry key and data in the memory 200 of the host computer 1000 with reference to FIG.

마찬가지로, 가상 레지스트리 시스템은 운영체제에서 제공하는 RSD(Registry System Driver)와 유사하다. 즉, 응용프로그램 설치부(310b)가 어플리케이션을 설치하는 도중에 운영체제(210)에 요청하는 메시지를 후킹(hooking)한다. 이때 응용프로그램 설치부(310b)에 의해 요청되는 메시지는 레지스트리 키(Key) 또는 값(value)이다. 이후 가상 레지스트리 시스템은 후킹된 메시지에 기초하여 어플리케이션 설치부(310b)가 쓰기요청하는 재패킹 데이터를 재패킹 데이터 저장부(350)에 저장한다.Similarly, the virtual registry system is similar to the RSD (Registry System Driver) provided by the operating system. That is, the application installation unit 310b hooks a message requesting the operating system 210 while installing the application. At this time, the message requested by the application installation unit 310b is a registry key or value. Thereafter, the virtual registry system stores the repacking data written by the application installation unit 310b in the repacking data storage unit 350 based on the hooked message.

또한, "가상 컴포넌트 시스템(Virtual Component System)"이란, 호스트 컴퓨터(1000)에 설치되어 있지 않은 컴포넌트 또는 DLL(Dynamic Link Library)파일들을 데이터 저장부(300)의 클린PC 이미지 저장부(340)를 참조하여 호스트 컴퓨터(1000)의 메모리(200)에 소정의 컴포넌트 또는 DLL 파일들이 존재하는 것과 같이 인식시키는 가상화된 가상환경을 말한다.In addition, the "Virtual Component System" refers to a component or DLL (Dynamic Link Library) files that are not installed in the host computer 1000 to the clean PC image storage unit 340 of the data storage unit 300. A virtualized virtual environment that recognizes as if a predetermined component or DLL files exist in the memory 200 of the host computer 1000 by reference.

이와 같이, 가상환경부(320b)는 클린PC환경(340a)을 호스트 컴퓨터(1000)의 메모리(200)에 가상화시킨다. 또한, 가상환경부(320b)는 가상화된 클린PC환경(340a)에서 어플리케이션 설치부(310b)가 어플리케이션을 설치하는 도중에 운영체제(210)에 요청하는 메시지를 후킹하고, 후킹된 메시지에 기초하여 어플리케이션 설치부(310b)가 쓰기 요청한 메시지를 재패키징 데이터 저장부(350)에 저장한다.As such, the virtual environment unit 320b virtualizes the clean PC environment 340a in the memory 200 of the host computer 1000. In addition, the virtual environment unit 320b hooks a message requesting the operating system 210 while the application installation unit 310b installs the application in the virtualized clean PC environment 340a, and based on the hooked message, the application installation unit. The message 310 310 writes to the repackaging data storage unit 350 stores the write request message.

이때, 클린PC환경(340a)상에서 동작하는 어플리케이션 설치부(310b)의 요청에 따른 메시지인, 읽기(read) 데이터는 통신버스(150a)를 통해 데이터 저장부(300)에 있는 클린PC 이미지 저장부(340)로부터 전달되며, 어플리케이션 설치 부(310)의 요청에 따른 쓰기(write) 데이터는 통신버스(150b)를 통해 데이터 저장부(300)에 있는 재패킹 데이터 저장부(350)로 전달된다. 이때 한번 쓰기(write)된 재패킹 데이터 저장부(350)에 있는 데이터는 어플리케이션 설치부(310)의 요청에 따라 다음의 읽기(read) 요청에 따른 데이터로 쓰여지게 된다. 즉 어플리케이션 설치부(310)에 의해 재패킹 데이터 저장부(350)에 쓰여진 데이터는 현재 실행중인 어플리케이션 설치부(310)의 읽기(read)요청에 따른 결과 데이터로 사용되어질 수 있다.At this time, read data, which is a message according to a request of the application installation unit 310b operating on the clean PC environment 340a, is stored in the clean PC image storage unit in the data storage unit 300 through the communication bus 150a. The data is transferred from the data storage unit 350 in the data storage unit 300 through the communication bus 150b. At this time, the data in the repacking data storage unit 350 that is written once is written as data according to the next read request according to the request of the application installation unit 310. That is, data written to the repacking data storage unit 350 by the application installer 310 may be used as result data according to a read request of the application installer 310 currently being executed.

다른 실시예로, 가상환경부(320b)는 스냅샷 방식을 사용해서 재패킹 데이터를 추출할수도 있다. 즉, 가상환경부(320b)는 클린PC환경(340a)을 호스트 컴퓨터(1000)의 메모리(200)에 가상화시킨 후, 가상화된 클린PC환경(340a)에서 운영체제(210)의 첫번째 파일 및 폴더의 스냅샷을 생성한다. 이후 어플리케이션 설치부(310b)에 의해 어플리케이션 설치가 종료되면, 운영체제(210)의 두번째 파일 및 폴더의 스냅샷을 생성한다. 마지막으로, 가상환경부(320b)는 두번째 스냅샷과 첫번째 스냅샷의 차이를 재패킹 데이터로 하여 재패킹 데이터 저장부(350)에 저장할 수 있다. 이러한 방식은 가상의 클린PC환경(340a)상에서 스냅샷을 이용한다는 점에서, 실제 클린PC 상에서 스냅샷을 이용하는 종래기술과 구별된다.In another embodiment, the virtual environment unit 320b may extract the repacking data using a snapshot method. That is, the virtual environment unit 320b virtualizes the clean PC environment 340a in the memory 200 of the host computer 1000, and then snaps the first files and folders of the operating system 210 in the virtualized clean PC environment 340a. Create a shot. After the installation of the application is terminated by the application installation unit 310b, a snapshot of the second file and folder of the operating system 210 is generated. Finally, the virtual environment unit 320b may store the difference between the second snapshot and the first snapshot as the repacking data in the repacking data storage unit 350. This approach differs from the prior art using snapshots on an actual clean PC in that the snapshots are used on a virtual clean PC environment 340a.

한편, 가상환경 구동부(330b)는 데이터 저장부(300)에 저장된 가상환경부(320a)를 호스트 컴퓨터(1000)의 메모리(200)에 로드하고, 로드된 가상환경부(320b)를 활성화하여 클린PC환경(340a)이 가상화되도록 한다. 즉, 도 4에서 도시된 바와 같이, 클린PC환경(340a)이 호스트 컴퓨터(1000)의 메모리(200)에 가상화된 다. 이와 같이 가상환경 구동부(330b)는, 통신버스(150)을 통하여 통신 접속하여 데이터 저장부(300)로부터 사용 가능한 클린PC 이미지 리스트를 호스트 컴퓨터(1000)의 디스플레이 장치에 표시하고, 사용자에 의해 선택된 가상환경부(320b)를 구동시킴으로써, 메모리(200)에 가상의 클린PC환경(340a)을 구성한다.The virtual environment driver 330b loads the virtual environment 320a stored in the data storage 300 into the memory 200 of the host computer 1000 and activates the loaded virtual environment 320b to clean the PC environment. Let 340a be virtualized. That is, as shown in FIG. 4, the clean PC environment 340a is virtualized in the memory 200 of the host computer 1000. As such, the virtual environment driver 330b communicates through the communication bus 150 to display a list of clean PC images available from the data storage unit 300 on the display device of the host computer 1000, and is selected by the user. By driving the virtual environment part 320b, the virtual clean PC environment 340a is comprised in the memory 200. FIG.

한편, 클린PC 이미지 저장부(340)는 가상환경부(320)에 의해 클린PC환경(340a)을 가상화하기 위한 데이터인 클린PC 이미지를 저장한다. 여기서 "클린PC 이미지"란 호스트 컴퓨터(1000)에 설치되어 실행될 수 있는 어플리케이션 구성요소인 폴더 및 파일 정보, 레지스트리 정보, 폴더 및 파일의 이름, 경로정보, 날짜 정보, 속성(Attribute) 정보, 버전정보를 포함하며, 일부 파일에 대해서는 파일의 내용인 데이터를 포함할 수도 있고 포함하지 않을 수도 있다. 또한 필요에 따라서는 레지스트리(registry) Key 값과 Value값을 포함할 수 있다.The clean PC image storage unit 340 stores the clean PC image, which is data for virtualizing the clean PC environment 340a by the virtual environment unit 320. Here, the "clean PC image" refers to folder and file information, registry information, folder and file name, path information, date information, attribute information, and version information, which are application components that can be installed and executed on the host computer 1000. For some files, it may or may not contain data that is the contents of the file. If necessary, it can also include a registry key value and a value value.

한편, 파일시스템부(300a)는 컴퓨터(200)의 운영체제(Operating System)가 인식할 수 있는 FAT, FAT16, FAT32, NTFS, exe32 등과 같은 소정의 파일 형태를 갖는다. 이때, 파일시스템부(300a)는 호스트 컴퓨터(1000)의 데이터 저장부(300)에 저장될 수도 있고 또는 저장되지 않을 수도 있다는 점에 유의하여야 한다.On the other hand, the file system unit 300a has a predetermined file type such as FAT, FAT16, FAT32, NTFS, exe32, and the like that can be recognized by an operating system of the computer 200. In this case, it should be noted that the file system unit 300a may or may not be stored in the data storage unit 300 of the host computer 1000.

클린PC 이미지 생성부(360)는 메모리(200)내에 클린PC환경(340a)을 가상화하는데 필요한 클린PC 이미지를 생성하고, 생성된 클린PC 이미지를 클린PC 이미지 저장부(340)에 저장하는데, 그 구체적인 구성은 도 3에 도시된 바와 같다.The clean PC image generating unit 360 generates a clean PC image required to virtualize the clean PC environment 340a in the memory 200, and stores the generated clean PC image in the clean PC image storage unit 340. The detailed configuration is as shown in FIG.

즉, 도 3을 참조하면, 파일정보 생성부(361)는 클린PC의 폴더 및 파일 정보를 추출하며, 레지스트리정보 생성부(362)는 클린PC의 레지스트리 정보를 추출하 며, 클린PC 이미지 관리부(363)는 생성된 정보를 통해 클린PC 이미지를 생성, 수정, 삭제, 관리한다. 본 발명에서, 클린PC 이미지 생성부(360)는 임의의 호스트 컴퓨터(1000)에 어플리케이션을 구동하기 위한 최소의 소프트웨어가 설치된 상태, 즉 클린PC에서 클린PC 이미지 저장부(340)를 생성하는 것을 예로 들었지만, 활용방법에 따라서는 운영체제 설치CD, Ghost로 생성된 운영체제 이미지파일, VMWare로 생성된 운영체제 이미지파일 등을 통해서도 생성될 수 있다는 점에 유의하여야 한다.That is, referring to FIG. 3, the file information generation unit 361 extracts the folder and file information of the clean PC, the registry information generation unit 362 extracts the registry information of the clean PC, and the clean PC image management unit ( 363) creates, modifies, deletes and manages a clean PC image through the generated information. In the exemplary embodiment of the present invention, the clean PC image generating unit 360 generates a clean PC image storage unit 340 in a state where the minimum software for driving an application is installed in an arbitrary host computer 1000, that is, the clean PC. However, it should be noted that depending on the application method, it can also be created from the OS installation CD, the OS image file created by Ghost, or the OS image file created by VMWare.

한편, 통신부(400)는 데이터 저장부(300)에 저장된 데이터를 소정의 형식으로, 읽고(read) 쓰는(write) 호스트 컴퓨터(1000)내의 중앙처리장치(100)와 메모리(200)등의 다양한 장치들간의 통신을 제어하여 통신버스(150)를 통한 데이터의 흐름을 제어한다. 또한 통신부(400)는 통신버스(150)를 통해 외부장치와의 통신을 위한 유무선 데이터 통신망(2000)으로 사용될 수 있으며, 이럴 경우 USB, USB2, Serial/Parallel Port, Ethernet, TCP/IP 등과 같은 기설정된 통신규약(protocol)에 기초하여 데이터의 흐름을 제어한다.Meanwhile, the communication unit 400 reads and writes data stored in the data storage unit 300 in a predetermined format, such as the central processing unit 100 and the memory 200 in the host computer 1000. By controlling the communication between the devices to control the flow of data through the communication bus (150). In addition, the communication unit 400 may be used as a wired or wireless data communication network 2000 for communication with an external device through the communication bus 150. In this case, devices such as USB, USB2, Serial / Parallel Port, Ethernet, TCP / IP, etc. The flow of data is controlled based on the established communication protocol.

통신버스(150)는 호스트 컴퓨터(1000)내의 상이한 디바이스들간에 데이터, 명령, 다른 정보의 전달을 지원하며, 도면에서는 단순하게 단일 버스로 도시되어 있으나 통상적으로는 통신 버스는 다중 버스로 구성되며 또한 계층 형태로 구성될 수도 있다. 또한 유무선 데이터 통신망으로 사용되는 경우 Cable, 전파, 빛, 적외선 등과 같은 유무선 데이터 통신 매개체로 볼 수 있다.The communication bus 150 supports the transfer of data, commands, and other information between different devices in the host computer 1000. In the drawing, the communication bus 150 is illustrated as a single bus. It may be configured in a hierarchical form. In addition, when used as a wired or wireless data communication network, it can be viewed as a wired or wireless data communication medium such as cable, radio waves, light, and infrared rays.

메모리(200)는 소정의 반도체 소자인 RAM 또는 ROM뿐만 아니라 이들의 변형 형태인 FRAM 등으로 구성될 수 있고, 소정의 어플리케이션을 더티PC환경(210a)에서 구동시키기 위한 운영체제(210)와 다양한 데이터 파일을 저장한다. 또한, 메모리(200)는 운영체제(210)의 제어신호에 따라 통신버스(150)를 통해 데이터 저장부(300)로부터 로딩된 가상환경부(320b)와 가상환경 구동부(330b)을 저장한다.The memory 200 may include RAM or ROM, which is a predetermined semiconductor element, as well as FRAM, which is a modified form thereof, and the operating system 210 and various data files for driving a predetermined application in the dirty PC environment 210a. Save it. In addition, the memory 200 stores the virtual environment 320b and the virtual environment driver 330b loaded from the data storage unit 300 through the communication bus 150 according to a control signal of the operating system 210.

한편, 도 5는 본 발명에 따른 실시예에 따른 더티PC 환경의 호스트 컴퓨터(1000)상에서 어플리케이션의 재패킹 데이터를 추출하는 방법을 도시한 흐름도로, 본 발명의 이해를 위해 도 1 내지 도 4와 관련하여 중복적인 설명을 생략하기로 한다.5 is a flowchart illustrating a method of extracting repacking data of an application on a host computer 1000 in a dirty PC environment according to an embodiment of the present invention. In this regard, duplicate descriptions will be omitted.

도 1 내지 도 5를 참조하면, 단계 501에서, 호스트 컴퓨터(1000)의 데이터 저장부(300)에 있는 가상환경 구동부(330a)가 메모리(200)에 로드되어 실행된다. 도면부호 330b는 메모리(200)에 로딩된 데이터 저장부(300)에 있는 가상환경 구동부(330a)를 의미한다.1 to 5, in operation 501, the virtual environment driver 330a of the data storage unit 300 of the host computer 1000 is loaded and executed in the memory 200. Reference numeral 330b denotes a virtual environment driver 330a in the data storage unit 300 loaded in the memory 200.

단계 502에서, 단계 501에서 실행된 가상환경 구동부(330a)는 호스트 컴퓨터(1000)의 데이터 저장부(300)로부터 가상환경부(320a)를 메모리에 로드하고, 로드된 가상환경부(320a)를 실행시킨다. 마찬가지로, 도면부호 320b는 메모리(200)에 로딩된 데이터 저장부(300)에 있는 가상환경 구동부(320a)를 의미한다.In operation 502, the virtual environment driver 330a executed in operation 501 loads the virtual environment unit 320a into the memory from the data storage unit 300 of the host computer 1000, and executes the loaded virtual environment unit 320a. . Likewise, reference numeral 320b denotes a virtual environment driver 320a in the data storage unit 300 loaded in the memory 200.

이후, 단계 503에서, 가상환경부(320b)가 실행되면, 구동 가능한 클린PC 이미지의 리스트들이 호스트 컴퓨터(1000)의 디스플레이장치에 표시되며, 이후 사용자에 의해 소정의 클린PC 이미지의 리스트가 선택된다.Thereafter, when the virtual environment unit 320b is executed, the list of driveable clean PC images is displayed on the display device of the host computer 1000, and then a list of predetermined clean PC images is selected by the user.

이후 단계 504에서, 가상환경부(320)는 사용자에 의해 선택된 클린PC 이미지에 기초하여 클린PC환경(340a)을 호스트 컴퓨터(1000)의 메모리(200)에 가상화한 다.Thereafter, in operation 504, the virtual environment unit 320 virtualizes the clean PC environment 340a in the memory 200 of the host computer 1000 based on the clean PC image selected by the user.

이후, 단계 505에서는, 가상화된 클린PC환경(340a) 상에서 어플리케이션 설치부(310b)가 실행된다.Thereafter, in step 505, the application installation unit 310b is executed on the virtualized clean PC environment 340a.

단계 506에서, 가상환경부(320)는 어플리케이션이 설치되는 도중에 어플리케이션 설치부(310b)가 요청하는 메시지를 후킹하고, 후킹된 메시지가 읽기(read) 요청 메시지라면, 읽기 요청 메시지에 기초하여 어플리케이션 설치부(310b)가 일기 요청한 데이터인, 클린PC 이미지를 클린PC 이미지 저장부(340)로부터 메모리로 실시간 로딩한다.In operation 506, the virtual environment unit 320 hooks a message requested by the application installation unit 310b while the application is being installed, and if the hooked message is a read request message, the application installation unit based on the read request message. The clean PC image, which is the data requested by 310b, is loaded in real time from the clean PC image storage unit 340 to the memory.

반면, 후킹된 메시지가 쓰기 요청에 관한 메시지라면, 단계 507에서 가상환경부(320)는 쓰기 요청 메시지에 기초하여 어플리케이션 설치부(310b)가 쓰기 요청한 데이터인, 재패킹 데이터를 데이터 저장부(300)의 재패키징 데이터 저장부(350)에 저장한다.On the other hand, if the hooked message is a message relating to the write request, the virtual environment unit 320 in step 507 based on the write request message, the data storage unit 300 repacking data, which is the data requested by the application installation unit 310b write request Store in the repackaging data storage unit 350.

어플리케이션 설치부(310)는 가상의 클린PC환경(340a) 상에서 소정의 어플리케이션을 설치하게 되며, 그에 따라 가상환경부(320)는 단계 506 내지 단계 507과 같이, 클린PC 이미지를 클린PC 이미지 저장부(340)로부터 실시간으로 메모리에 로딩하거나, 또는 재패킹 데이터를 재패킹 데이터 저장부(350)에 저장하게 된다. 본 발명에 의하면, 가상환경부(320)는 재패킹 데이터를 실시간으로 데이터블록단위로 저장하거나 또는 여러개의 블록이 합쳐진 파일단위로 저장할 수 있다.The application installation unit 310 installs a predetermined application on the virtual clean PC environment 340a. Accordingly, the virtual environment unit 320 converts the clean PC image into a clean PC image storage unit (steps 506 to 507). The data may be loaded into the memory in real time from the 340 or the repacking data may be stored in the repacking data storage 350. According to the present invention, the virtual environment unit 320 may store the repacking data in a data block unit in real time or in a file unit in which several blocks are combined.

한편, 도 6은 본 발명의 실시예에 따른 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 방법에서 클린PC환경을 분리하는 방법을 도시한 흐름도이다.6 is a flowchart illustrating a method of separating a clean PC environment in a method of extracting repacking data of an application on a host computer of a dirty PC environment according to an exemplary embodiment of the present invention.

도 1 내지 도 4, 도 6을 참조하면, 단계 601에서, 어플리케이션 설치부(310)가 종료되면, 단계 602에서, 가상환경부(320b)는 메모리(200)에 가상화된 클린PC환경(340a)을 제거한다. 이후, 단계 603에서, 어플리케이션 설치부(310b) 가상환경부(320b), 가상환경 구동부(330b)는 메모리(200)로부터 제거된다.1 to 4 and 6, in step 601, when the application installation unit 310 is finished, in step 602, the virtual environment unit 320b stores the clean PC environment 340a virtualized in the memory 200. Remove Thereafter, in step 603, the application installation unit 310b, the virtual environment unit 320b, and the virtual environment driver 330b are removed from the memory 200.

한편, 도 7은 본 발명의 실시예에 따른 호스트 컴퓨터상에서 어플리케이션 재패킹을 위한 추출 방법에서 클린PC 이미지를 생성하는 방법을 도시한 흐름도이다.7 is a flowchart illustrating a method of generating a clean PC image in an extraction method for repacking an application on a host computer according to an exemplary embodiment of the present invention.

도 1 내지 도 4, 도 7을 참조하면, 단계 701에서, 클린PC 이미지 생성부(360)는 클린PC에 구성된 레지스트리 정보를 추출한다. 이와 별도로, 단계 702에서, 클린PC 이미지 생성부(360)는 클린PC에 구성된 폴더 및 파일 정보를 추출한다. 단계 703에서, 클린PC 이미지 생성부(360)는 폴더 및 파일, 레지스트리 정보를 사용하여 클린PC 이미지를 생성한다. 생성된 클린PC 이미지는 클린PC 이미지 저장부(340)에 저장된다.1 to 4 and 7, in step 701, the clean PC image generator 360 extracts registry information configured in the clean PC. Separately, in step 702, the clean PC image generator 360 extracts folder and file information configured in the clean PC. In operation 703, the clean PC image generator 360 generates a clean PC image by using folders, files, and registry information. The generated clean PC image is stored in the clean PC image storage unit 340.

한편, 도 8은 본 발명의 실시예에 따른 더티PC 환경의 호스트 컴퓨터(1000)상에서 어플리케이션의 재패킹 데이터를 추출하는 방법에서 클린PC 어플리케이션 설치부(310)를 분석하여 재패킹 데이터를 추출하는 방법을 도시한 흐름도로, 도 7과 달리 별도의 클린PC 설치 프로그램을 사용하는 경우이다.8 is a method of extracting repacking data by analyzing a clean PC application installer 310 in a method of extracting repacking data of an application on a host computer 1000 of a dirty PC environment according to an exemplary embodiment of the present invention. 7 is a flowchart illustrating a separate clean PC installation program unlike FIG. 7.

도 1 내지 도 4, 도 8을 참조하면, 단계 801에서, 클린PC 이미지 생성부(360)는 클린PC 설치프로그램을 분석하여 레지스트리 정보를 추출한다. 이와 별 도로, 단계 802에서, 클린PC 이미지 생성부(360)는 클린PC 설치프로그램을 분석하여 폴더 및 파일 정보를 추출한다. 단계 803에서, 클린PC 이미지 생성부(360)는 폴더 및 파일, 레지스트리 정보를 사용하여 클린PC 이미지를 생성한다. 생성된 클린PC 이미지는 클린PC 이미지 저장부(340)에 저장된다.1 through 4 and 8, in step 801, the clean PC image generator 360 extracts registry information by analyzing a clean PC installation program. Apart from this, in step 802, the clean PC image generating unit 360 analyzes the clean PC installation program and extracts folder and file information. In operation 803, the clean PC image generator 360 generates a clean PC image by using folders, files, and registry information. The generated clean PC image is stored in the clean PC image storage unit 340.

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브 (예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like, and may also be implemented in the form of a carrier wave (for example, transmission over the Internet). Include. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이상 도면과 명세서에서 최적 실시예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.The best embodiments have been disclosed in the drawings and specification above. Although specific terms have been used herein, they are used only for the purpose of describing the present invention and are not used to limit the scope of the present invention as defined in the meaning or claims. Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible from this. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

도 1은 본 발명의 실시예에 따른 호스트 컴퓨터, 유무선 데이터 통신 네트워크, 외부저장장치를 포함한 시스템을 도시한 도면이다.1 is a diagram illustrating a system including a host computer, a wired / wireless data communication network, and an external storage device according to an exemplary embodiment of the present invention.

도 2는 본 발명의 실시예에 따른 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 시스템의 구성도이다.2 is a block diagram of a system for extracting repacking data of an application on a host computer in a dirty PC environment according to an embodiment of the present invention.

도 3은 본 발명의 실시예에 따른 데이터 저장부의 클린PC 이미지 생성부의 구성도이다. 3 is a block diagram of a clean PC image generator of a data storage unit according to an exemplary embodiment of the present invention.

도 4는 본 발명에 따른 실시예에 따른 더티PC 환경의 호스트 컴퓨터상에서 가상환경부에 의해 가상화된 클린PC환경을 도시한 도면이다.4 is a diagram illustrating a clean PC environment virtualized by a virtual environment unit on a host computer of a dirty PC environment according to an embodiment of the present invention.

도 5는 본 발명에 따른 실시예에 따른 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 방법을 도시한 흐름도이다.5 is a flowchart illustrating a method of extracting repacking data of an application on a host computer in a dirty PC environment according to an embodiment of the present invention.

도 6은 본 발명의 실시예에 따른 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 방법에서 클린PC환경을 분리하는 방법을 도시한 흐름도이다.6 is a flowchart illustrating a method of separating a clean PC environment in a method of extracting repacking data of an application on a host computer of a dirty PC environment according to an embodiment of the present invention.

도 7은 본 발명의 실시예에 따른 호스트 컴퓨터상에서 어플리케이션 재패킹을 위한 추출 방법에서 클린PC 이미지를 생성하는 방법을 도시한 흐름도이다.7 is a flowchart illustrating a method of generating a clean PC image in an extraction method for repacking an application on a host computer according to an exemplary embodiment of the present invention.

도 8은 본 발명의 실시예에 따른 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 방법에서 클린PC 어플리케이션 설치부를 분석하여 재패킹 데이터를 추출하는 방법을 도시한 흐름도이다.8 is a flowchart illustrating a method of extracting repacking data by analyzing a clean PC application installer in a method of extracting repacking data of an application on a host computer in a dirty PC environment according to an exemplary embodiment of the present invention.

Claims (33)

더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 시스템으로서,A system for extracting application repacking data on a host computer in a dirty PC environment, 클린PC환경의 가상화에 필요한 클린PC 이미지와 상기 어플리케이션의 설치 중에 생성되는 재패킹 데이터를 저장하는 데이터 저장부;A data storage unit for storing a clean PC image required for virtualization of a clean PC environment and repacking data generated during installation of the application; 상기 데이터 저장부에 저장된 클린PC 이미지에 기초하여, 상기 더티PC 환경의 호스트 컴퓨터상에 클린PC환경을 가상화하는 가상환경부;A virtual environment unit configured to virtualize a clean PC environment on a host computer of the dirty PC environment based on the clean PC image stored in the data storage unit; 상기 가상화된 클린PC환경하에서 어플리케이션을 설치하는 어플리케이션 설치부를 포함하며,It includes an application installation unit for installing the application in the virtualized clean PC environment, 상기 가상환경부는 상기 어플리케이션 설치부에 의해 요청되는 메시지를 후킹하고, 상기 후킹된 메시지에 기초하여 상기 어플리케이션 설치부가 쓰기 요청한 재패킹 데이터를 상기 데이터 저장부에 저장하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The virtual environment unit hooks a message requested by the application installation unit, and stores the repacking data requested by the application installation unit, based on the hooked message, in the data storage unit. System to extract them. 제1항에 있어서, The method of claim 1, 상기 데이터 저장부는, The data storage unit, 상기 클린PC 이미지를 생성하기 위한 클린PC 이미지 생성부; A clean PC image generator for generating the clean PC image; 상기 클린PC 이미지 생성부에서 생성된 클린PC 이미지를 저장하기 위한 클린PC 이미지 저장부; 및 A clean PC image storage unit for storing a clean PC image generated by the clean PC image generation unit; And 상기 가상화된 클린PC환경상에서 상기 어플리케이션 설치부의 구동에 의해 생성되는 재패킹 데이터를 저장하기 위한 재패킹 데이터 저장부를 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.And a repacking data storage unit configured to store repacking data generated by driving the application installation unit in the virtualized clean PC environment. 제2항에 있어서, The method of claim 2, 상기 클린PC 이미지 생성부는, The clean PC image generation unit, 상기 가상화된 클린PC환경하에서 클린PC의 구성요소인 폴더 및 파일 정보를 추출하는 파일정보 생성부; A file information generation unit for extracting folder and file information which is a component of a clean PC in the virtualized clean PC environment; 상기 가상화된 클린PC환경하에서 클린PC의 구성요소인 레지스트리 정보를 추출하는 레지스트리정보 생성부; 및 A registry information generating unit for extracting registry information which is a component of a clean PC under the virtualized clean PC environment; And 상기 가상화된 클린PC의 구성요소를 통하여 클린PC 이미지를 생성, 수정, 삭제, 관리하기 위한 클린PC 이미지 관리부를 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.And a clean PC image management unit for creating, modifying, deleting, and managing a clean PC image through the components of the virtualized clean PC. 제1항에 있어서, The method of claim 1, 상기 클린PC 이미지는, 상기 어플리케이션 설치부가 실행되는 클린PC환경을 구성하기 위한 클린PC 구성요소로서, 폴더, 파일 및 레지스트리(registry) 정보를 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The clean PC image is a clean PC component for constructing a clean PC environment in which the application installation unit is executed, and includes a folder, a file, and registry information. . 제1항에 있어서, The method of claim 1, 상기 클린PC는, PC(Personal Computer) 하드웨어상에 윈도즈 운영체제만을 설치하고, 이 운영체제가 동반하는 기본 어플리케이션만이 설치된 PC상태인 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The clean PC is a system for extracting the repacking data of the application, characterized in that only the Windows operating system is installed on the PC (Personal Computer) hardware, and only the basic application accompanying the operating system is installed. 제1항에 있어서, The method of claim 1, 상기 시스템은, 사용자의 요청에 따라 상기 더티PC 환경의 호스트컴퓨터의 메모리에 로드되어 실행되며, 상기 가상환경부를 상기 메모리에 로드하고 실행하기 위한 가상환경 구동부를 더 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The system may be loaded and executed in a memory of a host computer of the dirty PC environment according to a user's request, and further including a virtual environment driver for loading and executing the virtual environment into the memory. System for extracting packing data. 제1항에 있어서, The method of claim 1, 상기 가상환경부는, 상기 더티PC 환경의 호스트컴퓨터상에서 상기 어플리케이션 설치부가 클린PC상에서 동작하는 것과 동일한 결과를 낼 수 있는 클린PC환경을 상기 호스트 컴퓨터의 내부에 가상화하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The virtual environment unit, the repacking data of the application, characterized in that to virtualize a clean PC environment in the host computer on the host computer in the dirty PC environment that can produce the same results as operating on a clean PC. System to extract them. 제1항에 있어서, The method of claim 1, 상기 클린PC환경은, 상기 가상환경부가 상기 클린PC 이미지에 기초하여 가상화된 가상환경요소를 상기 어플리케이션 실행부에 제공해 줌으로서, 클린PC환경에서 상기 어플리케이션 실행부가 동작하는 것과 동일한 결과를 낼 수 있는 환경을 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The clean PC environment is an environment in which the virtual environment unit provides a virtual environment element virtualized based on the clean PC image to the application execution unit, thereby producing the same result as operating the application execution unit in a clean PC environment. System for extracting the repacking data of the application comprising a. 제1항에 있어서, The method of claim 1, 상기 더티PC 환경은, 클린PC환경의 호스트 컴퓨터에 소정의 어플리케이션이 한 개 이상 설치되어 있음으로 인해, 상기 어플리케이션 설치부에 의해 설치되는 어플리케이션의 구성요소를 클린PC환경에서와 동일하게 얻을 수 없는 환경을 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.In the dirty PC environment, since one or more predetermined applications are installed in the host computer of the clean PC environment, the components of the application installed by the application installation unit cannot be obtained in the same manner as in the clean PC environment. System for extracting the repacking data of the application comprising a. 제8항에 있어서,The method of claim 8, 상기 가상화된 가상환경요소는, 기본적으로 가상 파일 시스템(Virtual File System)을 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The virtualized virtual environment element, the system for extracting the repacking data of the application, characterized in that basically comprises a virtual file system (Virtual File System). 제8항에 있어서,The method of claim 8, 상기 가상화된 가상환경요소는, 가상 파일 시스템(Virtual File System), 가상 레지스트리 시스템(Virtual Registry System) 및 가상 컴포넌트 시스템(Virtual Component System)을 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The virtualized virtual environment element, a system for extracting the repacking data of the application, characterized in that it comprises a virtual file system (Virtual File System), a virtual registry system (Virtual Registry System) and a virtual component system (Virtual Component System) . 제1항에 있어서, The method of claim 1, 상기 어플리케이션 설치부는, 상기 호스트 컴퓨터의 운영체제에 설치하여 사용할 수 있는 한, 상기 어플리케이션의 구성요소와 설치정보를 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The application installation unit, the system for extracting the repacking data of the application, characterized in that it comprises components and installation information of the application as long as it can be installed and used in the operating system of the host computer. 제12항에 있어서, The method of claim 12, 상기 어플리케이션의 구성요소는, 어플리케이션을 구성하는 폴더 및 파일 정보와 레지스트리 정보를 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The component of the application, the system for extracting the repacking data of the application, characterized in that it comprises folder and file information and registry information constituting the application. 제1항에 있어서, The method of claim 1, 상기 재패킹 데이터는, 상기 어플리케이션 설치부에 의해 설치되는 어플리케이션의 구성요소를 사용목적에 맞게 재구성한 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The repacking data is a system for extracting the repacking data of the application, characterized in that the reconstituted components of the application installed by the application installation unit according to the purpose of use. 제1항에 있어서,The method of claim 1, 상기 재패킹 데이터는, 블록단위로 실시간으로 저장되는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 시스템.The repacking data, the system for extracting the repacking data of the application, characterized in that stored in real time on a block basis. 제1항에 있어서,The method of claim 1, 상기 재패킹 데이터는, 파일단위로 저장되는 것을 특징으로 하는 어플리케이 션의 재패킹 데이터를 추출하는 시스템.And the repacking data is stored in file units. 더티PC 환경의 호스트 컴퓨터상에서 어플리케이션의 재패킹 데이터를 추출하는 방법으로서,As a method of extracting application repacking data from a host computer in a dirty PC environment, (a) 클린PC환경의 가상화에 필요한 클린PC 이미지를 저장하는 단계;(a) storing a clean PC image necessary for virtualization of the clean PC environment; (b) 가상환경부가, 상기 저장된 클린PC 이미지에 기초하여 상기 더티PC 환경의 호스트 컴퓨터상에 클린PC환경을 가상화하는 단계;(b) virtualization unit virtualizing the clean PC environment on a host computer of the dirty PC environment based on the stored clean PC image; (c) 어플리케이션 설치부가, 상기 가상화된 클린PC환경하에서 어플리케이션을 설치하는 단계; 및(c) an application installation unit, installing an application under the virtualized clean PC environment; And (d) 상기 가상환경부가, 상기 어플리케이션을 설치하는 도중에 요청되는 메시지를 후킹하고, 상기 후킹된 메시지에 기초하여 상기 어플리케이션 설치부에 의해 쓰기 요청된 재패킹 데이터를 저장하는 단계를 포함하는 것을 특징으로 하는 재패킹 데이터를 추출하는 방법.(d) hooking, by the virtual environment unit, a message requested during the installation of the application, and storing repacking data requested by the application installation unit based on the hooked message. How to extract repacking data. 제17항에 있어서, The method of claim 17, 상기 방법은,The method, (d) 상기 더티PC 환경의 호스트 컴퓨터의 메모리에 가상화된 클린PC환경에서 구동중인 어플리케이션 설치부의 실행을 종료하는 단계;(d) terminating execution of an application installation unit running in a clean PC environment virtualized in a memory of the host computer of the dirty PC environment; (e) 상기 어플리케이션 설치부의 실행이 종료된 후, 상기 가상화된 클린PC환경을 상기 호스트 컴퓨터로부터 제거하는 단계; 및(e) removing the virtualized clean PC environment from the host computer after execution of the application installation unit is terminated; And (f) 상기 더티PC 환경의 호스트 컴퓨터의 메모리에 로딩된 상기 가상환경부와 상기 가상환경 구동부를 상기 더티PC 환경의 호스트 컴퓨터의 메모리로부터 제거하는 단계를 포함하는 것을 특징으로 하는 재패킹 데이터를 추출하는 방법.and removing the virtual environment unit and the virtual environment driver from the memory of the host computer of the dirty PC environment, the memory being loaded into the memory of the host computer of the dirty PC environment. Way. 제17항에 있어서, The method of claim 17, 상기 방법은,The method, (g) 상기 클린PC환경의 호스트 컴퓨터에 구성된 레지스트리 정보를 추출 하는 단계;(g) extracting registry information configured in a host computer of the clean PC environment; (h) 상기 클린PC환경의 호스트 컴퓨터에 구성된 폴더 및 파일 정보를 추출하는 단계; 및(h) extracting folder and file information configured in the host computer of the clean PC environment; And (i) 상기 추출된 레지스트리 정보, 폴더 및 파일 정보에 기초하여 상기 클린PC 이미지를 생성하는 단계를 포함하는 것을 특징으로 하는 재패킹 데이터를 추출하는 방법.(i) generating the cleanPC image based on the extracted registry information, folder and file information. 제17항에 있어서,The method of claim 17, 상기 방법은,The method, (j) 소정의 클린PC 설치프로그램을 분석하여 레지스트리 정보를 추출하는 단계;(j) extracting registry information by analyzing a predetermined clean PC installation program; (k) 상기 클린PC 설치프로그램을 분석하여 폴더 및 파일 정보를 추출하는 단계; 및(k) analyzing the clean PC installation program to extract folder and file information; And (l) 상기 추출된 레지스트리 정보, 폴더 및 파일 정보에 기초하여 상기 클린PC 이미지를 생성하는 단계를 포함하는 것을 특징으로 하는 재패킹 데이터를 추출하는 방법.(l) generating the cleanPC image based on the extracted registry information, folder and file information. 제17항에 있어서, The method of claim 17, 상기 클린PC 이미지는, 상기 어플리케이션 설치부가 실행되는 클린PC환경을 구성하기 위한 클린PC 구성요소로서, 폴더, 파일 및 레지스트리(registry) 정보를 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.The clean PC image is a clean PC component for constructing a clean PC environment in which the application installation unit is executed. The clean PC image includes a folder, a file, and registry information. . 제17항에 있어서, The method of claim 17, 상기 클린PC는, PC(Personal Computer) 하드웨어상에 윈도즈 운영체제만을 설치하고, 이 운영체제가 동반하는 기본 어플리케이션만이 설치된 PC상태인 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.The clean PC is a method of extracting the repacking data of the application, characterized in that only the Windows operating system is installed on the PC (Personal Computer) hardware, and only the basic application accompanying the operating system is installed. 제17항에 있어서, The method of claim 17, 상기 가상환경부는, 상기 더티PC 환경의 호스트컴퓨터상에서 상기 어플리케이션 설치부가 클린PC상에서 동작하는 것과 동일한 결과를 낼 수 있는 클린PC환경을 상기 호스트 컴퓨터의 내부에 가상화하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.The virtual environment unit, the repacking data of the application, characterized in that to virtualize a clean PC environment in the host computer on the host computer in the dirty PC environment that can produce the same results as operating on a clean PC. How to extract it. 제17항에 있어서, The method of claim 17, 상기 클린PC환경은, 상기 가상환경부가 상기 클린PC 이미지에 기초하여 가상화된 가상환경요소를 상기 어플리케이션 실행부에 제공해 줌으로서, 클린PC환경에서 상기 어플리케이션 실행부가 동작하는 것과 동일한 결과를 낼 수 있는 환경을 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.The clean PC environment is an environment in which the virtual environment unit provides a virtual environment element virtualized based on the clean PC image to the application execution unit, thereby producing the same result as operating the application execution unit in a clean PC environment. Method for extracting the repacking data of the application comprising a. 제17항에 있어서, The method of claim 17, 상기 더티PC 환경은, 클린PC환경의 호스트 컴퓨터에 소정의 어플리케이션이 한 개 이상 설치되어 있음으로 인해, 상기 어플리케이션 설치부에 의해 설치되는 어플리케이션의 구성요소를 클린PC환경에서와 동일하게 얻을 수 없는 환경을 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.In the dirty PC environment, since one or more predetermined applications are installed in the host computer of the clean PC environment, the components of the application installed by the application installation unit cannot be obtained in the same manner as in the clean PC environment. Method for extracting the repacking data of the application comprising a. 제24항에 있어서,The method of claim 24, 상기 가상화된 가상환경요소는, 기본적으로 가상 레지스트리 시스템(Virtual Registry System)을 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.The virtualized virtual environment element, method for extracting the repacking data of the application, characterized in that basically comprises a virtual registry system (Virtual Registry System). 제24항에 있어서,The method of claim 24, 상기 가상화된 가상환경요소는, 가상 파일 시스템(Virtual File System), 가상 레지스트리 시스템(Virtual Registry System) 및 가상 컴포넌트 시스템(Virtual Component System)을 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.The virtualized virtual environment element may include a virtual file system, a virtual registry system, and a virtual component system. . 제17항에 있어서, The method of claim 17, 상기 어플리케이션 설치부는, 상기 호스트 컴퓨터의 운영체제에 설치하여 사용할 수 있는 한, 상기 어플리케이션의 구성요소와 설치정보를 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.The application installation unit, the method of extracting the repacking data of the application, characterized in that it comprises components and installation information of the application as long as it can be installed and used in the operating system of the host computer. 제28항에 있어서, The method of claim 28, 상기 어플리케이션의 구성요소는, 어플리케이션을 구성하는 폴더 및 파일 정보와 레지스트리 정보를 포함하는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.The component of the application, the method of extracting the repacking data of the application, characterized in that it comprises folder and file information and registry information constituting the application. 제17항에 있어서, The method of claim 17, 상기 재패킹 데이터는, 상기 어플리케이션 설치부에 의해 설치되는 어플리케이션의 구성요소를 사용목적에 맞게 재구성한 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.The repacking data is a method of extracting the repacking data of the application, characterized in that the reconstituted components of the application installed by the application installation unit according to the purpose of use. 제17항에 있어서,The method of claim 17, 상기 재패킹 데이터는, 블록단위로 실시간으로 저장되는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.And the repacking data is stored in real time in units of blocks. 제17항에 있어서,The method of claim 17, 상기 재패킹 데이터는, 파일단위로 저장되는 것을 특징으로 하는 어플리케이션의 재패킹 데이터를 추출하는 방법.And the repacking data is stored in file units. 제17항 내지 제32항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 독출 가능한 기록매체.A computer-readable recording medium having recorded thereon a program for executing the method of any one of claims 17 to 32.
KR1020090083388A 2008-09-09 2009-09-04 Method and system for extracting repacking data of application program on host computer in dirty personal computer environment KR101160057B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020080089009 2008-09-09
KR20080089009 2008-09-09

Publications (2)

Publication Number Publication Date
KR20100030581A true KR20100030581A (en) 2010-03-18
KR101160057B1 KR101160057B1 (en) 2012-06-26

Family

ID=42180505

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090083388A KR101160057B1 (en) 2008-09-09 2009-09-04 Method and system for extracting repacking data of application program on host computer in dirty personal computer environment

Country Status (1)

Country Link
KR (1) KR101160057B1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060058296A (en) * 2004-11-25 2006-05-30 주식회사 코어그리드테크놀로지 Intergration process method for auto backup and recovery of system/data
EP1773043A1 (en) * 2005-10-06 2007-04-11 Dibcom Method and system for storing data packets

Also Published As

Publication number Publication date
KR101160057B1 (en) 2012-06-26

Similar Documents

Publication Publication Date Title
US11561866B2 (en) Preparing containerized applications for backup using a backup services container and a backup services container-orchestration pod
US11366723B2 (en) Data storage management system for holistic protection and migration of serverless applications across multi-cloud computing environments
US11461184B2 (en) Data storage management system for protecting cloud-based data including on-demand protection, recovery, and migration of databases-as-a-service and/or serverless database management systems
CN101398770B (en) System for and method of migrating one or more virtual machines
US8577845B2 (en) Remote, granular restore from full virtual machine backup
US20220012134A1 (en) Cloud-based air-gapped data storage management system
CN102193817B (en) Simplify the management of physics and virtual deployment
Gilbert et al. Pocket ISR: Virtual machines anywhere
US11954513B2 (en) Scalable recovery and/or migration to cloud- based custom-made virtual machines without using failed machines' credentials
US9183130B2 (en) Data control system for virtual environment
US11645169B2 (en) Dynamic resizing and re-distribution of destination data storage resources for bare metal restore operations in a data storage management system
US20150373102A1 (en) Deployment of virtual machine disks from a shared network file system
US8225316B1 (en) Methods and systems for creating and applying patches for virtualized applications
US20230043336A1 (en) Using an application orchestrator computing environment for automatically scaled deployment of data protection resources needed for data in a production cluster distinct from the application orchestrator or in another application orchestrator computing environment
US10303556B1 (en) Modifiable volume snapshots
US10127029B1 (en) Operating system installation using logical volumes
KR101160057B1 (en) Method and system for extracting repacking data of application program on host computer in dirty personal computer environment
KR102618274B1 (en) Management system for data included in a container and control method thereof
US20230297403A1 (en) Live mounting a virtual machine in a public cloud based on accessing a simulated virtual disk as an internet small computer systems interface (iscsi) target
US20240056481A1 (en) Data storage management system integrating cyber threat deception
US20230147671A1 (en) Systems and methods for optimizing storage and retention of deduplicated secondary copies at storage platforms that are write-once read-many (worm) enabled
US20240012717A1 (en) Protecting configuration data in a clustered container system
US20230124827A1 (en) Data storage management system for live-mounting a virtual machine in a cloud computing environment based on using nested virtual machines for immediate access to data in a proprietary backup copy
US20240134753A1 (en) Protection, recovery, and migration of databases-as-a-service (dbaas) and/or serverless database management systems (dbms) in cloud and multi-cloud
US20230409405A1 (en) Holistically protecting serverless applications based on detecting in-cloud deployments

Legal Events

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

Payment date: 20150630

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160920

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170620

Year of fee payment: 6