KR100988111B1 - Apparatus and method for virtualization of resource in server based computing system of terminal environment - Google Patents

Apparatus and method for virtualization of resource in server based computing system of terminal environment Download PDF

Info

Publication number
KR100988111B1
KR100988111B1 KR1020080108494A KR20080108494A KR100988111B1 KR 100988111 B1 KR100988111 B1 KR 100988111B1 KR 1020080108494 A KR1020080108494 A KR 1020080108494A KR 20080108494 A KR20080108494 A KR 20080108494A KR 100988111 B1 KR100988111 B1 KR 100988111B1
Authority
KR
South Korea
Prior art keywords
virtualization
resource
terminal
information
path
Prior art date
Application number
KR1020080108494A
Other languages
Korean (ko)
Other versions
KR20100049367A (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 최백준
Priority to KR1020080108494A priority Critical patent/KR100988111B1/en
Publication of KR20100049367A publication Critical patent/KR20100049367A/en
Application granted granted Critical
Publication of KR100988111B1 publication Critical patent/KR100988111B1/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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Abstract

본 발명은, 터미널 환경의 서버 기반 컴퓨팅 시스템에서 프로그램 실행시 접근하는 공통 리소스를 사용자별로 가상화하여 관리하는 터미널 서버 장치 및 그 터미널 서버 장치에서 리소스 가상화 방법에 관한 것이다. 본 발명에 따른 터미널 서버 장치는, 운영 체제의 사용자 모드에서 터미널 세션을 감시하는 리소스 가상화 에이전트; 가상화 대상 리소스의 정보와 가상화 경로를 포함하는 가상화 정보를 저장하는 가상화 정보 저장부; 및 상기 리소스 가상화 에이전트의 터미널 세션 시작 통지에 따라 상기 가상화 정보 저장부에 저장된 가상화 대상 리소스의 타입 정보와 가상화 경로를 조합하여 가상 리소스를 생성하며, 상기 터미널 세션에서 실행된 응용 프로그램의 리소스 접근을 실시간 감시하여 상기 응용 프로그램의 가상화 대상 리소스로의 접근을 상기 가상 리소스로 변경시키는 리소스 감시모듈;을 포함하는 것을 특징으로 한다. 다수의 사용자가 동일한 응용 프로그램을 사용하더라도 사용자별로 독립된 가상화 리소스를 생성하여 이용함으로써 사용자별 독립된 서비스 환경을 제공할 수 있다.The present invention relates to a terminal server device for virtualizing and managing a common resource accessed by a user when executing a program in a server-based computing system in a terminal environment for each user, and a resource virtualization method in the terminal server device. A terminal server device according to the present invention comprises: a resource virtualization agent for monitoring a terminal session in a user mode of an operating system; A virtualization information storage unit which stores virtualization information including information of a virtualization target resource and a virtualization path; And generating a virtual resource by combining the virtualization path and the type information of the virtualization target resource stored in the virtualization information storage unit according to the terminal session start notification of the resource virtualization agent, and accessing resources of an application executed in the terminal session in real time. And a resource monitoring module configured to monitor and change access of the application target virtualization target resource to the virtual resource. Even if multiple users use the same application program, it is possible to provide an independent service environment for each user by creating and using an independent virtualization resource for each user.

터미널 서비스, 씬클라이언트, 리소스, 가상화 Terminal Services, Thin Clients, Resources, Virtualization

Description

터미널 환경의 서버 기반 컴퓨팅 시스템에서 많은 사용자가 하나의 리소스 공유로 어플리케이션 실행이 불가능한 경우 리소스 가상화를 통해 이를 실행하는 장치 및 그 방법{APPARATUS AND METHOD FOR VIRTUALIZATION OF RESOURCE IN SERVER BASED COMPUTING SYSTEM OF TERMINAL ENVIRONMENT}If a user cannot run an application with a single resource share in a server-based computing system in a terminal environment, a device and a method for executing it through resource virtualization

본 발명은, 터미널 환경의 서버 기반 컴퓨팅 시스템에 관한 것으로, 보다 구체적으로, 응용 프로그램에 종속된 공통 리소스를 가상화하기 위한 터미널 서버 장치 및 그 터미널 서버 장치에서 리소스 가상화 방법에 관한 것이다.The present invention relates to a server-based computing system in a terminal environment, and more particularly, to a terminal server device for virtualizing a common resource dependent on an application program, and a resource virtualization method in the terminal server device.

터미널 환경의 서버 기반 컴퓨팅 시스템이란 터미널 클라이언트를 이용하여 서버에 원격 접속하여 서버의 리소스를 클라이언트에서 사용할 수 있도록 하는 시스템이다. 즉, 모든 클라이언트 응용 프로그램이 클라이언트 단말에 설치되지 않고 서버에 설치되고, 서버의 응용 프로그램 실행 결과 화면만이 클라이언트 단말로 전송되고 서버의 자원을 활용하여 실행되지만, 사용자 측면에서 모든 응용 프로그램이 클라이언트 단말에서 수행되고 있는 것처럼 보이게 하는 시스템이다.A server-based computing system in a terminal environment is a system that remotely connects to a server using a terminal client so that server resources are available to the client. That is, all the client applications are installed on the server instead of being installed on the client terminal, and only the application execution result screen of the server is transmitted to the client terminal and executed by utilizing the resources of the server. It's a system that makes it appear to be running on.

클라이언트가 원격으로 서버에 접속하게 되면, 서버는 접속된 사용자 환경을 세션과 프로필로 구분하여 세션 간에 상호 간섭 없이 독립된 환경을 유지시키고, 클라이언트는 제약없이 서버의 리소스를 사용할 수 있게 된다. 이러한 이유로 처음에는 터미널 서비스를 원격 서버 관리용으로 사용하였으나 최근에는 이를 응용하여 응용 프로그램을 서비스하는 형태로 발전해왔다.When the client connects to the server remotely, the server divides the connected user environment into sessions and profiles to maintain an independent environment without interfering between sessions, and the client can use the server's resources without restriction. For this reason, Terminal Services was initially used for remote server management, but recently it has evolved to service applications by applying it.

서버와 클라이언트 간에는 실제 데이터가 송수신되는 것이 아니고 모든 작업은 서버에서 이루어지고 클라이언트로는 서버 작업의 결과값만 비트맵 형태로 프레임이 나뉘어 전달된다. 모든 작업이 서버에서 이루어지기 때문에 응용 프로그램이 사용하는 CPU, 메모리 등은 서버의 자원을 사용하고, 클라이언트의 자원은 클라이언트의 구동에만 필요한 최소한의 자원만이 사용된다.The actual data is not transmitted and received between the server and the client. All the work is done on the server, and only the result of the server's work is sent to the client in divided bitmap format. Because all the work is done on the server, the CPU, memory, etc. used by the application use the server's resources, and the client's resources use only the minimum resources necessary for running the client.

이러한 터미널 환경의 서버 기반 컴퓨팅 시스템에서 응용 프로그램 서비스를 하게 되면 100% 서버에서 작업이 이루어짐으로써 작업 데이터를 외부에 유출할 수 없기 때문에 보안이 매우 높은 장점이 있다.Application service in the server-based computing system in such a terminal environment has a high security because the work data can not be leaked to the outside by performing work on the 100% server.

그런데, 상술한 바와 같이 터미널 서비스는 다수의 클라이언트가 하나의 서버에 접속하여 서버에서 실행된 응용 프로그램의 결과 화면만을 받는 서비스 형태로서, 다수의 클라이언트가 하나의 서버에 접속하여 동일한 프로그램을 사용하는 경우 그 프로그램에 종속된 리소스(파일, 폴더, 레지스트리 등)가 개인화되지 못하는 문제점이 있다. 즉 멀티 사용자를 고려하지 않고 단일 사용자만을 고려하여 개발된 응용 프로그램을 터미널 서버에 올려서 멀티 사용자가 접근하여 사용하려고 할 때 해당 응용 프로그램은 사용자별로 리소스가 중첩되어 정상 동작하지 않는다.However, as described above, the terminal service is a type of service in which a plurality of clients access a single server and receive only a result screen of an application program executed on the server. When a plurality of clients access the same server and use the same program, There is a problem that resources (files, folders, registry, etc.) that depend on the program cannot be personalized. In other words, when a multi-user accesses and uses an application developed on the terminal server without considering multi-users, the application does not operate normally because resources overlap by user.

예컨대, 고정된 경로의 파일에 로그인 정보를 기록하고 개인 설정 내용을 저장하는 특정 프로그램이 개인 PC에 설치되어 동작한다면 문제가 없지만, 터미널 서비스 환경에서 상기 특정 프로그램이 서버에 설치되어 동작하는 경우 다수의 사용자가 로그인 하는 시간도 다르고 동시 접속하여 프로그램을 사용할 수도 있기 때문에, 고정된 경로의 파일, 레지스트리 또는 폴더로 가장 최근에 접속한 사용자의 정보만이 저장된다. 따라서 이전에 접근한 파일, 폴더 또는 레지스트리에 저장된 정보가 삭제되고 최근에 접근한 사용자의 정보가 기록된다.For example, there is no problem if a specific program that records login information and stores personal settings in a fixed path file is installed and operated on a personal PC. However, when the specific program is installed and operated on a server in a terminal service environment, Since users log in at different times and can access programs simultaneously, only the information of the most recently accessed user in a fixed path file, registry, or folder is stored. Therefore, the information stored in the previously accessed file, folder or registry is deleted and the information of the recently accessed user is recorded.

이로 인하여 서버에서 리소스를 공유하는 프로그램을 구동하여 터미널 서비스를 제공할 경우, 프로그램 사용이 불가능하게 된다.As a result, if a server that provides a terminal service is executed by a program that shares resources with the server, the program cannot be used.

본 발명은 상기와 같은 문제점을 해결하기 위해 창안된 것으로, 터미널 환경의 서버 기반 컴퓨팅 시스템에서 프로그램에 종속된 공통 리소스를 사용자별로 가 상화하여 관리하는 터미널 서버 장치 및 그 터미널 서버 장치에서 리소스 가상화 방법을 제공하는데 목적이 있다.The present invention has been made to solve the above problems, the terminal server device for virtualizing and managing the common resources dependent on the program in the server-based computing system of the terminal environment and the resource virtualization method in the terminal server device The purpose is to provide.

상기 목적을 달성하기 위한 본 발명의 일 측면에 따른, 원격 접속한 클라이언트로 터미널 서비스를 제공하는 터미널 서버 장치는, 운영 체제의 사용자 모드에서 터미널 세션을 감시하여 커널 모드로 세션 정보, 가상화 정보를 전달하는 리소스 가상화 에이전트; 가상화 대상 리소스의 정보와 가상화 경로를 포함하는 가상화 정보를 저장하는 가상화 정보 저장부; 및 상기 리소스 가상화 에이전트의 터미널 세션 시작 통지에 따라 상기 가상화 정보 저장부에 저장된 가상화 대상 리소스의 타입 정보와 가상화 경로를 조합하여 가상 리소스를 생성하며, 상기 터미널 세션에서 실행된 응용 프로그램의 리소스 접근을 커널 모드에서 실시간 감시하여 상기 응용 프로그램의 가상화 대상 리소스로의 접근을 상기 가상 리소스로 변경시키는 리소스 감시모듈;을 포함하는 것을 특징으로 한다.According to an aspect of the present invention for achieving the above object, a terminal server device for providing a terminal service to a remotely connected client, by monitoring the terminal session in the user mode of the operating system to deliver session information, virtualization information in kernel mode A resource virtualization agent; A virtualization information storage unit which stores virtualization information including information of a virtualization target resource and a virtualization path; And generating a virtual resource by combining the virtualization path and the type information of the virtualization target resource stored in the virtualization information storage unit according to the terminal session start notification of the resource virtualization agent, and accessing the resource of the application executed in the terminal session. And a resource monitoring module for changing the access to the virtualization target resource of the application program to the virtual resource by monitoring in real time in a mode.

상기 터미널 서버 장치의 상기 리소스 감시모듈은, 상기 가상화 대상 리소스의 타입이 폴더인 경우, 상기 가상화 경로에 따라 상위 폴더를 생성하고 그 상위 폴더 내에 상기 가상화 대상 리소스의 접근 경로명과 동일한 명칭의 하위 폴더를 생성함으로써 가상 리소스를 생성한다.When the type of the virtualization target resource is a folder, the resource monitoring module of the terminal server device creates a parent folder according to the virtualization path, and creates a lower folder having the same name as the access path name of the virtualization target resource in the parent folder. Create a virtual resource by creating it.

상기 터미널 서버 장치의 상기 리소스 감시모듈은, 상기 가상화 대상 리소스의 타입이 파일인 경우, 상기 가상화 경로에 따라 상위 폴더를 생성하고 그 상위 폴더 내에 상기 가상화 대상 리소스의 접근 경로명과 동일한 명칭의 하위 폴더를 생성하며, 그 하위 폴더 내에 상기 가상화 대상 리소스를 복사하여 가상 리소스를 생성한다.When the type of the virtualization target resource is a file, the resource monitoring module of the terminal server device creates a parent folder according to the virtualization path, and creates a lower folder having the same name as the access path name of the virtualization target resource in the parent folder. The virtual resource is generated by copying the virtualization target resource in the subfolder.

상기 터미널 서버 장치는, 터미널 세션의 정보를 저장하는 세션 정보 저장부를 더 포함하고, 상기 리소스 감시모듈은, 상기 상위 폴더 내에서 상기 터미널 세션의 정보를 기준으로 사용자별 가상 리소스를 구분 생성할 수 있다.The terminal server device may further include a session information storage unit that stores information of the terminal session, and the resource monitoring module may separately generate virtual resources for each user based on the information of the terminal session in the upper folder. .

상기 터미널 서버 장치의 상기 리소스 감시모듈은, 상기 응용 프로그램으로부터 상기 가상화 대상 리소스로 전송되는 요청 패킷(request packet)을 상기 가상화 리소스로 리다이렉트(redirect)할 수 있다.The resource monitoring module of the terminal server device may redirect a request packet transmitted from the application program to the virtualization target resource to the virtualization resource.

상기 목적을 달성하기 위한 본 발명의 다른 측면에 따른, 원격 접속한 클라이언트로 터미널 서비스를 제공하는 터미널 서버 장치에서 리소스를 가상화하는 방법은, 가상화 대상 리소스의 정보와 가상화 경로 정보를 포함하는 가상화 정보를 등록하는 단계; 상기 클라이언트를 위한 터미널 세션을 생성하는 단계; 상기 가상화 경로 및 상기 가상화 대상 리소스의 타입 정보를 조합하여 가상 리소스를 생성하는 단계; 상기 터미널 세션에서 실행된 응용 프로그램의 리소스 접근을 실시간 감시하는 단계; 및 상기 응용 프로그램의 가상화 대상 리소스로의 접근을 상기 가상 리소스로 변경시키는 단계;를 포함하는 것을 특징으로 한다.According to another aspect of the present invention for achieving the above object, a method for virtualizing resources in a terminal server device that provides a terminal service to a remotely connected client, virtualization information including the information of the virtualization target resource and the virtualization path information Registering; Creating a terminal session for the client; Generating a virtual resource by combining the virtualization path and the type information of the virtualization target resource; Real-time monitoring of resource access of an application executed in the terminal session; And changing the access to the virtualization target resource of the application program to the virtual resource.

상기 리소스 가상화 방법에서 가상 리소스 생성 단계는, 상기 가상화 경로에 따라 상위 폴더를 생성하는 단계; 및 생성된 상위 폴더 내에 상기 가상화 대상 리소스의 접근 경로명과 동일한 명칭의 하위 폴더를 생성하는 단계;를 포함할 수 있다.In the resource virtualization method, the virtual resource generating step may include: generating an upper folder according to the virtualization path; And generating a lower folder having the same name as an access path name of the virtualization target resource in the generated upper folder.

상기 리소스 가상화 방법에서 상기 리소스 생성 단계는, 상기 하위 폴더 내에 상기 가상화 대상 리소스를 복사하는 단계;를 더 포함할 수 있다.The generating of the resource in the resource virtualization method may further include copying the virtualization target resource into the subfolder.

상기 리소스 가상화 방법에서 상기 하위 폴더 생성 단계 이전에, 상위 폴더 내에 상기 터미널 세션의 정보를 이용하여 사용자 식별 폴더를 생성하는 단계;를 더 포함하고, 상기 하위 폴더는 상기 사용자 식별 폴더 내에 생성될 수 있다.The method may further include generating a user identification folder by using information of the terminal session in an upper folder before generating the lower folder in the resource virtualization method, wherein the lower folder may be created in the user identification folder. .

상기 리소스 가상화 방법에서 리소스 접근 변경 단계는, 상기 응용 프로그램으로부터 상기 가상화 대상 리소스로 전송되는 요청 패킷(request packet)을 수신하는 단계; 및 수신된 요청 패킷을 상기 가상화 리소스로 리다이렉트(redirect)하는 단계;를 포함할 수 있다.In the resource virtualization method, the resource access change step may include: receiving a request packet transmitted from the application program to the virtualization target resource; And redirecting the received request packet to the virtualization resource.

상기와 같은 본 발명은, 터미널 환경의 서버 기반 컴퓨팅 시스템에서 특정 프로그램에 종속된 공통 리소스를 사용자별로 가상화하여 사용자별로 개별적인 서비스 환경을 제공함으로써 터미널 서비스 환경에서 구동하려는 프로그램의 동작 원리와 상관없이 더 많은 프로그램을 터미널 서비스 환경에서 구동할 수 있게 된다. 종래에는 프로그램의 수정 및 재개발을 통해야 공통 리소스를 사용자별로 관리할 수 있었으나, 본 발명에 따르면 이미 상용화된 프로그램을 수정할 필요없이 공통 리소스를 사용자별로 구분하여 관리할 수 있게 함으로써 더 많은 프로그램을 구동하고 멀티 유저의 사용을 가능하게 한다.As described above, the present invention provides a separate service environment for each user by virtualizing a common resource that is dependent on a specific program in a server-based computing system of a terminal environment for each user, regardless of the operation principle of a program to be operated in a terminal service environment. The program will be able to run in the Terminal Services environment. In the related art, common resources could be managed by user only through modification and redevelopment of the program. However, according to the present invention, the common resources can be managed separately by users without having to modify the programs already commercialized, thereby driving more programs and multiplying. Enable user use.

상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings, whereby those skilled in the art may easily implement the technical idea of the present invention. There will be. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. Hereinafter, a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 터미널 서비스 시스템의 구성을 나타낸 도면이다.1 is a diagram showing the configuration of a terminal service system according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 실시예에 따른 터미널 서비스 시스템은, 다수의 사용자 단말(110-1, 110-2,..., 110-N, 이하 110으로 통일하여 표기)과 상기 다수의 사용자 단말(110)과 네트워크(130)를 통해 연결된 터미널 서버(150)를 포함하여 구성된다. As shown in FIG. 1, the terminal service system according to the present embodiment includes a plurality of user terminals 110-1, 110-2,. It is configured to include a terminal server 150 connected through the user terminal 110 and the network 130.

사용자는 사용자 단말(110)을 이용하여 터미널 서버(150)에 접속하여 인증을 수행하고, 터미널 서버(150)는 접속 사용자 단말(110)에 대한 터미널 세션(160-1, 160-2,..., 160-N, 이하 160으로 통일하여 표기)을 운영체제 내의 사용자 모드에서 생성하여 다른 사용자와 독립된 환경을 유지하며 응용 프로그램(163)을 수행한다. 터미널 서버(150)는 응용 프로그램 실행 결과 화면만을 사용자 단말(110)로 전송한다.The user accesses the terminal server 150 using the user terminal 110 to perform authentication, and the terminal server 150 performs terminal sessions 160-1, 160-2, .. , 160-N, hereinafter referred to as 160) is created in a user mode in the operating system to maintain an environment independent of other users and execute the application program 163. The terminal server 150 transmits only the application program execution result screen to the user terminal 110.

사용자 단말(110)은 터미널 서버(150)로부터 수신된 응용 프로그램을 실행 결과 화면으로 전송을 받으며 하고자 하는 작업을 사용자의 입력(예컨대, 키보드 입력 및 마우스 클릭)을 통해 터미널 서버(150)로 반환하고, 터미널 서버(150)는 사용자 단말(110)로부터 반환된 사용자 입력에 따라 응용 프로그램(163)을 처리하여 그에 따른 실행 결과 화면을 다시 사용자 단말(110)로 전송한다.The user terminal 110 receives the application program received from the terminal server 150 to the execution result screen and returns a task to the terminal server 150 through a user input (for example, a keyboard input and a mouse click). The terminal server 150 processes the application 163 according to the user input returned from the user terminal 110 and transmits the execution result screen back to the user terminal 110.

도 1을 참조하면, 터미널 서버(150)는, 사용자 단말(110)의 터미널 클라이언트(120)가 접속해오면, 독립된 터미널 세션(160)을 생성하고 기본 화면(예컨대, 윈도우즈 운영체제의 바탕화면)을 터미널 클라이언트(120)로 전송한다. 사용자는 터미널 클라이언트(120)를 통해 표시되는 기본 화면에서 응용 프로그램의 실행을 입력하고, 그에 따른 입력 신호는 네트워크를 통해 터미널 서버(150)에 전달되어 터미널 세션(160)에서 사용자가 선택한 응용 프로그램(163)이 실행된다. Referring to FIG. 1, when the terminal client 120 of the user terminal 110 connects, the terminal server 150 creates an independent terminal session 160 and displays a basic screen (eg, a desktop of the Windows operating system). Send to terminal client 120. The user inputs execution of an application on a basic screen displayed through the terminal client 120, and the input signal is transmitted to the terminal server 150 through the network so that the application selected by the user in the terminal session 160 ( 163 is executed.

구체적으로, 도 1을 참조하면, 터미널 서버(150)는, 운영체제 내의 사용자 모드(user mode)에서 동작하는 리소스 가상화 에이전트(161) 및 운영체제 내의 커널 모드(kernel mode)에서 동작하는 리소스 감시모듈(170)을 포함한다. 리소스 감시모듈(170)은 운영체제의 커널 단에서 장치 드라이버(device driver) 형태로 동작한다. Specifically, referring to FIG. 1, the terminal server 150 may include a resource virtualization agent 161 operating in a user mode in an operating system and a resource monitoring module 170 operating in a kernel mode in an operating system. ). The resource monitoring module 170 operates in the form of a device driver in the kernel stage of the operating system.

리소스 가상화 에이전트(161)는, 관리자 툴에 연결되어 응용 프로그램(163)이 접근하는 리소스(파일, 폴더, 레지스트리 등)에 대한 가상화 정보를 상기 관리자 툴(구체적으로, Database)을 통해 전달받아 리소스 감시모듈(170)로 전달한다. 가상화 정보는 가상화 대상 리소스(이하 소스 리소스라 한다) 정보, 사용자 데이터가 실제 저장될 가상화 경로(이하 목적지 리소스라 한다), 그리고 가상화 대상 리소스의 타입 정보를 포함한다. 타입 정보는 소스 리소스가 파일인지, 폴더인지, 또 는 레지스트리인지 등을 나타낸다.The resource virtualization agent 161 is connected to an administrator tool and receives virtualization information about a resource (file, folder, registry, etc.) accessed by the application 163 through the administrator tool (specifically, a database) to monitor resources. Transfer to module 170. The virtualization information includes virtualization target resource (hereinafter referred to as source resource) information, virtualization path where user data is actually stored (hereinafter referred to as destination resource), and type information of the virtualization target resource. The type information indicates whether the source resource is a file, a folder, or a registry.

또한, 리소스 가상화 에이전트(161)는, 터미널 세션의 생성을 실시간 감시한다. 터미널 클라이언트(120)의 접근에 따라 사용자의 터미널 세션(160)이 생성되면, 리소스 가상화 에이전트(161)는 해당 터미널 세션(160)의 정보를 리소스 감시모듈(170)로 전달한다. 터미널 세션의 정보는 사용자 ID, SID, 세션 ID를 포함한다.In addition, the resource virtualization agent 161 monitors the generation of the terminal session in real time. When the terminal session 160 of the user is generated according to the access of the terminal client 120, the resource virtualization agent 161 transmits the information of the terminal session 160 to the resource monitoring module 170. The information of the terminal session includes a user ID, SID, and session ID.

리소스 감시모듈(170)은, 상기 리소스 가상화 에이전트(161)로부터 전달받은 터미널 세션 정보를 세션 정보 DB(165)에 저장하고, 또한 상기 리소스 가상화 에이전트(161)로부터 전달받은 가상화 정보를 가상화 정보 DB(167)에 저장한다. 리소스 감시모듈(170)은 리소스 가상화 에이전트(161)의 명령에 따라 구동을 시작한다.The resource monitoring module 170 stores the terminal session information received from the resource virtualization agent 161 in the session information DB 165, and further stores the virtualization information received from the resource virtualization agent 161 in the virtualization information DB ( 167). The resource monitoring module 170 starts driving according to the command of the resource virtualization agent 161.

리소스 감시모듈(170)은, 가상화 정보 DB(167)에 저장 기록되어 있는 목적지 리소스, 소스 리소스의 타입 정보, 그리고 세션 DB(165)에 저장되어 있는 사용자의 터미널 세션 정보를 조합하여 사용자별 가상 리소스를 만들어 낸다. The resource monitoring module 170 combines the destination resource stored in the virtualization information DB 167, the type information of the source resource, and the terminal session information of the user stored in the session DB 165. To produce

보다 구체적으로, 리소스 감시모듈(170)은, 가상화 정보 DB(167)에 저장 기록되어 있는 목적지 리소스, 소스 리소스의 타입 정보, 그리고 세션 DB(165)에 저장되어 있는 사용자의 터미널 세션 정보를 조합하여 가상 리소스 접근 경로를 만들어 낸다. 소스 리소스의 타입이 폴더인 경우 가상 리소스 접근 경로가 최종적인 가상 리소스가 되고, 소스 리소스가 파일 또는 레지스트리인 경우 소스 리소스로부터 파일 또는 데이터를 복사하여 가상 리소스 접근 경로에 위치시킴으로써 최종적인 가상 리소스를 만들어 낸다.More specifically, the resource monitoring module 170 combines the destination resource stored in the virtualization information DB 167, the type information of the source resource, and the terminal session information of the user stored in the session DB 165. Create a virtual resource access path. If the type of the source resource is a folder, the virtual resource access path becomes the final virtual resource. If the source resource is a file or registry, the final virtual resource is created by copying the file or data from the source resource and placing it in the virtual resource access path. Serve

예를 들어, 소스 리소스가 "C:\enc" 폴더이고 목적지 리소스가 "D:\userdata" 경로이며, 사용자 ID가 "use01"인 사용자가 응용 프로그램(163)을 구동하고, 해당 응용 프로그램(163)이 상기 소스 리소스 "C:\enc" 폴더에 접근하는 경우, 리소스 감시모듈(170)은 목적지 리소스(D:\userdata)와 사용자 ID(use01) 그리고 소스 리소스(C:\enc)를 조합하여 "D:\userdata\user01\C\enc"의 가상화 접근 경로를 만들어 낸다. 이때, 소스 리소스의 타입은 폴더이므로, 상기 가상화 접근 경로가 최종적인 가상 리소스가 된다.For example, a user with a source resource of "C: \ enc" folder, a destination resource of "D: \ userdata" path, and a user ID of "use01" runs an application 163, and the application 163 ) Accesses the source resource "C: \ enc" folder, the resource monitoring module 170 combines the destination resource (D: \ userdata), the user ID (use01) and the source resource (C: \ enc) Create a virtualization access path of "D: \ userdata \ user01 \ C \ enc". At this time, since the type of the source resource is a folder, the virtualization access path becomes the final virtual resource.

상기 예에서, 사용자 ID가 "use02"인 사용자가 동일한 응용 프로그램(163)을 구동하고, 해당 응용 프로그램(163)이 마찬가지로 상기 소스 리소스 "C:\enc" 폴더에 접근하는 경우, 동일한 원리에 따라 "D:\userdata\user02\C\enc"의 가상화 접근 경로를 만들어 낸다. In the above example, if a user with a user ID of "use02" runs the same application 163, and the application 163 likewise accesses the source resource "C: \ enc" folder, according to the same principle Create a virtualization access path of "D: \ userdata \ user02 \ C \ enc".

리소스 감시모듈(170)은, 운영체제 내의 파일 관리자(file manager)에 로드되어 응용 프로그램(163)의 소스 리소스 접근을 필터링하여 가상 리소스로 우회시킨다. 리소스 감시모듈(170)은 터미널 서버(150)의 리소스 중 가상화 DB(167)에 저장 기록되어 있는 소스 리소스에 대해서만 응용 프로그램(163)의 접근을 감시하고, 응용 프로그램(153)이 소스 리소스에 접근하는 경우, 그 접근을 상기 가상 리소스로 변경시킨다. The resource monitoring module 170 is loaded into a file manager in the operating system to filter the source resource access of the application 163 to bypass the virtual resource. The resource monitoring module 170 monitors the access of the application 163 only to the source resource stored in the virtualization DB 167 among the resources of the terminal server 150, and the application 153 accesses the source resource. If so, change the access to the virtual resource.

구체적으로, 리소스 감시모듈(170)은, 응용 프로그램(163)으로부터 전송되는 모든 IRPs(I/O Request Packes)을 감시하여 소스 리소스로 향하는 IRPs를 가상 리소스로 리다이렉트(redirect)한다. 패킷의 목적지 주소를 판독하여 소스 리소스로 향하는 경우, 목적지 주소를 가상 리소스로 변경한다. In detail, the resource monitoring module 170 monitors all IRPs (I / O Request Packes) transmitted from the application program 163 and redirects IRPs directed to the source resource to the virtual resource. When the destination address of the packet is read and directed to the source resource, the destination address is changed to a virtual resource.

이상과 같은 본 발명에 따르면, 복수의 사용자가 동일한 응용 프로그램(163)을 이용하더라도 공통 리소스가 사용자별로 독립적으로 가상화됨으로써, 사용자별로 개별적인 응용 프로그램 환경이 제공된다.According to the present invention as described above, even if a plurality of users using the same application 163, a common resource is virtualized independently for each user, thereby providing a separate application program environment for each user.

도 2는 본 발명의 일 실시예에 따른 터미널 서비스에서 공통 리소스 가상화 방법을 설명하는 흐름도이다.2 is a flowchart illustrating a common resource virtualization method in a terminal service according to an embodiment of the present invention.

도 2를 참조하면, 터미널 서버(150)를 관리하는 관리자는 관리자 툴을 통해 가상화 정보를 등록한다. 관리자 툴을 통해 등록된 가상화 정보는 운영체제 내의 리소스 가상화 에이전트(161)로 전달된다(S201). 가상화 정보는 가상화 대상 리소스(소스 리소스) 정보, 사용자 데이터가 실제 저장될 가상화 경로(목적지 리소스), 그리고 소스 리소스의 타입 정보를 포함한다. 타입 정보는 소스 리소스가 파일인지, 폴더인지, 또는 레지스트리인지 등을 나타낸다.2, an administrator who manages the terminal server 150 registers virtualization information through an administrator tool. The virtualization information registered through the administrator tool is transmitted to the resource virtualization agent 161 in the operating system (S201). The virtualization information includes virtualization target resource (source resource) information, virtualization path (destination resource) where user data is actually stored, and type information of the source resource. The type information indicates whether the source resource is a file, a folder, or a registry.

가상화 정보를 전달받은 리소스 가상화 에이전트(161)는 운영 체제 내의 커널(kernel) 모드에 위치하는 리소스 감시모듈(170)에 구동 명령을 전달하여 구동시킨다. 그리고 리소스 가상화 에이전트(161)는 상기 관리자 툴로부터 전달받은 가상화 정보를 상기 리소스 감시모듈(170)로 전달한다(S203). 리소스 감시모듈(170)은 상기 전달받은 가상화 정보를 가상화 정보 DB(167)에 등록 저장한다(S205).The resource virtualization agent 161 which has received the virtualization information transmits and drives a driving command to the resource monitoring module 170 located in the kernel mode in the operating system. The resource virtualization agent 161 transmits the virtualization information received from the manager tool to the resource monitoring module 170 (S203). The resource monitoring module 170 registers and stores the received virtualization information in the virtualization information DB 167 (S205).

리소스 가상화 에이전트(161)는 터미널 세션의 생성을 실시간 감시하고, 사용자 단말(110)의 터미널 클라이언트가 터미널 서버(150)에 접속하여 터미널 세션이 생성되면(S207), 상기 터미널 세션 정보를 리소스 감시모듈(170)로 전달하여 등 록 요청한다(S209). 터미널 세션의 정보는 사용자 ID, SID, 세션 ID를 포함한다.The resource virtualization agent 161 monitors the creation of the terminal session in real time, and when the terminal client of the user terminal 110 accesses the terminal server 150 to generate a terminal session (S207), the terminal session information is monitored by the resource monitoring module. Request for registration by transferring to 170 (S209). The information of the terminal session includes a user ID, SID, and session ID.

리소스 감시모듈(170)은 리소스 가상화 에이전트(161)로부터 전달받은 터미널 세션 정보를 세션 정보 DB(165)에 등록한다(S211). The resource monitoring module 170 registers terminal session information received from the resource virtualization agent 161 in the session information DB 165 (S211).

이와 같이 가상화 정보와 터미널 세션 정보를 등록한 후, 리소스 감시모듈(170)은 가상화 정보 DB(203)를 참조하여 응용 프로그램(163)으로부터 나가는 모든 IRPs(I/O request packets)의 목적지를 체크하여 가상화 대상 리소스(소스 리소스)로 향하는지 확인한다(S213, S215).After registering the virtualization information and the terminal session information as described above, the resource monitoring module 170 checks the destinations of all IRPs (I / O request packets) exiting from the application 163 with reference to the virtualization information DB 203 and virtualizes them. It is checked whether it is headed to a target resource (source resource) (S213 and S215).

IRPs가 가상화 대상 리소스(소스 리소스)로 향하는 경우, 리소스 감시모듈(170)은 가상화 정보 DB(167)에 등록되어 있는 목적지 리소스, 소스 리소스의 타입 정보, 그리고 세션 DB(165)에 저장되어 있는 사용자의 터미널 세션 정보를 조합하여 사용자의 가상 리소스를 만들어 낸다(S217). 보다 구체적으로, 리소스 감시모듈(170)은, 가상화 정보 DB(167)에 등록되어 있는 목적지 리소스, 소스 리소스의 타입 정보, 그리고 세션 DB(165)에 저장되어 있는 사용자의 터미널 세션 정보를 조합하여 가상 리소스 접근 경로를 만들어 낸다. 소스 리소스의 타입이 폴더인 경우 가상 리소스 접근 경로가 최종적인 가상 리소스가 되고, 소스 리소스가 파일 또는 레지스트리인 경우 소스 리소스로부터 파일 또는 데이터를 복사하여 가상 리소스 접근 경로에 위치시킴으로써 최종적인 가상 리소스를 만들어 낸다.When the IRPs are directed to a virtualization target resource (source resource), the resource monitoring module 170 may include a destination resource registered in the virtualization information DB 167, type information of the source resource, and a user stored in the session DB 165. The terminal session information is combined to create a virtual resource of the user (S217). More specifically, the resource monitoring module 170 combines the destination resource registered in the virtualization information DB 167, the type information of the source resource, and the terminal session information of the user stored in the session DB 165 for the virtual. Create a resource access path. If the type of the source resource is a folder, the virtual resource access path becomes the final virtual resource. If the source resource is a file or registry, the final virtual resource is created by copying the file or data from the source resource and placing it in the virtual resource access path. Serve

그리고 나서, 리소스 감시모듈(170)은 상기 가상 리소스 접근 경로에 기초하여 상기 IRPs를 리다이렉트(redirect)한다(S219). 즉, 리소스 감시모듈(170)은 IRPs의 목적지를 상기 가상 리소스 접근 경로로 변경하여 우회시킨다. 리소스 감시 모듈(170)은 리다이렉트한 IRPs를 포워딩한다(S221). IRPs는 원래 목적지인 소스 리소스로 포워딩되지 않고 가상 리소스 접근 경로로 포워딩된다. 가상 리소스 접근 경로는 사용자별로 독립적으로 생성되기 때문에, 복수의 사용자가 동일한 응용 프로그램(163)을 사용하더라도 사용자별로 독립적으로 데이터가 생성되어 유지된다. Then, the resource monitoring module 170 redirects the IRPs based on the virtual resource access path (S219). That is, the resource monitoring module 170 changes the destination of the IRPs to the virtual resource access path and bypasses it. The resource monitoring module 170 forwards the redirected IRPs (S221). IRPs are forwarded to the virtual resource access path, not forwarded to the source resource as the original destination. Since the virtual resource access path is independently generated for each user, data is generated and maintained independently for each user even if a plurality of users use the same application program 163.

이후, 사용자의 터미널 서비스가 종료되면(S223), 리소스 가상화 에이전트(161)는 리소스 감시모듈(170)로 세션 정보 삭제를 요청하고(S225), 리소스 감시모듈(170)은 세션 DB(165)에 등록되어 있는 사용자의 세션 정보를 삭제한다(S227).Then, when the terminal service of the user is terminated (S223), the resource virtualization agent 161 requests the session information deletion to the resource monitoring module 170 (S225), the resource monitoring module 170 to the session DB (165) The session information of the registered user is deleted (S227).

이상과 같은 본 발명에 따르면, 복수의 사용자가 동일한 응용 프로그램(163)을 이용하더라도 공통 리소스가 사용자별로 독립적으로 가상화됨으로써, 사용자별로 개별적인 응용 프로그램 환경이 제공된다.According to the present invention as described above, even if a plurality of users using the same application 163, a common resource is virtualized independently for each user, thereby providing a separate application program environment for each user.

상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. The method of the present invention as described above may be embodied as a program and stored in a computer-readable recording medium (such as a CD-ROM, a RAM, a ROM, a floppy disk, a hard disk, or a magneto-optical disk).

본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 아니된다. 또한, 본 명세서에서 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서에서 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절한 부결합(subcombination)에서 구현될 수 있다. While the specification contains many features, such features should not be construed as limiting the scope of the invention or the scope of the claims. Also, the features described in the individual embodiments herein can be implemented in combination in a single embodiment. Conversely, various features described herein in a single embodiment may be implemented in various embodiments individually or in a suitable subcombination.

도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로, 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 아니된다. 어떤 환경에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 프로그램 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.Although the operations are described in a particular order in the drawings, they should not be understood as being performed in a particular order as shown, or in a sequence of successive orders, or in which all described actions are performed to obtain a desired result. . In some circumstances, multitasking and parallel processing may be advantageous. In addition, it should be understood that the division of various system components in the above-described embodiments does not require such division in all embodiments. The above-described program components and systems can generally be implemented as a single software product or as a package in multiple software products.

이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.The present invention described above is capable of various substitutions, modifications, and changes without departing from the technical spirit of the present invention for those skilled in the art to which the present invention pertains. It is not limited by the drawings.

도 1은 본 발명의 일 실시예에 따른 터미널 서비스 시스템의 구성을 나타낸 도면이다.1 is a diagram showing the configuration of a terminal service system according to an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른 터미널 서비스에서 공통 리소스 가상화 방법을 설명하는 흐름도이다.2 is a flowchart illustrating a common resource virtualization method in a terminal service according to an embodiment of the present invention.

Claims (10)

삭제delete 원격 접속한 클라이언트로 터미널 서비스를 제공하는 터미널 서버 장치로서,A terminal server device that provides terminal services to remotely connected clients. 운영 체제의 사용자 모드에서 터미널 세션을 감시하는 리소스 가상화 에이전트;A resource virtualization agent that monitors the terminal session in user mode of the operating system; 가상화 대상 리소스의 정보와 가상화 경로를 포함하는 가상화 정보를 저장하는 가상화 정보 저장부; 및A virtualization information storage unit which stores virtualization information including information of a virtualization target resource and a virtualization path; And 상기 리소스 가상화 에이전트의 터미널 세션 시작 통지에 따라 상기 가상화 정보 저장부에 저장된 가상화 대상 리소스의 타입 정보와 가상화 경로를 조합하여 가상 리소스를 생성하며, 상기 터미널 세션에서 실행된 응용 프로그램의 리소스 접근을 실시간 감시하여 상기 응용 프로그램의 가상화 대상 리소스로의 접근을 상기 가상 리소스로 변경시키는 리소스 감시모듈;을 포함하고,According to the terminal session start notification of the resource virtualization agent, a virtual resource is generated by combining the virtualization path and the type information of the virtualization target resource stored in the virtualization information storage unit, and monitors resource access of an application executed in the terminal session in real time. And a resource monitoring module configured to change the access to the virtualization target resource of the application to the virtual resource. 상기 리소스 감시모듈은,The resource monitoring module, 상기 가상화 대상 리소스의 타입이 폴더인 경우, 상기 가상화 경로에 따라 상위 폴더를 생성하고 그 상위 폴더 내에 상기 가상화 대상 리소스의 접근 경로명과 동일한 명칭의 하위 폴더를 생성함으로써 가상 리소스를 생성하는 것을 특징으로 하는 터미널 서버 장치.When the virtualization target resource type is a folder, a virtual resource is generated by creating an upper folder according to the virtualization path and creating a lower folder having the same name as an access path name of the virtualization target resource in the upper folder. Terminal Server Device. 원격 접속한 클라이언트로 터미널 서비스를 제공하는 터미널 서버 장치로서,A terminal server device that provides terminal services to remotely connected clients. 운영 체제의 사용자 모드에서 터미널 세션을 감시하는 리소스 가상화 에이전트;A resource virtualization agent that monitors the terminal session in user mode of the operating system; 가상화 대상 리소스의 정보와 가상화 경로를 포함하는 가상화 정보를 저장하는 가상화 정보 저장부; 및A virtualization information storage unit which stores virtualization information including information of a virtualization target resource and a virtualization path; And 상기 리소스 가상화 에이전트의 터미널 세션 시작 통지에 따라 상기 가상화 정보 저장부에 저장된 가상화 대상 리소스의 타입 정보와 가상화 경로를 조합하여 가상 리소스를 생성하며, 상기 터미널 세션에서 실행된 응용 프로그램의 리소스 접근을 실시간 감시하여 상기 응용 프로그램의 가상화 대상 리소스로의 접근을 상기 가상 리소스로 변경시키는 리소스 감시모듈;을 포함하고,According to the terminal session start notification of the resource virtualization agent, a virtual resource is generated by combining the virtualization path and the type information of the virtualization target resource stored in the virtualization information storage unit, and monitors resource access of an application executed in the terminal session in real time. And a resource monitoring module configured to change the access to the virtualization target resource of the application to the virtual resource. 상기 리소스 감시모듈은,The resource monitoring module, 상기 가상화 대상 리소스의 타입이 파일인 경우, 상기 가상화 경로에 따라 상위 폴더를 생성하고 그 상위 폴더 내에 상기 가상화 대상 리소스의 접근 경로명과 동일한 명칭의 하위 폴더를 생성하며, 그 하위 폴더 내에 상기 가상화 대상 리소스를 복사하여 가상 리소스를 생성하는 것을 특징으로 하는 터미널 서버 장치.When the type of the virtualization target resource is a file, a parent folder is created according to the virtualization path, and a subfolder having the same name as an access path name of the virtualization target resource is created in the parent folder, and the virtualization resource in the subfolder. Terminal server device, characterized in that to create a virtual resource by copying. 제 2 항 또는 제 3 항에 있어서,The method according to claim 2 or 3, 터미널 세션의 정보를 저장하는 세션 정보 저장부;를 더 포함하고,And a session information storage unit for storing information of the terminal session. 상기 리소스 감시모듈은, The resource monitoring module, 상기 상위 폴더 내에서 상기 터미널 세션의 정보를 기준으로 사용자별 가상 리소스를 구분 생성하는 것을 특징으로 하는 터미널 서버 장치.And generating and generating a virtual resource for each user based on the terminal session information in the upper folder. 제 2 항 또는 제 3 항에 있어서,The method according to claim 2 or 3, 상기 리소스 감시모듈은,The resource monitoring module, 상기 응용 프로그램으로부터 상기 가상화 대상 리소스로 전송되는 요청 패킷(request packet)을 상기 가상화 리소스로 리다이렉트(redirect)하는 것을 특징으로 하는 터미널 서버 장치.And a request packet transmitted from the application program to the virtualization target resource to the virtualization resource. 삭제delete 원격 접속한 클라이언트로 터미널 서비스를 제공하는 터미널 서버 장치에서 리소스를 가상화하는 방법으로서,A method of virtualizing resources on a terminal server device that provides terminal services to remotely connected clients. (a) 가상화 대상 리소스의 정보와 가상화 경로 정보를 포함하는 가상화 정보를 등록하는 단계;(a) registering virtualization information including virtualization target resource information and virtualization path information; (b) 상기 클라이언트를 위한 터미널 세션을 생성하는 단계;(b) creating a terminal session for the client; (c) 상기 가상화 경로 및 상기 가상화 대상 리소스의 타입 정보를 조합하여 가상 리소스를 생성하는 단계;(c) generating a virtual resource by combining the virtualization path and the type information of the virtualization target resource; (d) 상기 터미널 세션에서 실행된 응용 프로그램의 리소스 접근을 실시간 감시하는 단계; 및(d) real time monitoring of resource access of an application executed in the terminal session; And (e) 상기 응용 프로그램의 가상화 대상 리소스로의 접근을 상기 가상 리소스로 변경시키는 단계;를 포함하고,(e) changing access to the virtualization target resource of the application to the virtual resource; 상기 (c) 단계는, In step (c), 상기 가상화 경로에 따라 상위 폴더를 생성하는 단계; 및Creating a parent folder according to the virtualization path; And 생성된 상위 폴더 내에 상기 가상화 대상 리소스의 접근 경로명과 동일한 명칭의 하위 폴더를 생성하는 단계;를 포함하는 것을 특징으로 하는 리소스 가상화 방법.And generating a lower folder having the same name as an access path name of the virtualization target resource in the created upper folder. 제 7 항에 있어서,The method of claim 7, wherein 상기 (c) 단계는,In step (c), 상기 하위 폴더 내에 상기 가상화 대상 리소스를 복사하는 단계;를 더 포함하는 것을 특징으로 하는 리소스 가상화 방법.Copying the virtualization target resource in the subfolder; resource virtualization method further comprising. 제 7 항 또는 제 8 항에 있어서,9. The method according to claim 7 or 8, 상기 하위 폴더 생성 단계 이전에,Before the subfolder creation step, 상위 폴더 내에 상기 터미널 세션의 정보를 이용하여 사용자 식별 폴더를 생성하는 단계;를 더 포함하고,Generating a user identification folder using information of the terminal session in a higher folder; 상기 하위 폴더는 상기 사용자 식별 폴더 내에 생성되는 것을 특징으로 하는 리소스 가상화 방법.And wherein the subfolder is created in the user identification folder. 제 7 항에 있어서,The method of claim 7, wherein 상기 (e) 단계는,In step (e), 상기 응용 프로그램으로부터 상기 가상화 대상 리소스로 전송되는 요청 패킷(request packet)을 수신하는 단계; 및Receiving a request packet transmitted from the application program to the virtualization target resource; And 수신된 요청 패킷을 상기 가상화 리소스로 리다이렉트(redirect)하는 단계;를 포함하는 것을 특징으로 하는 리소스 가상화 방법.And redirecting the received request packet to the virtualized resource.
KR1020080108494A 2008-11-03 2008-11-03 Apparatus and method for virtualization of resource in server based computing system of terminal environment KR100988111B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080108494A KR100988111B1 (en) 2008-11-03 2008-11-03 Apparatus and method for virtualization of resource in server based computing system of terminal environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080108494A KR100988111B1 (en) 2008-11-03 2008-11-03 Apparatus and method for virtualization of resource in server based computing system of terminal environment

Publications (2)

Publication Number Publication Date
KR20100049367A KR20100049367A (en) 2010-05-12
KR100988111B1 true KR100988111B1 (en) 2010-10-18

Family

ID=42275828

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080108494A KR100988111B1 (en) 2008-11-03 2008-11-03 Apparatus and method for virtualization of resource in server based computing system of terminal environment

Country Status (1)

Country Link
KR (1) KR100988111B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101667342B1 (en) * 2015-03-24 2016-10-28 펜타시스템테크놀러지 주식회사 Method and apparatus of access control for security enhancement

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070266027A1 (en) * 2006-05-09 2007-11-15 Yves Gattegno Maintaining commonly named client-specific file content in hard disk drive emulation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070266027A1 (en) * 2006-05-09 2007-11-15 Yves Gattegno Maintaining commonly named client-specific file content in hard disk drive emulation

Also Published As

Publication number Publication date
KR20100049367A (en) 2010-05-12

Similar Documents

Publication Publication Date Title
US11347530B2 (en) Method, apparatus and system for transparent unification of virtual machines
US20210182239A1 (en) Trusted File Indirection
US7735081B2 (en) Method, apparatus and system for transparent unification of virtual machines
US9830430B2 (en) Inherited product activation for virtual machines
US10673837B2 (en) Domain pass-through authentication in a hybrid cloud environment
US11216563B1 (en) Security assessment of virtual computing environment using logical volume image
US11681543B2 (en) Methods and apparatus for providing hypervisor level data services for server virtualization
US20100318992A1 (en) Terminal services application virtualization for compatability
US20130311990A1 (en) Client-side virtualization architecture
US20120089980A1 (en) Allocating virtual machines according to user-specific virtual machine metrics
US9553877B2 (en) Installing virtual machines within different communication pathways to access protected resources
US10346618B1 (en) Data encryption for virtual workspaces
US9710292B2 (en) Allowing management of a virtual machine by multiple cloud providers
JP2022522678A (en) Secure execution guest owner environment control
US20100235471A1 (en) Associating telemetry data from a group of entities
US20210026937A1 (en) Session based elastic layering
US11722550B2 (en) Sharing an input device between remote desktops of multiple client devices
KR100988111B1 (en) Apparatus and method for virtualization of resource in server based computing system of terminal environment
KR20110006487A (en) Apparatus and method for multi-terminal service using resource virtualization
US20240012666A1 (en) Protecting container images and runtime data
KR20140102485A (en) System for virtual desktop service and method therefor
KR101434794B1 (en) The method and system for defending program hacking
WO2024045000A1 (en) Application-based clipboard isolation and sharing
Al Said et al. Analysing virtual machine security in cloud systems
US20200334059A1 (en) Identifying a least cost cloud network for deploying a virtual machine instance

Legal Events

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

Payment date: 20131017

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140926

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170405

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190930

Year of fee payment: 10