KR101709117B1 - 그래픽 분할 실행을 위한 가상화 방법 및 그 장치 - Google Patents

그래픽 분할 실행을 위한 가상화 방법 및 그 장치 Download PDF

Info

Publication number
KR101709117B1
KR101709117B1 KR1020120146939A KR20120146939A KR101709117B1 KR 101709117 B1 KR101709117 B1 KR 101709117B1 KR 1020120146939 A KR1020120146939 A KR 1020120146939A KR 20120146939 A KR20120146939 A KR 20120146939A KR 101709117 B1 KR101709117 B1 KR 101709117B1
Authority
KR
South Korea
Prior art keywords
execution
file
user
server
client
Prior art date
Application number
KR1020120146939A
Other languages
English (en)
Other versions
KR20140079552A (ko
Inventor
최원혁
정문영
장수민
양경아
김원영
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020120146939A priority Critical patent/KR101709117B1/ko
Publication of KR20140079552A publication Critical patent/KR20140079552A/ko
Application granted granted Critical
Publication of KR101709117B1 publication Critical patent/KR101709117B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)

Abstract

그래픽 분할 실행을 위한 가상화 방법이 개시된다. 본 발명에 따른 그래픽 분할 실행을 위한 가상화 방법은, 분할 실행 SW 서버가 사용자 파일 관리 서버의 사용자 파일 저장소를 마운트하는 단계, 분할 실행 SW 클라이언트가 상기 사용자 파일 관리 서버의 상기 사용자 파일 저장소에서 사용자에 해당하는 폴더를 마운트하는 단계, 상기 분할 실행 SW 클라이언트가 상기 사용자 파일 저장소에서 공유된 네트워크 드라이버의 폴더 및 파일을 이용하여 파일 경로 정보를 획득하여 상기 분할 실행 SW 서버로 전달하는 단계 및 상기 분할 실행 SW 서버가 상기 파일 경로 정보를 이용하여, 상기 분할 실행 SW 서버에 연결된 파일 저장소의 파일에 접근하여 분할 실행 SW를 실행하는 단계를 포함한다.

Description

그래픽 분할 실행을 위한 가상화 방법 및 그 장치{VIRTUALIZING METHOD AND APPARATUS FOR GRAPHIC OFFLOADING}
본 발명은 그래픽 분할 실행을 위한 가상화 방법 및 그 장치에 관한 것으로, 보다 상세하게는 온라인 네트워크 환경에서 데스크탑 SW를 가상화 방식으로 제공함에 있어서, 사용자가 사용하는 저장소를 사용자 파일 관리 서버로 가상화하여, 그래픽 분할 실행을 제공하는 서버 및 클라이언트 시스템이 가상화 된 저장소를 공유하여 분할 실행 SW를 제공하는 기술에 관한 것이다.
최근 CPU 및 메모리 등의 하드웨어 제작 기술의 발전으로 인하여 저가의 고성능 PC가 급속도로 보급되고 있고 현재 PC의 컴퓨팅 능력은 초기의 슈퍼컴퓨터 수준으로 향상되었다. 데스크탑 SW들은 점점 더 화려한 사용자 인터페이스와 그래픽 집중적인 작업을 수용하도록 요구하고 있다.
또한, 그래픽 하드웨어 기술은 2D/3D, 멀티미디어와 같은 기존의 그래픽 집중적인 작업에 적용될 뿐만 아니라 웹 브라우저 렌더링, 플래시, 윈도우 운영체제까지 확대 적용되고 있다.
서버 기반의 컴퓨팅 환경은 PC 기반의 컴퓨팅 환경에서 발생하는 데이터 보안, PC의 관리 비용 등의 문제를 해결하기 위한 방안이다. 서버 기반 컴퓨팅 환경을 지원하는 기술로는 Citrix의 XenDesktop, VMware의 View 그리고 Microsoft의 RemoteFX에 기반한 터미널 서비스 등이 있다.
의학, 생물정보학, 설계도면과 같은 복잡한 구조의 3D 모델과 같은 보안상 중요한 데이터를 다루는 작업환경에 서버 기반 컴퓨팅 기법에 기반한 데스크탑 가상화 기술들이 도입되고 있는 실정이다.
하지만 이러한 서버 기반 컴퓨팅은 서버에서 SW를 실행하고, 클라이언트 PC는 단순히 터미널 역할만을 수행함으로써 클라이언트 수가 늘어날수록 서버의 부하가 커지며 서버에서 실행되는 결과 이미지를 클라이언트에 전송하는 방식을 사용함으로써 3D 렌더링과 같은 고성능 그래픽 작업을 처리하는데 한계점을 가진다.
따라서 고사양 클라이언트 PC 자원의 낭비, 서버 부하에 따른 서비스 한계, 막대한 서버 구입 비용, 느린 서비스 성능 등의 단점을 가진다.
또한, 서버 기반 컴퓨팅에서는 OS에 종속적인 세션 관리 기술이나 데스크탑 서비스에서는 가상 머신을 통하여 하나의 서버에서 다수의 사용자를 지원한다.
이는 제공하는 서버의 OS 종속성이나, 가상 머신의 부하로 인하여 서버의 도입 비용 및 관리의 제약 사항을 가진다.
한국공개특허 제2010-0062800호는 3D 및 가상현실 콘텐츠를 서비스하기 위하여 3D 장면 및 관련 데이터를 서버로부터 원격지에 있는 클라이언트에 전송하고 이를 사용자의 클라이언트에서 표현하는 기술에 대하여 개시하고 있으나, 이 한국공개특허에 개시된 기술은 클라이언트 수가 늘어날수록 서버의 부하가 커지며 서버에서 실행되는 결과 이미지를 클라이언트에 전송하는 방식을 사용함으로써 3D 렌더링과 같은 고성능 그래픽 작업을 처리하는데 한계와 서버 및 클라이언트 사이에서 보안의 한계점을 극복하지 못하는 한계가 있다.
본 발명이 이루고자 하는 목적은 서버 기반의 온라인 가상화 SW 서비스를 제공함에 있어서, SW 실행 서버와 클라이언트의 GPU를 이용하여 그래픽 분할을 실행하는 것이다.
또한, 본 발명이 이루고자 하는 목적은, 사용자 파일 관리 서버를 SW 실행 서버와 클라이언트에서 공유하여 사용함으로써 분할 실행 SW의 실행시에 사용자 파일에 액세스 할 수 있게 하는 것이다.
또한, 본 발명이 이루고자 하는 목적은, 분할 실행 클라이언트에서 실행되는 일반 SW에게 분할 실행을 위하여 공유한 사용자 파일 관리 서버의 폴더 및 파일에 대한 접근을 차단하기 위한 방법을 제공하는 것이다.
상기한 목적을 달성하기 위한 그래픽 분할 실행을 위한 가상화 방법은, 분할 실행 SW 서버가 사용자 파일 관리 서버의 사용자 파일 저장소를 마운트하는 단계, 분할 실행 SW 클라이언트가 상기 사용자 파일 관리 서버의 상기 사용자 파일 저장소에서 사용자에 해당하는 폴더를 마운트하는 단계, 상기 분할 실행 SW 클라이언트가 상기 사용자 파일 저장소에서 공유된 네트워크 드라이버의 폴더 및 파일을 이용하여 파일 경로 정보를 획득하여 상기 분할 실행 SW 서버로 전달하는 단계 및 상기 분할 실행 SW 서버가 상기 파일 경로 정보를 이용하여, 상기 분할 실행 SW 서버에 연결된 파일 저장소의 파일에 접근하여 분할 실행 SW를 실행하는 단계를 포함한다.
이 때, 상기 분할 실행 SW 클라이언트는 실행되는 프로세스의 종류에 기반하여 상기 분할 실행 SW 클라이언트에 존재하는 파일 시스템 또는 상기 사용자 파일 저장소 중 어느 하나에 접근을 허용할 수 있다.
이 때, 상기 분할 실행 SW 클라이언트는 일반 SW의 실행과 관련된 프로세스가 상기 마운트한 폴더로 접근할 때에는 접근 거부를 수행할 수 있다.
이 때, 상기 분할 실행 SW를 실행하는 단계는 상기 파일 경로 정보 및 상기 분할 실행 SW 클라이언트에 대응하는 사용자 정보를 이용하여 변환된 사용자 파일 경로 정보를 이용하여 상기 파일 저장소에 접근할 수 있다.
이 때, 상기 사용자에 해당하는 폴더를 마운트하는 단계는 상기 사용자에 대한 인증 작업을 수행한 이후에 수행할 수 있다.
또한, 본 발명의 일실시예에 따른 분할 실행 SW 클라이언트 장치는 분할 실행 SW 서버로부터 전송되는 API를 수신하고, 상기 API를 이용하여 그래픽 작업을 처리하는 그래픽 작업 처리부; 및 사용자 파일 관리 서버로부터 공유된 네트워크 드라이버에 대한 접근을 제어하는 파일 시스템 필터부를 포함할 수 있다.
이 때, 상기 파일 시스템 필터부는 상기 분할 실행 SW 클라이언트 장치에서 실행되는 프로세스의 종류에 기반하여 상기 분할 실행 SW 클라이언트 장치에 존재하는 파일 시스템 또는 상기 사용자 파일 관리 서버에 존재하는 사용자 파일 저장소 중 어느 하나에 접근을 허용할 수 있다.
이 때, 상기 파일 시스템 필터부는 상기 일반 SW의 실행과 관련된 프로세스가 상기 사용자 파일 저장소에 마운트된 폴더로 접근할 때에는 접근 거부를 수행할 수 있다.
이 때, 상기 파일 시스템 필터부는 상기 분할 실행 SW의 실행과 관련된 프로세스가 상기 사용자 파일 저장소에 마운트된 폴더로 접근할 때에는 접근 허용을 수행하고, 상기 파일 시스템에 접근할 때에는 접근 거부를 수행할 수 있다.
이 때, 상기 분할 실행 SW 클라이언트 장치는 상기 파일 경로 정보 및 상기 분할 실행 SW 클라이언트에 대응하는 사용자 정보를 이용하여 변환된 사용자 파일 경로 정보를 이용하여 상기 사용자 파일 저장소에 접근할 수 있다.
본 발명의 실시예에 따르면, 분할 실행 SW 서비스를 제공함에 있어서, 사용자 저장소를 실행 서버에 독립적으로 제공하므로, 사용자 서비스에 대한 확장이 용이하다.
또한, 사용자 파일을 실행 서버에 독립적으로 저장하기 때문에, 분할 실행 SW 서버의 분배에 대하여 유연함을 가질 수 있다.
또한, 분할 실행 SW 클라이언트에서 파일 시스템 필터를 이용하여 접근 제어를 함으로써 분할 실행 SW를 이용하는 사용자 파일에 대한 유출 등의 보안과 관련된 약점을 없앨 수 있다.
도 1은 본 발명의 실시예에 따른 그래픽 분할 실행을 위한 가상화 장치를 나타낸 도면이다.
도 2는 본 발명의 실시예에 따른 분할 실행 SW 클라이언트의 파일 시스템을 나타낸 도면이다.
도 3은 본 발명의 실시예에 따른 그래픽 분할 실행을 위한 가상화 방법을 나타낸 도면이다.
도 4는 본 발명의 실시예에 따른 그래픽 분할 실행을 위한 가상화 방법을 나타낸 도면이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 실시예에 따른 그래픽 분할 실행을 위한 가상화 장치를 나타낸 도면이다.
도 1을 참고하면, 본 발명의 실시예에 따른 그래픽 분할 실행을 위한 가상화 장치는 분할 실행 SW(Software) 서버(100), 분할 실행 SW 클라이언트(110) 및 사용자 파일 관리 서버(120)를 포함하여 구성된다.
분할 실행 SW 서버(100)는 분할 SW 실행부(101), 가상화 환경부(102), 그래픽 작업 전송부(103) 및 서버 파일 시스템(104)을 포함하여 구성된다.
분할 실행 SW 클라이언트(110)는 그래픽 작업 처리부(111), 파일 시스템 필터부(112) 및 클라이언트 파일 시스템(113)을 포함하여 구성된다.
분할 실행 SW 서버(100)의 분할 SW 실행부(101)는 분할 실행 SW 서버(100)에서 실행되는 분할 실행 SW를 저장하고, 분할 실행 SW의 실행을 제어한다.
가상화 환경부(102)는 분할 SW 실행부(101)에 저장된 분할 실행 SW를 응용프로그램 수준의 가상화를 통하여 실행한다.
그래픽 작업 전송부(103)는 실행되는 분할 실행 SW의 프로세스가 호출하는 2D/3D 렌더링 및 GUI API를 추출하여 분할 실행 SW 클라이언트(110)로 전송한다.
분할 실행 SW 클라이언트(110)의 그래픽 작업 처리부(111)는 분할 실행 SW 서버(100)로부터 전송되는 API를 수신하고 처리하는 에이전트 역할을 수행한다.
파일 시스템 필터부(112)는 사용자 파일 관리 서버(120)로부터 공유된 네트워크 드라이버에 대한 접근을 제어한다.
사용자 파일 관리 서버(120)는 분할 실행 SW 클라이언트(110) 사용자에 의하여 생성되거나 이용되는 파일을 저장하는 사용자 파일 저장소를 포함하여 구성된다.
분할 실행 SW 서버(100)는 초기화 이후에, 사용자 파일 관리 서버(120)의 사용자 파일 저장소에 저장된 사용자 전체 폴더를 분할 실행 SW 서버(100)의 서버 파일 시스템(104)의 네트워크 드라이버로 마운트한다.
이후, 분할 실행 SW 클라이언트(110)는 초기화 이후에, 사용자 파일 관리 서버(120)의 사용자 파일 저장소(121)에 저장된 해당 사용자에 대한 폴더를 인증 작업을 거친 후에, 분할 실행 SW 클라이언트(110)의 클라이언트 파일 시스템(113)의 네트워크 드라이버로 마운트한다.
이후, 분할 SW 실행부(101)의 분할 실행 SW가 가상화 환경부(102)에 의하여 구동되면, 분할 실행 SW가 생성하는 그래픽 처리 관련 API를 그래픽 작업 전송부(103)를 통하여 분할 실행 SW 클라이언트(110)로 전송하고, 그에 대한 반환 값들을 수신하여 처리한다.
분할 실행 SW 클라이언트(110)로 전송된 그래픽 API들은 그래픽 작업 처리부(110)를 통하여 렌더링 된다.
이 때, 그래픽 작업 처리부(110)가 실행되는 분할 실행 SW를 이용하여 사용자 파일을 처리하기 위한 GUI를 생성하면, 분할 실행 SW 클라이언트(110)의 API를 이용하여 처리되므로 분할 실행 SW 클라이언트(110)의 파일 시스템에 대한 접근만이 가능하다.
분할 실행 SW 서비스의 개념은 실행 되는 데이터 작업이 모두 서버에 의하여 처리되거나 저장되어야 하기 때문에, 이를 위하여 사용자 파일 관리 서버(120)의 사용자 파일 저장소를 이용하여 실행 되는 작업에 대한 데이터를 분할 실행 SW 클라이언트(110) 및 분할 실행 SW 서버(100)에서 공유하여 처리한다.
분할 실행 SW 클라이언트(110)의 그래픽 작업 처리부(111)에 의하여 사용자 파일 접근 관련 연산이 발생하면, 분할 실행 SW 클라이언트(110)에 마운트된 클라이언트 파일 시스템(113)을 이용하여 파일 경로 정보를 얻는다.
파일 경로 정보를 분할 실행 SW 서버(100)로 전달하면, 분할 SW 실행부(101)의 프로세스는 분할 실행 SW 서버(100)의 사용자 파일 시스템(104)에 마운트된 사용자 파일 저장소의 파일에 대하여 접근하여 처리할 수 있다.
예를 들어, 클라이언트(110)에서 얻어진 파일 경로 정보가 'MyFiles\MyData.dat'라면, 이를 분할 실행 SW 서버(100)로 전달하고, 분할 SW 실행부(101)는 분할 실행 SW 클라이언트(110)의 사용자 정보를 더하여 '사용자\MyFiles\MyData.dat'에 해당하는 경로로 변환하고, 이를 통해 분할 실행 SW 서버(100)의 사용자 파일 시스템에 마운트된 사용자 파일 저장소에서 접근하여 실행 처리 할 수 있다.
도 2는 본 발명의 실시예에 따른 분할 실행 SW 클라이언트의 파일 시스템을 나타낸 도면이다.
도 2는 분할 실행 SW 클라이언트(110)의 파일시스템에 대하여 실행되는 SW 프로세스들이 볼 수 있는 뷰를 도시한 것이다.
분할 실행 SW 클라이언트 파일시스템(210)은 분할 실행 SW 클라이언트(110)의 자체 파일 시스템(211)과 사용자 파일 관리 서버(120)의 파일 저장소를 마운트한 네트워크 드라이브(212)로 구성된다.
도 2에서, 자체 파일 시스템(211)을 C드라이브(C:) 및 D드라이브(D:)로, 네트워크 드라이브(212)를 Z드라이브(Z:)로 표현하였다.
분할 실행 SW 서비스에서 해당 서비스 파일의 보안 및 접근을 제어하기 위하여 분할 실행 SW 클라이언트(110)에 의하여 실행된 분할 실행 SW의 프로세스들은 분할 실행 SW View(220)와 같이 사용자 파일 관리 서버(120)의 파일 저장소를 마운트한 네트워크 드라이브만 접근할 수 있어야 한다.
또한, 분할 실행 SW가 아닌 일반 SW의 프로세스는 일반 SW View(200)와 같이 자신의 파일시스템에만 접근할 수 있어야 한다.
이를 위하여, 분할 실행 SW 클라이언트(110)의 파일 시스템 필터부(112)가 프로세스들에 대한 접근 제어 기능을 제공할 수 있다.
파일 시스템 필터부(112)는 분할 실행 SW의 실행과 관련된 프로세스가 자체 파일 시스템(211)에 접근할 때에는 접근 거부를 수행하고, 마운트한 네트워크 드라이버(212)로 접근할 때에는 접근 허용을 수행할 수 있다.
마찬가지로, 일반 SW의 실행과 관련된 프로세스가 자체 파일 시스템(211)에 접근할 때에는 접근 허용을 수행하고, 마운트한 네트워크 드라이버(212)로 접근할 때에는 접근 거부를 수행할 수 있다.
도 3은 본 발명의 실시예에 따른 그래픽 분할 실행을 위한 가상화 방법을 나타낸 도면이다.
도 3을 참고하면, 본 발명의 실시예에 따른 그래픽 분할 실행을 위한 가상화 방법은 우선, 분할 실행 SW 서버(100)는 초기화 이후에, 사용자 파일 관리 서버(120)의 사용자 파일 저장소에 저장된 사용자 전체 폴더를 분할 실행 SW 서버(100)의 서버 파일 시스템(104)의 네트워크 드라이버로 마운트한다(S100).
이후, 분할 실행 SW 클라이언트(110)는 초기화 이후에, 사용자 파일 관리 서버(120)의 사용자 파일 저장소(121)에 저장된 해당 사용자에 대한 폴더를 인증 작업을 거쳐 분할 실행 SW 클라이언트(110)의 클라이언트 파일 시스템(113)의 네트워크 드라이버로 마운트한다(S110).
이 때, 분할 SW 실행부(101)의 분할 실행 SW가 가상화 환경부(102)에 의하여 구동되면, 분할 실행 SW가 생성하는 그래픽 처리 관련 API를 그래픽 작업 전송부(103)를 통하여 분할 실행 SW 클라이언트(110)로 전송하고, 그에 대한 반환 값들을 수신하여 처리할 수 있다.
이 때, 분할 실행 SW 클라이언트(110)로 전송된 그래픽 API들은 그래픽 작업 처리부(110)를 통하여 렌더링 될 수 있다.
이 때, 그래픽 작업 처리부(110)가 실행되는 분할 실행 SW를 이용하여 사용자 파일을 처리하기 위한 GUI를 생성하면, 분할 실행 SW 클라이언트(110)의 API를 이용하여 처리되므로 분할 실행 SW 클라이언트(110)의 파일 시스템에 대한 접근만이 가능하다.
즉, 분할 실행 SW 서비스의 개념은 실행 되는 데이터 작업이 모두 서버에 의하여 처리되거나 저장되어야 하기 때문에, 이를 위하여 사용자 파일 관리 서버(120)의 사용자 파일 저장소를 이용하여 실행 되는 작업에 대한 데이터를 분할 실행 SW 클라이언트(110) 및 분할 실행 SW 서버(100)에서 공유하여 처리한다.
이후, 분할 실행 SW 클라이언트(110)의 그래픽 작업 처리부(111)에 의하여 사용자 파일 접근 관련 연산이 발생하면, 분할 실행 SW 클라이언트(110)에 마운트된 클라이언트 파일 시스템(113)을 이용하여 파일 경로 정보를 얻는다(S120).
이후, 파일 경로 정보를 분할 실행 SW 서버(100)로 전달하면(S130), 분할 SW 실행부(101)의 프로세스는 분할 실행 SW 서버(100)의 사용자 파일 시스템(104)에 마운트된 사용자 파일 저장소의 파일에 대하여 접근하여 처리할 수 있다(S140).
예를 들어, 클라이언트(110)에서 얻어진 파일 경로 정보가'MyFiles\MyData.dat'라면, 이를 분할 실행 SW 서버(100)로 전달하고, 분할 SW 실행부(101)는 분할 실행 SW 클라이언트(110)의 사용자 정보를 더하여 '사용자\MyFiles\MyData.dat' 해당하는 경로로 변환하고, 이를 통해 분할 실행 SW 서버(100)의 사용자 파일 시스템에 마운트된 사용자 파일 저장소에서 접근하여 실행 처리 할 수 있다.
도 4는 본 발명의 실시예에 따른 그래픽 분할 실행을 위한 가상화 방법을 나타낸 도면이다.
도 4를 참고하면, 본 발명의 실시예에 다른 그래픽 분할 실행을 위한 가상화 방법은 우선, 분할 실행 SW 클라이언트(110)의 파일 시스템 필터부(112)에 의하여 프로세스들에 대한 접근 제어 기능을 시작한다(S200).
분할 실행 SW 서비스에서 해당 서비스 파일의 보안 및 접근을 제어하기 위하여 분할 실행 SW 클라이언트(110)에 의하여 실행된 분할 실행 SW의 프로세스들은 사용자 파일 관리 서버(120)의 파일 저장소를 마운트한 네트워크 드라이브만 접근할 수 있어야 한다.
또한, 분할 실행 SW가 아닌 일반 SW의 프로세스는 일반 SW View(200)와 같이 자신의 파일시스템에만 접근할 수 있어야 한다.
이를 위하여, 분할 실행 SW 클라이언트(110)의 파일 시스템 필터부(112)가 프로세스들에 대한 접근 제어 기능을 제공한다.
이후, 파일 시스템 필터부(112)는 분할 실행 SW의 실행과 관련된 프로세스가 자체 파일 시스템(211)에 접근할 때에는 접근 거부를 수행한다(S210)
반대로, 마운트한 네트워크 드라이버(212)로 접근할 때에는 접근 허용을 수행할 수 있다.
이후, 마운트되어 공유된 네트워크 드라이버(212)로 일반 SW의 실행과 관련된 프로세스가 접근할 때에는 접근 거부를 수행한다(S220).
반대로, 일반 SW의 실행과 관련된 프로세스가 자체 파일 시스템(211)에 접근할 때에는 접근 허용을 수행할 수 있다.
이상, 본 발명의 구성에 대하여 바람직한 실시예을 참조하여 상세히 설명하였으나, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 예를 들어 본 발명의 그래픽 분할 실행을 위한 가상화 방법을 실현하기 위한 프로그램이 기록된 기록매체의 형태 등 다양한 형태로 구현될 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구의 범위에 의하여 나타내어지며, 특허청구의 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 분할 실행 SW 서버 101: 분할 SW 실행부
102: 가상화 환경부 103: 그래픽 작업 전송부
104: 서버 파일 시스템 110: 분할 실행 SW 클라이언트
111: 그래픽 작업 처리부 112: 파일 시스템 필터부
113: 클라이언트 파일 시스템

Claims (10)

  1. 분할 실행 SW 서버가, 사용자 파일 관리 서버의 사용자 파일 저장소를 마운트하는 단계;
    분할 실행 SW 클라이언트가, 상기 사용자 파일 관리 서버의 상기 사용자 파일 저장소에서 사용자에 해당하는 폴더를 마운트하는 단계;
    상기 분할 실행 SW 클라이언트가, 상기 사용자 파일 저장소에서 공유된 네트워크 드라이버의 폴더에 상응하는 파일 경로 정보를 획득하고, 상기 파일 경로 정보를 상기 분할 실행 SW 서버로 전달하는 단계; 및
    상기 분할 실행 SW 서버가, 상기 분할 실행 SW 서버에 연결된 파일 저장소에서 상기 파일 경로 정보에 상응하는 폴더의 파일로 접근하고, 상기 파일에 대한 GUI를 생성하여 분할 실행 SW를 실행하는 단계를 포함하고,
    상기 분할 실행 SW 클라이언트는
    프로세스를 상기 분할 실행 SW의 실행과 관련된 제1 프로세스와 상기 분할 실행 SW가 아닌 일반 SW의 실행과 관련된 제2 프로세스로 분류하고,
    상기 제1 프로세스가 상기 분할 실행 SW 클라이언트의 파일시스템으로 접근할 때에는 접근 거부를 수행하고, 상기 제1 프로세스가 상기 마운트한 폴더로 접근할 때에는 접근 허용을 수행하는 것을 특징으로 하는 그래픽 분할 실행을 위한 가상화 방법.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 분할 실행 SW 클라이언트는
    상기 제2 프로세스가 상기 마운트한 폴더로 접근할 때에는 접근 거부를 수행하고, 상기 제2 프로세스가 상기 파일 시스템으로 접근할 때에는 접근 허용을 수행하는 것을 특징으로 하는 그래픽 분할 실행을 위한 가상화 방법.
  4. 청구항 3에 있어서,
    상기 분할 실행 SW를 실행하는 단계는
    상기 파일 경로 정보 및 상기 분할 실행 SW 클라이언트에 대응하는 사용자 정보를 이용하여 변환된 사용자 파일 경로 정보를 이용하여 상기 파일 저장소에 접근하는 것을 특징으로 하는 그래픽 분할 실행을 위한 가상화 방법.
  5. 청구항 1에 있어서,
    상기 사용자에 해당하는 폴더를 마운트하는 단계는
    상기 사용자에 대한 인증 작업을 수행한 이후에 수행되는 것을 특징으로 하는 그래픽 분할 실행을 위한 가상화 방법.
  6. 분할 실행 SW 서버로부터 전송되는 API를 수신하고, 상기 API를 이용하여 그래픽 작업을 처리하는 그래픽 작업 처리부; 및
    사용자 파일 관리 서버로부터 공유된 네트워크 드라이버에 대한 접근을 제어하는 파일 시스템 필터부
    를 포함하고,
    상기 파일 시스템 필터부는
    프로세스를 분할 실행 SW의 실행과 관련된 제1 프로세스와 상기 분할 실행 SW가 아닌 일반 SW의 실행과 관련된 제2 프로세스로 분류하고,
    상기 제1 프로세스가 파일시스템으로 접근할 때에는 접근 거부를 수행하고, 상기 제1 프로세스가 상기 네트워크 드라이버의 폴더로 접근할 때에는 접근을 허용을 수행하는 것을 특징으로 하는 그래픽 분할 실행을 위한 분할 실행 SW 클라이언트 장치.
  7. 삭제
  8. 청구항 6에 있어서,
    상기 파일 시스템 필터부는
    상기 제2 프로세스가 상기 폴더로 접근할 때에는 접근 거부를 수행하고, 상기 제2 프로세스가 상기 파일시스템으로 접근할 때에는 접근 허용을 수행하는 것을 특징으로 하는 그래픽 분할 실행을 위한 분할 실행 SW 클라이언트 장치.
  9. 삭제
  10. 청구항 6에 있어서,
    상기 분할 실행 SW 서버가 상기 사용자 파일 관리 서버의 사용자 파일 저장소로 접슨할 수 있도록 상기 네트워크 드라이버의 폴더에 상응하는 파일 경로 정보를 상기 분할 실행 SW 서버로 전달하고,
    상기 분할 실행 SW 서버는
    상기 파일 경로 정보 및 상기 분할 실행 SW 클라이언트에 대응하는 사용자 정보를 이용하여 변환된 사용자 파일 경로 정보를 이용하여, 상기 사용자 파일 저장소에 접근하는 것을 특징으로 하는 그래픽 분할 실행을 위한 분할 실행 SW 클라이언트 장치.
KR1020120146939A 2012-12-14 2012-12-14 그래픽 분할 실행을 위한 가상화 방법 및 그 장치 KR101709117B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120146939A KR101709117B1 (ko) 2012-12-14 2012-12-14 그래픽 분할 실행을 위한 가상화 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120146939A KR101709117B1 (ko) 2012-12-14 2012-12-14 그래픽 분할 실행을 위한 가상화 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20140079552A KR20140079552A (ko) 2014-06-27
KR101709117B1 true KR101709117B1 (ko) 2017-02-23

Family

ID=51130589

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120146939A KR101709117B1 (ko) 2012-12-14 2012-12-14 그래픽 분할 실행을 위한 가상화 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR101709117B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101806499B1 (ko) 2016-06-10 2017-12-07 주식회사 지어소프트 파일 관리 방법 및 이를 이용한 파일 관리 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003162440A (ja) * 2001-11-26 2003-06-06 Toshiba Corp ファイルサーバおよびファイルアクセス方法
KR101401380B1 (ko) * 2010-11-04 2014-05-30 한국전자통신연구원 원격 렌더링 기반의 3d 응용프로그램 실행 장치 및 그 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
최원혁 외 1명, 서버 기반 SW 서비스에서 API 리모팅 기반의 GPU 가상화를 이용한 그래픽 분할 실행의 구현, 2011.12., 한국 인터넷 정보학회(12권6호) PP 53~62.

Also Published As

Publication number Publication date
KR20140079552A (ko) 2014-06-27

Similar Documents

Publication Publication Date Title
US10057364B2 (en) Method and apparatus for remotely running application program
US10929344B2 (en) Trusted file indirection
US9367947B2 (en) Remote rendering of three-dimensional images using virtual machines
US9830430B2 (en) Inherited product activation for virtual machines
KR101740327B1 (ko) 소프트웨어 가상화를 이용하여 소프트웨어 서비스를 제공하기 위한 장치, 시스템 및 그 방법
EP2622470B1 (en) Techniques for load balancing gpu enabled virtual machines
US9244700B2 (en) Methods and systems for delivering applications from a desktop operating system
US20120117611A1 (en) Controlling information disclosure during application streaming and publishing
US10338951B2 (en) Virtual machine exit support by a virtual machine function
US10152342B2 (en) Method and system for providing virtual desktop and virtual application interactivity
US20160127447A1 (en) File sharing using remote applications
US9792136B2 (en) Hardware assisted inter hypervisor partition data transfers
CA2637980A1 (en) Methods and systems for providing access to a computing environment
Chen et al. A lightweight virtualization solution for android devices
JP7418093B2 (ja) 初期プログラムロード機構を用いたセキュア・ゲストの起動
US20160321116A1 (en) Translating operating system processes
US20120079393A1 (en) Adaptable License Platform for Remote Sessions
KR101709117B1 (ko) 그래픽 분할 실행을 위한 가상화 방법 및 그 장치
KR101430729B1 (ko) 소프트웨어 지원 서버 및 그 방법
CN114691298A (zh) 数据处理方法、装置、设备和存储介质
Park et al. Virtualizing graphics architecture of android mobile platforms in KVM/ARM environment
Nider A comparison of virtualization technologies for use in cloud data centers
Fiel Graphics processing on HPC virtual applications
Al-Mekhlal et al. Collaborative Environment with Application Virtualization (CEAV) for Upstream environment

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant