KR20110071779A - 가상머신 간의 데이터 공유 시스템 및 그 방법 - Google Patents

가상머신 간의 데이터 공유 시스템 및 그 방법 Download PDF

Info

Publication number
KR20110071779A
KR20110071779A KR1020090128428A KR20090128428A KR20110071779A KR 20110071779 A KR20110071779 A KR 20110071779A KR 1020090128428 A KR1020090128428 A KR 1020090128428A KR 20090128428 A KR20090128428 A KR 20090128428A KR 20110071779 A KR20110071779 A KR 20110071779A
Authority
KR
South Korea
Prior art keywords
virtual
virtual machine
storage device
usb storage
disk image
Prior art date
Application number
KR1020090128428A
Other languages
English (en)
Other versions
KR101307342B1 (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 KR1020090128428A priority Critical patent/KR101307342B1/ko
Publication of KR20110071779A publication Critical patent/KR20110071779A/ko
Application granted granted Critical
Publication of KR101307342B1 publication Critical patent/KR101307342B1/ko

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
    • 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 사용자가 가상머신 간에 데이터 공유, 전달, 또는 교환을 요청하면, 가상 디스크 이미지 또는 USB 저장 장치를 자동으로 인식하고, 인식된 가상 디스크 이미지 또는 USB 저장 장치를 가상머신에 할당 및 해제하는 과정을 통해 자유롭게 가상머신 간에 데이터를 공유, 전달, 또는 교환할 수 있도록 하는 데이터 공유 시스템 및 그 방법에 관한 것이다.
가상 디스크, USB, 저장, 데이터, 공유, 가상머신, 전달

Description

가상머신 간의 데이터 공유 시스템 및 그 방법{System for data sharing among virtual machines and method thereof}
본 발명은 가상머신 간의 데이터 공유 시스템 및 그 방법에 관한 것이다. 보다 상세하게는, 가상머신 간의 데이터를 가상 디스크 이미지 또는 USB 저장 장치를 이용하여 데이터를 공유하는 시스템 및 그 방법에 관한 것이다.
본 발명은 지식경제부의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호:2008-S-034-02, 과제명:SoD(System on-Demand)서비스를 위한 협업형 VM 시스템 기술 개발].
프로세서 기술이 발전함에 따라 가상화 기술(virtualization technology)에 대한 관심이 꾸준히 증가하고 있다. 가상화 기술은 가상 머신 모니터(VMM:Virtual Machine Monitor)를 실행하는 단일 호스트 컴퓨터가 복수의 호스트의 뷰 또는 추상화를 제공하여 호스트의 기반 하드웨어가 독립적으로 동작하는 하나 또는 그보다 많은 가상 머신(VM:Virtual Machine)처럼 보이게 하는 것을 가능하게 한다.
각 VM은 자신의 운영체제(OS) 또는 소프트웨어 어플리케이션들을 실행하는 일체 완비된(self-contained) 플랫폼으로서 기능할 수 있다.
한편, 일반적으로 하이퍼바이저 상에서 동작하는 가상머신들은 서로 독립적인 시스템으로, 가상머신 간의 데이터 전달 또는 공유를 위해서 가상머신 웹 서버, FTP 서버 등의 별도의 네트워크 프로그램을 이용하였다.
하지만, 이러한 방법은 일반 사용자들이 웹 서버나 FTP 서버 환경 설정을 하기에 번거로운 점이 있으며, 인터넷 환경이 제공되지 않는 장소에서는 사용하기 불가능한 단점이 존재한다.
본 발명은 상기한 바와 같은 문제점을 해결하기 위하여 제안된 것으로서,
사용자가 가상머신 간에 데이터 공유, 전달, 또는 교환을 요청하면, 가상 디스크 이미지 또는 USB 저장 장치를 자동으로 인식하고, 인식된 가상 디스크 이미지 또는 USB 저장 장치를 가상머신에 할당 및 해제하는 과정을 통해 자유롭게 가상머신 간에 데이터를 공유, 전달, 또는 교환할 수 있도록 하는 것을 목적으로 한다.
본 발명의 일 실시예에 따른 가상머신 간의 데이터 공유 시스템은, 사용자로부터의 데이터 공유 요청에 따라 공유 데이터를 저장하고 있는 제1가상머신에 가상 디스크 이미지가 할당되도록 요청하는 가상 디바이스 관리부; 및 상기 가상 디바이스 관리부로부터의 요청에 따라 상기 가상 디스크 이미지를 하드 디스크로 에뮬레이션(emulation)하여 상기 제1가상머신에 할당하고, 상기 가상 디스크 이미지에 상기 공유 데이터의 저장이 완료되면 상기 제1가상머신에 할당된 상기 가상 디스크 이미지를 해제하고, 상기 해제된 가상 디스크 이미지를 상기 공유 데이터를 저장하고자 하는 제2가상머신에 할당하는 가상 디바이스 에뮬레이터부를 구비한다.
특히, 상기 제1가상머신 및 제2가상머신은, 상기 가상 디바이스 에뮬레이터부에 의해 하드 디스크로 에뮬레이션된 가상 디스크 이미지를 인식하는 하드 디스크 드라이버를 구비하는 것을 특징으로 한다.
또한, 상기 제1가상머신은, 상기 하드 디스크를 파티셔닝, 포맷팅, 및 라벨링하는 장치 관리부를 더 구비하는 것을 특징으로 한다.
또한, 상기 가상 디스크 이미지에 상기 공유 데이터의 저장이 완료되면, 상기 가상 디바이스 관리부는 상기 가상 디바이스 에뮬레이터부에 상기 가상 디스크 이미지의 해제를 요청하고, 상기 가상 디바이스 에뮬레이터부는 상기 가상 디바이스 관리부로부터의 요청에 따라 상기 제1가상머신에 할당된 상기 가상 디스크 이미지를 해제하는 것을 특징으로 한다.
한편, 본 발명의 다른 실시예에 따른 가상머신 간의 데이터 공유 시스템은, 사용자로부터의 데이터 공유 요청에 따라 공유 데이터를 저장하고 있는 제1가상머신에 USB 저장 장치가 할당되도록 요청하는 가상 디바이스 관리부; 및 상기 가상 디바이스 관리부로부터의 요청에 따라 상기 USB 저장 장치를 USB 장치로 에뮬레이션(emulation)하여 상기 제1가상머신에 할당하고, 상기 USB 저장 장치에 상기 공유 데이터의 저장이 완료되면 상기 제1가상머신에 할당된 상기 USB 저장 장치를 해제하고, 상기 해제된 USB 저장 장치를 상기 공유 데이터를 저장하고자 하는 제2가상 머신에 할당하는 가상 디바이스 에뮬레이터부를 구비한다.
특히, 상기 제1가상머신 및 제2가상머신은, 상기 가상 디바이스 에뮬레이터부에 의해 USB 장치로 에뮬레이션된 USB 저장 장치를 인식하는 USB 드라이버를 구비하는 것을 특징으로 한다.
또한, 상기 제1가상머신 및 제2가상머신은, 상기 가상 디바이스 관리부를 통해 상기 USB 저장 장치의 저장 공간을 확인하는 장치 관리부를 구비하는 것을 특징으로 한다.
또한, 상기 USB 저장 장치에 상기 공유 데이터의 저장이 완료되면, 상기 가상 디바이스 관리부는 상기 가상 디바이스 에뮬레이터부에 상기 USB 저장 장치의 해제를 요청하고, 상기 가상 디바이스 에뮬레이터부는 상기 가상 디바이스 관리부로부터의 요청에 따라 상기 제1가상머신에 할당된 상기 USB 저장 장치를 해제하는 것을 특징으로 한다.
한편, 본 발명의 일 실시예에 따른 가상머신 간의 데이터 공유 방법은, 가상머신 간의 데이터 공유 시스템에서의 데이터 공유 방법에 관한 것으로서, 사용자로부터의 데이터 공유 요청에 따라 공유 데이터를 저장하고 있는 제1가상머신에 가상 디스크 이미지가 할당되도록 요청하는 단계; 상기 요청에 따라 상기 가상 디스크 이미지를 하드 디스크로 에뮬레이션(emulation)하여 상기 제1가상머신에 할당하는 단계; 상기 가상 디스크 이미지에 상기 공유 데이터의 저장이 완료되면, 상기 제1가상머신에 할당된 상기 가상 디스크 이미지를 해제하는 단계; 및 상기 해제된 가 상 디스크 이미지를 상기 공유 데이터를 저장하고자 하는 제2가상머신에 할당하는 단계를 포함한다.
특히, 상기 제2가상머신에서 상기 공유 데이터를 저장하는 단계; 및 상기 제2가상머신에 상기 공유 데이터의 저장이 완료되면, 상기 제2가상머신에 할당된 상기 가상 디스크 이미지를 해제하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 제1가상머신에서 하드 디스크로 에뮬레이션된 가상 디스크 이미지를 인식하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 제1가상머신에서 상기 하드 디스크를 파티셔닝, 포맷팅, 및 라벨링하는 단계를 더 포함하는 것을 특징으로 한다.
한편, 본 발명의 다른 실시예에 따른 가상머신 간의 데이터 공유 방법은, 가상머신 간의 데이터 공유 시스템에서의 데이터 공유 방법에 관한 것으로서, 사용자로부터의 데이터 공유 요청에 따라 공유 데이터를 저장하고 있는 제1가상머신에 USB 저장 장치가 할당되도록 요청하는 단계; 상기 요청에 따라 상기 USB 저장 장치를 USB 장치로 에뮬레이션(emulation)하여 상기 제1가상머신에 할당하는 단계; 상기 USB 저장 장치에 상기 공유 데이터의 저장이 완료되면, 상기 제1가상머신에 할당된 상기 USB 저장 장치를 해제하는 단계; 및 상기 해제된 USB 저장 장치를 상기 공유 데이터를 저장하고자 하는 제2가상머신에 할당하는 단계를 포함한다.
특히, 상기 제2가상머신에서 상기 공유 데이터를 저장하는 단계; 및 상기 제2가상머신에 상기 공유 데이터의 저장이 완료되면, 상기 제2가상머신에 할당된 상 기 USB 저장 장치를 해제하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 제1가상머신에서 USB 장치로 에뮬레이션된 USB 저장 장치를 인식하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 USB 저장 장치 상기 제1가상머신에 할당되면, 상기 제1가상머신에서 상기 USB 저장 장치의 저장 공간을 확인하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명에 따르면 다음과 같은 효과를 기대할 수 있다.
사용자가 가상머신 내에 특정 네트워크 프로그램을 설치하지 않고, 가상 머신 간의 네트워크나 인터넷이 불가능한 환경에서도 자유롭게 데이터를 공유할 수 있다.
또한, 본 발명에 따라 USB 저장 장치를 이용하여 데이터를 공유할 경우에는 데이터를 자유롭게 휴대할 수 있는 장점도 있으며, 대용량의 데이터의 경우에는 가상 디스크 이미지를 크게 하여 자유롭게 가상머신 간에 데이터를 공유할 수가 있다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명의 바람직한 실시예에 따른 가상머신 간의 데이터 공유 시스템 및 그 방법을 첨부한 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 바람직한 실시예에 따른 가상머신 간의 데이터 공유 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, 본 발명에 따른 가상머신 간의 데이터 공유 시스템은 가상머신부(100), 가상 디바이스 에뮬레이터(150), 가상 디바이스 관리부(200), 가상 디스크 이미지(250), 및 USB 저장 장치(300)를 구비한다.
가상머신부(100)는 복수 개의 가상머신(VM)들로 구성될 수 있으며, 가상머신부(100)에 존재하는 각각의 가상머신들은 모두 동일한 구성 요소를 구비하고 있다.
다만, 이하에서는 본 발명의 이해를 돕기 위해 가상머신부(100)에 제1가상머신(110) 및 제2가상머신(120)이 존재하는 것으로 가정하고, 공유할 데이터 소스(이하, '공유할 데이터')가 저장되어 있는 가상머신을 제1가상머신(110), 제1가상머신(110)에 저장된 공유 데이터를 복사하고자 하는 가상머신을 제2가상머신(120)이라고 가정하기로 한다.
제1가상머신(110)은 기본적으로 리눅스, 윈도우 등의 운영체제(Operating system)를 탑재하고, 하드 디스크 드라이버(116), USB 드라이버(114), 및 장치 관리부(112)를 구비한다. 마찬가지로 제2가상머신(120) 또한, 기본적으로 리눅스, 윈도우 등의 운영체제를 탑재하고, 하드 디스크 드라이버(126), USB 드라이버(124), 및 장치 관리부(122)를 구비한다.
이하에서는, 불필요한 설명의 중복을 없애기 위해 제1가상머신(110)만을 예로 들어 설명하기로 한다.
하드 디스크 드라이버(116)는 제1가상머신(110)에 하드 디스크로 에뮬레이션된 가상 디스크 이미지가 할당되는 경우, 할당된 가상 디스크 이미지를 인식하고 장치 관리부(112)에 하드 디스크가 부착되었음을 통보한다.
USB 드라이버(114)는 제1가상머신(110)에 USB 장치로 에뮬레이션된 USB 저장 장치가 할당되는 경우, 할당된 USB 저장 장치를 인식하고 장치 관리부(112)에 USB 장치가 부착되었음을 통보한다.
장치 관리부(112)는 하드 디스크 드라이버(116)로부터의 통보에 따라, 제1가상머신(110)에 저장되어 있는 공유 데이터가 하드 디스크 또는 USB 저장 장치에 저장될 수 있도록 처리한다.
특히, 장치 관리부(112)가 제1가상머신(110)에 하드 디스크가 부착되었음을 하드 디스크 드라이버(116)로부터 통보 받은 경우에는, 해당 하드 디스크를 파티셔닝/포맷팅/라벨링(partitioning/formatting/labeling)하여 공유 데이터가 해당 하드 디스크에 저장될 수 있도록 처리한다.
다만, 장치 관리부(112)가 제1가상머신(110)에 USB 저장 장치가 부착되었음 을 USB 드라이버(114)로부터 통보 받은 경우에는, USB 저장 장치는 이미 파티션을 가지는 저장 장치이므로 장치 관리부(112)에서는 별도의 파티셔닝/포맷팅/라벨링을 수행하지 않는다.
가상 디바이스 관리부(200)는 사용자로부터의 데이터 공유 요청에 따라 공유 데이터를 저장하고 있는 제1가상머신(110)에 가상 디스크 이미지(250) 또는 USB 저장 장치(300)가 할당되도록 요청한다. 사용자는 가상 디바이스 관리부(200)를 통해 후술할 가상 디스크 이미지(250)를 이용한 데이터 공유 방법 및 USB 저장 장치(300)데이터 공유 방법 중 어느 하나를 택일 할 수 있다.
가상 디바이스 에뮬레이터부(150)는 가상 디바이스 관리부(200)로부터의 요청에 따라, 가상 디바이스 관리부(200)에 의해 생성된 가상 디스크 이미지(250)를 하드 디스크로 에뮬레이션(emulation)하여 제1가상머신(110)에 할당하거나 USB 저장 장치(300)를 에뮬레이션하여 제1가상머신(110)에 할당한다. 이는 전술한 바와 같이 사용자 선택에 따라 달라질 수 있다.
먼저, 제1가상머신(110)에 가상 디스크 이미지(250)가 할당된 경우,
가상 디바이스 에뮬레이터부(150)는, 제1가상머신(110)에 할당된 가상 디스크 이미지에 공유 데이터의 저장이 완료되면, 제1가상머신(110)으로부터 가상 디스크 이미지를 해제하고, 해제된 가상 디스크 이미지를 공유 데이터를 저장하고자 하는 제2가상머신(120)에 할당한다. 즉, 가상 디스크 이미지에 공유 데이터의 저장이 완료되면, 가상 디바이스 관리부(200)는 가상 디바이스 에뮬레이터부(150)에 가상 디스크 이미지의 해제를 요청하고, 가상 디바이스 에뮬레이터부(150)는 가상 디바이 스 관리부(200)로부터의 요청에 따라 제1가상머신(110)에 할당된 가상 디스크 이미지를 해제한다. 그리고, 가상 디바이스 에뮬레이터부(150)는 해제된 가상 디스크 이미지를 공유 데이터를 저장하고자 하는 제2가상머신(120)에 할당한다.
다음으로, 제1가상머신(110)에 USB 저장 장치(300)가 할당된 경우,
가상 디바이스 에뮬레이터부(150)는, 제1가상머신(110)에 할당된 USB 저장 장치에 공유 데이터의 저장이 완료되면, 제1가상머신(110)으로부터 USB 저장 장치를 해제하고, 해제된 USB 저장 장치를 공유 데이터를 저장하고자 하는 제2가상머신(120)에 할당한다. 즉, USB 저장 장치에 공유 데이터의 저장이 완료되면, 가상 디바이스 관리부(200)는 가상 디바이스 에뮬레이터부(150)에 USB 저장 장치의 해제를 요청하고, 가상 디바이스 에뮬레이터부(150)는 가상 디바이스 관리부(200)로부터의 요청에 따라 제1가상머신(110)에 할당된 USB 저장 장치를 해제한다. 그리고, 가상 디바이스 에뮬레이터부(150)는 해제된 USB 저장 장치를 공유 데이터를 저장하고자 하는 제2가상머신(120)에 할당한다.
도 2 및 도 3은 본 발명의 일 실시예에 따른 가상 디스크 이미지를 이용한 가상머신 간의 데이터 공유 방법을 설명하기 위한 도면이다. 여기서, 공유할 데이터 소스(공유 데이터)가 저장되어 있는 가상머신을 제1가상머신, 제1가상머신에 저장된 공유 데이터를 복사하고자 하는 가상머신을 제2가상머신이라 지칭하기로 한다.
도 1 내지 도 3을 참조하면, 먼저, 제1가상머신(110) 및 제2가상머신(120)이 실행된다(S100).
S100 단계를 통해 제1가상머신(110)이 실행되어 있는 상태에서, 가상 디바이스 관리부(200)는 사용자로부터 데이터 공유 요청을 수신한다(S110).
S100 단계에서 데이터 공유 요청을 수신한 가상 디바이스 관리부(200)는 제1가상머신(110)에 저장되어 있는 공유 데이터를 복사(저장)하기 위한 가상 디스크 이미지를 생성한다(S120).
다음으로, 가상 디바이스 관리부(200)는 가상 디바이스 에뮬레이터부(150)에게 자신이 생성한 가상 디스크 이미지를 제1가상머신(110)에 할당해줄 것을 요청한다(S130).
이에, 가상 디바이스 에뮬레이터부(150)는 S120 단계를 통해 생성된 가상 디스크 이미지를 하드 디스크 드라이버(116)에서 인식 가능하도록 하드 디스크로 에뮬레이션(emulation)하고(S140), 이를 제1가상머신(110)에 할당한다(S150).
S150 단계에서의 할당에 따라, 제1가상머신(110)의 하드 디스크 드라이버(116)에서는 할당된 하드 디스크를 인식한다(S160).
S160 단계를 통해 인식된 하드 디스크는 제1가상머신(110)의 장치 관리부(112)를 통해 하드 디스크 파티셔닝, 포맷팅, 및 라벨링이 수행된다(S170).
S170 단계 이후에, 제1가상머신(110)에 저장되어 있던 공유 데이터가 사용자에 의해 가상 디스크 이미지에 복사(저장)된다(S180).
사용자는 윈도우 탐색기 등을 이용하여 공유하고자 하는 데이터(공유 데이터)를 선택하고, 선택한 공유 데이터를 제1가상머신(110)에 할당되어 있는 가상 디 스크 이미지에 복사하면 된다.
가상 디스크 이미지에 공유 데이터 저장이 완료되면(S190), 가상 디바이스 관리부(200)는 가상 디바이스 에뮬레이터부(150)에게 제1가상머신(110)에서 가상 디스크 이미지를 해제 해줄 것을 요청한다(S200).
S200 단계에서의 요청에 따라, 가상 디바이스 에뮬레이터부(150)는 제1가상머신(110)에서 가상 디스크 이미지를 해제한다.
다음으로, 가상 디바이스 관리부(200)는 가상 디바이스 에뮬레이터부(150)에게 제2가상머신(120)에 가상 디스크 이미지를 할당해줄 것을 요청한다(S210). 이때의 가상 디스크 이미지는 전 단계에서 해제 처리된 가상 디스크 이미지이다.
이에 가상 디바이스 에뮬레이터부(150)는 가상 디스크 이미지를 제2가상머신(120)에 할당한다(S220).
S42 단계에서의 할당에 따라, 제2가상머신(110)의 하드 디스크 드라이버(126)에서는 할당된 가상 디스크 이미지를 인식한다.
S220 단계 이후에, 가상 디스크 이미지에 저장되어 있던 공유 데이터가 사용자에 의해 제2가상머신(120)에 복사(저장)된다(S230).
사용자는 윈도우 탐색기 등을 이용하여 가상 디스크 이미지에 저장되어 있는 공유 데이터를 제2가상머신(120)에 복사하면 된다.
제2가상머신(120)에 공유 데이터 저장이 완료되면(S240), 가상 디바이스 관리부(200)는 가상 디바이스 에뮬레이터부(150)에게 제2가상머신(110)에서 가상 디스크 이미지를 해제 해줄 것을 요청한다(S250).
S250 단계에서의 요청에 따라, 가상 디바이스 에뮬레이터부(150)는 제2가상머신(110)에서 가상 디스크 이미지를 해제하고 과정을 종료한다.
전술한 바에 따르면, 사용자가 가상머신 내에 특정 네트워크 프로그램을 설치하지 않고, 가상 머신 간의 네트워크나 인터넷이 불가능한 환경에서도 자유롭게 데이터를 공유할 수 있다. 특히, 대용량의 데이터의 경우, 가상 디스크 이미지를 크게 하여 자유롭게 가상머신 간에 데이터를 공유할 수가 있다.
도 4는 본 발명의 다른 실시예에 따른 USB 저장 장치를 이용한 가상머신 간의 데이터 공유 방법을 설명하기 위한 도면이다.
도 4를 참조하면, 먼저, 제1가상머신(110) 및 제2가상머신(120)이 실행된다.
제1가상머신(110)이 실행되어 있는 상태에서, 가상 디바이스 관리부(200)는 사용자로부터 데이터 공유 요청을 수신한다(S10). 도 4에서는 사용자가 본 발명에 다른 데이터 공유 방법 중 USB 저장 장치를 이용한 데이터 공유 방법을 선택한 것으로 가정하여 설명하기로 한다.
S10 단계를 통해 데이터 공유 요청을 수신한 가상 디바이스 관리부(200)는 사용자에게 공유 방법을 선택할 것으로 요청하고(S12), 그에 따라 사용자로부터 USB 저장 장치를 이용한 데이터 공유 방식을 선택 받는다(S14).
S14 단계에서의 사용자 선택에 따라 가상 디바이스 관리부(200)는 사용자에게 USB 저장 장치를 연결할 것을 요청하고(S16), 그에 따라 사용자는 USB 저장 장 치를 본 발명에 따른 시스템에 연결한다(S18).
USB 저장 장치가 연결됨에 따라, 가상 디바이스 관리부(200)에서는 해당USB 저장 장치를 인식한다(S20).
다음으로, 가상 디바이스 관리부(200)는 가상 디바이스 에뮬레이터부(150)에게 해당 USB 저장 장치를 제1가상머신(110)에 할당해줄 것을 요청한다(S22).
이에, 가상 디바이스 에뮬레이터부(150)는 해당 USB 저장 장치가 제1가상머신(110)의 USB 드라이버(114)에서 인식 가능하도록 USB 장치로 에뮬레이션 하고, 이를 제1가상머신(110)에 할당한다(S24).
S24 단계에서의 할당에 따라, 제1가상머신(110)의 USB 드라이버(114)에서는 할당된 USB 저장 장치를 인식한다(S26).
S26 단계를 통해 USB 저장 장치가 인식되면, 제1가상머신(110)의 장치 관리부(112)에서는 가상 디바이스 관리부(200)를 통해 USB 저장 장치에 공유 데이터를 저장하기에 충분한 저장 공간이 확보되어 있는 지를 확인한다(S27, S28).
S28 단계를 통해 상기한 USB 저장 장치에 공유 데이터를 저장하기에 충분한 저장 공간이 있다고 판단되면, 제1가상머신(110)에 저장되어 있던 공유 데이터가 사용자에 의해 USB 저장 장치에 복사(저장)된다(S30).
사용자는 윈도우 탐색기 등을 이용하여 공유하고자 하는 데이터(공유 데이터)를 선택하고, 선택한 공유 데이터를 제1가상머신(110)에 할당되어 있는 USB 저장 장치에 복사하면 된다.
USB 저장 장치에 공유 데이터 저장이 완료되면(S32), 가상 디바이스 관리 부(200)는 가상 디바이스 에뮬레이터부(150)에게 제1가상머신(110)에서 USB 저장 장치를 해제해줄 것을 요청한다(S34).
S34 단계에서의 요청에 따라, 가상 디바이스 에뮬레이터부(150)는 제1가상머신(110)에서 USB 저장 장치를 해제하고(S36), 해제 결과를 가상 디바이스 관리부(200)에 통보한다(S38).
다음으로, 가상 디바이스 관리부(200)는 가상 디바이스 에뮬레이터부(150)에게 제2가상머신(120)에 USB 저장 장치를 할당해줄 것을 요청한다(S40). 이때의 USB 저장 장치는 전 단계에서 해제 처리된 USB 저장 장치이다.
이에 가상 디바이스 에뮬레이터부(150)는 USB 저장 장치를 제2가상머신(120)에 할당한다(S42).
S42 단계에서의 할당에 따라, 제2가상머신(120)의 USB 드라이버(124)에서는 할당된 USB 저장 장치를 인식한다(S44).
S44 단계를 통해 USB 저장 장치가 인식되면, 제2가상머신(120)의 장치 관리부(122)에서는 USB 저장 장치의 저장 공간을 확인한다(S46, S48).
S48 단계를 단계 이후에, USB 저장 장치에 저장되어 있던 공유 데이터가 사용자에 의해 제2가상머신(120)에 복사(저장)된다(S50).
사용자는 윈도우 탐색기 등을 이용하여 USB 저장 장치에 저장되어 있는 공유 데이터를 제2가상머신(120)에 복사하면 된다.
제2가상머신(120)에 공유 데이터 저장이 완료되면, 가상 디바이스 관리부(200)는 가상 디바이스 에뮬레이터부(150)에게 제2가상머신(110)에서 USB 저장 장치를 해제 해줄 것을 요청한다(S250).
S250 단계에서의 요청에 따라, 가상 디바이스 에뮬레이터부(150)는 제2가상머신(110)에서 USB 저장 장치를 해제하고(S54), 해제 결과를 가상 디바이스 관리부(200)에 통보하는 것으로 과정을 종료한다(S56).
전술한 바에 따르면, 사용자가 가상머신 내에 특정 네트워크 프로그램을 설치하지 않고, 가상 머신 간의 네트워크나 인터넷이 불가능한 환경에서도 자유롭게 데이터를 공유할 수 있다. 특히, USB 저장 장치를 이용하기 때문에 데이터를 자유롭게 휴대할 수 있는 장점이 있다.
본 발명의 일부 단계들은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, CD-RW, 자기 테이프, 플로피디스크, HDD, 광 디스크, 광자기 저장장치 등이 있을 수 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
이상에서와 같이 도면과 명세서에서 최적의 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 본 발명의 바람직한 실시예에 따른 가상머신 간의 데이터 공유 시스템을 설명하기 위한 도면이다.
도 2 및 도 3은 본 발명의 일 실시예에 따른 가상 디스크 이미지를 이용한 가상머신 간의 데이터 공유 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 다른 실시예에 따른 USB 저장 장치를 이용한 가상머신 간의 데이터 공유 방법을 설명하기 위한 도면이다.
<도면의 주요 부분에 대한 부호의 설명>
100:가상머신부 110:제1가상머신
112,122:장치 관리부 114,124:USB 드라이버
116,126:하드 디스크 드라이버 120:제2가상머신
150:가상 디바이스 에뮬레이터부 200:가상 디바이스 관리부
250:가상 디스크 이미지 300:USB 저장 장치

Claims (16)

  1. 사용자로부터의 데이터 공유 요청에 따라 공유 데이터를 저장하고 있는 제1가상머신에 가상 디스크 이미지가 할당되도록 요청하는 가상 디바이스 관리부; 및
    상기 가상 디바이스 관리부로부터의 요청에 따라 상기 가상 디스크 이미지를 하드 디스크로 에뮬레이션(emulation)하여 상기 제1가상머신에 할당하고, 상기 가상 디스크 이미지에 상기 공유 데이터의 저장이 완료되면 상기 제1가상머신에 할당된 상기 가상 디스크 이미지를 해제하고, 상기 해제된 가상 디스크 이미지를 상기 공유 데이터를 저장하고자 하는 제2가상머신에 할당하는 가상 디바이스 에뮬레이터부를 구비하는, 가상머신 간의 데이터 공유 시스템.
  2. 청구항 1에 있어서,
    상기 제1가상머신 및 제2가상머신은,
    상기 가상 디바이스 에뮬레이터부에 의해 하드 디스크로 에뮬레이션된 가상 디스크 이미지를 인식하는 하드 디스크 드라이버를 구비하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 시스템.
  3. 청구항 2에 있어서,
    상기 제1가상머신은,
    상기 하드 디스크를 파티셔닝, 포맷팅, 및 라벨링하는 장치 관리부를 더 구비하는 것을 특징으로 하는 가상머신 간의 데이터 공유 시스템.
  4. 청구항 1에 있어서,
    상기 가상 디스크 이미지에 상기 공유 데이터의 저장이 완료되면, 상기 가상 디바이스 관리부는 상기 가상 디바이스 에뮬레이터부에 상기 가상 디스크 이미지의 해제를 요청하고, 상기 가상 디바이스 에뮬레이터부는 상기 가상 디바이스 관리부로부터의 요청에 따라 상기 제1가상머신에 할당된 상기 가상 디스크 이미지를 해제하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 시스템.
  5. 사용자로부터의 데이터 공유 요청에 따라 공유 데이터를 저장하고 있는 제1가상머신에 USB 저장 장치가 할당되도록 요청하는 가상 디바이스 관리부; 및
    상기 가상 디바이스 관리부로부터의 요청에 따라 상기 USB 저장 장치를 USB 장치로 에뮬레이션(emulation)하여 상기 제1가상머신에 할당하고, 상기 USB 저장 장치에 상기 공유 데이터의 저장이 완료되면 상기 제1가상머신에 할당된 상기 USB 저장 장치를 해제하고, 상기 해제된 USB 저장 장치를 상기 공유 데이터를 저장하고자 하는 제2가상머신에 할당하는 가상 디바이스 에뮬레이터부를 구비하는, 가상머 신 간의 데이터 공유 시스템.
  6. 청구항 5에 있어서,
    상기 제1가상머신 및 제2가상머신은,
    상기 가상 디바이스 에뮬레이터부에 의해 USB 장치로 에뮬레이션된 USB 저장 장치를 인식하는 USB 드라이버를 구비하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 시스템.
  7. 청구항 5에 있어서,
    상기 제1가상머신 및 제2가상머신은,
    상기 가상 디바이스 관리부를 통해 상기 USB 저장 장치의 저장 공간을 확인하는 장치 관리부를 구비하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 시스템.
  8. 청구항 5에 있어서,
    상기 USB 저장 장치에 상기 공유 데이터의 저장이 완료되면, 상기 가상 디바이스 관리부는 상기 가상 디바이스 에뮬레이터부에 상기 USB 저장 장치의 해제를 요청하고, 상기 가상 디바이스 에뮬레이터부는 상기 가상 디바이스 관리부로부터의 요청에 따라 상기 제1가상머신에 할당된 상기 USB 저장 장치를 해제하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 시스템.
  9. 가상머신 간의 데이터 공유 시스템에서의 데이터 공유 방법에 관한 것으로서,
    사용자로부터의 데이터 공유 요청에 따라 공유 데이터를 저장하고 있는 제1가상머신에 가상 디스크 이미지가 할당되도록 요청하는 단계;
    상기 요청에 따라 상기 가상 디스크 이미지를 하드 디스크로 에뮬레이션(emulation)하여 상기 제1가상머신에 할당하는 단계;
    상기 가상 디스크 이미지에 상기 공유 데이터의 저장이 완료되면, 상기 제1가상머신에 할당된 상기 가상 디스크 이미지를 해제하는 단계; 및
    상기 해제된 가상 디스크 이미지를 상기 공유 데이터를 저장하고자 하는 제2가상머신에 할당하는 단계를 포함하는, 가상머신 간의 데이터 공유 방법.
  10. 청구항 9에 있어서,
    상기 제2가상머신에서 상기 공유 데이터를 저장하는 단계; 및
    상기 제2가상머신에 상기 공유 데이터의 저장이 완료되면, 상기 제2가상머신 에 할당된 상기 가상 디스크 이미지를 해제하는 단계를 더 포함하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 방법.
  11. 청구항 9에 있어서,
    상기 제1가상머신에서 하드 디스크로 에뮬레이션된 가상 디스크 이미지를 인식하는 단계를 더 포함하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 방법.
  12. 청구항 11에 있어서,
    상기 제1가상머신에서 상기 하드 디스크를 파티셔닝, 포맷팅, 및 라벨링하는 단계를 더 포함하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 방법.
  13. 가상머신 간의 데이터 공유 시스템에서의 데이터 공유 방법에 관한 것으로서,
    사용자로부터의 데이터 공유 요청에 따라 공유 데이터를 저장하고 있는 제1가상머신에 USB 저장 장치가 할당되도록 요청하는 단계;
    상기 요청에 따라 상기 USB 저장 장치를 USB 장치로 에뮬레이션(emulation)하여 상기 제1가상머신에 할당하는 단계;
    상기 USB 저장 장치에 상기 공유 데이터의 저장이 완료되면, 상기 제1가상머신에 할당된 상기 USB 저장 장치를 해제하는 단계; 및
    상기 해제된 USB 저장 장치를 상기 공유 데이터를 저장하고자 하는 제2가상머신에 할당하는 단계를 포함하는, 가상머신 간의 데이터 공유 방법.
  14. 청구항 13에 있어서,
    상기 제2가상머신에서 상기 공유 데이터를 저장하는 단계; 및
    상기 제2가상머신에 상기 공유 데이터의 저장이 완료되면, 상기 제2가상머신에 할당된 상기 USB 저장 장치를 해제하는 단계를 더 포함하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 방법.
  15. 청구항 13에 있어서,
    상기 제1가상머신에서 USB 장치로 에뮬레이션된 USB 저장 장치를 인식하는 단계를 더 포함하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 방법.
  16. 청구항 13에 있어서,
    상기 USB 저장 장치 상기 제1가상머신에 할당되면, 상기 제1가상머신에서 상 기 USB 저장 장치의 저장 공간을 확인하는 단계를 더 포함하는 것을 특징으로 하는, 가상머신 간의 데이터 공유 방법.
KR1020090128428A 2009-12-21 2009-12-21 가상머신 간의 데이터 공유 시스템 및 그 방법 KR101307342B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090128428A KR101307342B1 (ko) 2009-12-21 2009-12-21 가상머신 간의 데이터 공유 시스템 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090128428A KR101307342B1 (ko) 2009-12-21 2009-12-21 가상머신 간의 데이터 공유 시스템 및 그 방법

Publications (2)

Publication Number Publication Date
KR20110071779A true KR20110071779A (ko) 2011-06-29
KR101307342B1 KR101307342B1 (ko) 2013-09-11

Family

ID=44402796

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090128428A KR101307342B1 (ko) 2009-12-21 2009-12-21 가상머신 간의 데이터 공유 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR101307342B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103684965A (zh) * 2013-12-06 2014-03-26 杭州华三通信技术有限公司 基于虚拟设备配置的交换设备和报文转发方法
KR20160012539A (ko) * 2014-07-24 2016-02-03 에스케이텔레콤 주식회사 가상머신 간에 이동 가능한 가상 디스크 연결방법
US9619176B2 (en) 2014-08-19 2017-04-11 Samsung Electronics Co., Ltd. Memory controller, storage device, server virtualization system, and storage device recognizing method performed in the server virtualization system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102322033B1 (ko) 2015-07-21 2021-11-04 삼성전자주식회사 운영 체제 간 디스크 이미지를 공유하는 방법 및 디바이스

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332370B2 (en) * 2006-05-09 2012-12-11 Hewlett-Packard Development Company, L.P. Maintaining commonly named client-specific file content in hard disk drive emulation
JP5056334B2 (ja) * 2007-10-15 2012-10-24 富士通株式会社 管理プログラム、管理装置、および管理方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103684965A (zh) * 2013-12-06 2014-03-26 杭州华三通信技术有限公司 基于虚拟设备配置的交换设备和报文转发方法
CN103684965B (zh) * 2013-12-06 2017-07-14 新华三技术有限公司 基于虚拟设备配置的交换设备和报文转发方法
KR20160012539A (ko) * 2014-07-24 2016-02-03 에스케이텔레콤 주식회사 가상머신 간에 이동 가능한 가상 디스크 연결방법
US9619176B2 (en) 2014-08-19 2017-04-11 Samsung Electronics Co., Ltd. Memory controller, storage device, server virtualization system, and storage device recognizing method performed in the server virtualization system

Also Published As

Publication number Publication date
KR101307342B1 (ko) 2013-09-11

Similar Documents

Publication Publication Date Title
KR101602519B1 (ko) 가상화된 저장소 할당 방법
JP4942966B2 (ja) パーティションバス
EP3554025B1 (en) Method for forwarding packet and physical host
KR102047558B1 (ko) 가상 디스크 저장 기술
US9582221B2 (en) Virtualization-aware data locality in distributed data processing
US7984262B2 (en) Data transmission for partition migration
Rosenblum The Reincarnation of Virtual Machines: Virtualization makes a comeback.
JP4585276B2 (ja) ストレージシステム
US8291412B2 (en) Method of checking a possibility of executing a virtual machine
US20070050767A1 (en) Method, apparatus and system for a virtual diskless client architecture
US20140173595A1 (en) Hybrid virtual machine configuration management
US20080256530A1 (en) System and Method for Determining Firmware Compatibility for Migrating Logical Partitions
US10289564B2 (en) Computer and memory region management method
US20070253436A1 (en) Communicating in a virtual environment
WO2016047814A1 (ko) 클라우드 api 키를 이용한 자원 할당 방법 및 이를 위한 장치
US10684884B1 (en) Application containers running inside virtual machine
KR101307342B1 (ko) 가상머신 간의 데이터 공유 시스템 및 그 방법
EP4170492A1 (en) System and interrupt processing method
JP2008021252A (ja) 計算機システム及びアドレス割当方法
WO2013005923A1 (ko) 물리서버를 가상 서버로 마이그레이션하는 장치 및 그 방법
KR101765723B1 (ko) 과립형 gpu 자원 스케줄러와 gpu 인지형 스케줄러 간의 상호작용 장치 및 방법
JP5439435B2 (ja) 計算機システムおよびその計算機システムにおけるディスク共有方法
US20140068734A1 (en) Managing Access to a Shared Resource Using Client Access Credentials
JP2011221634A (ja) 計算機システム、論理区画管理方法及び論理分割処理プログラム
JP2001014147A (ja) セットアップ代行システム

Legal Events

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

Payment date: 20161004

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180904

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190903

Year of fee payment: 7