KR101451781B1 - System and method for device duplication of virtualization system in virtual machine environment - Google Patents

System and method for device duplication of virtualization system in virtual machine environment Download PDF

Info

Publication number
KR101451781B1
KR101451781B1 KR1020130037718A KR20130037718A KR101451781B1 KR 101451781 B1 KR101451781 B1 KR 101451781B1 KR 1020130037718 A KR1020130037718 A KR 1020130037718A KR 20130037718 A KR20130037718 A KR 20130037718A KR 101451781 B1 KR101451781 B1 KR 101451781B1
Authority
KR
South Korea
Prior art keywords
data
serial
software module
virtual machine
serial control
Prior art date
Application number
KR1020130037718A
Other languages
Korean (ko)
Other versions
KR20140121216A (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 KR1020130037718A priority Critical patent/KR101451781B1/en
Publication of KR20140121216A publication Critical patent/KR20140121216A/en
Application granted granted Critical
Publication of KR101451781B1 publication Critical patent/KR101451781B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • 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
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • 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
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45545Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox

Abstract

본 명세서에 개시된 실시예에 따른 가상머신 환경에서 가상화 시스템의 장치 복제 시스템은, 가상화 시스템에서 호스트 머신으로 입력되는 데이터를 복제된 가상 머신으로 분배하는 직렬제어 드라이버 소프트웨어 모듈과; 상기 데이터를 수신하고, 상기 데이터에 대한 이중 버퍼링 기능을 수행하고, 상기 데이터의 수신을 알리는 직렬제어 데이터 분배 소프트웨어 모듈과; 상기 분배한 데이터를 수신하는 게스트머신 직렬 장치를 포함하며, 상기 직렬제어 데이터 분배 소프트웨어 모듈은 직렬화 데이터의 속성을 규정하는 직렬화 데이터 수용 자료구조와, 상기 버퍼된 데이터의 속성 관리를 위한 소프트웨어 버퍼링 요소의 자료구조를 포함할 수 있다.In a virtual machine environment according to an embodiment disclosed herein, a device clone system of a virtualization system includes: a serial control driver software module for distributing data input from a virtualization system to a host machine to a replicated virtual machine; A serial control data distribution software module for receiving the data, performing a double buffering function for the data, and informing reception of the data; And a guest machine serial device for receiving the distributed data, the serial control data distribution software module comprising: a serialized data acceptance data structure for defining attributes of the serialized data; and a software buffering element for managing the attributes of the buffered data Data structures can be included.

Description

가상머신 환경에서 가상화 시스템의 장치 복제 시스템 및 그 방법{SYSTEM AND METHOD FOR DEVICE DUPLICATION OF VIRTUALIZATION SYSTEM IN VIRTUAL MACHINE ENVIRONMENT}TECHNICAL FIELD [0001] The present invention relates to a system and method for replicating a virtual machine in a virtual machine environment,

본 명세서는 가상머신 환경에서 가상화 시스템의 장치 복제 시스템 및 그 방법에 관한 것이다.The present disclosure relates to a device cloning system and method thereof in a virtualization system in a virtual machine environment.

일반적으로, 가상머신 시스템은 호스트 컴퓨터, 호스트 운영체제, 게스트 머신, 게스트 운영체제, 응용 프로세스로 구성될 수 있다. 종래 기술에 따른 가상 머신 시스템용의 게스트 머신 실행 제어 시스템에 대한 설명은 한국 특허 출원 번호 KR19880005393에 개시되어 있다.Generally, a virtual machine system can be composed of a host computer, a host operating system, a guest machine, a guest operating system, and an application process. A description of a guest machine execution control system for a virtual machine system according to the prior art is disclosed in Korean Patent Application No. KR19880005393.

본 명세서는 가상머신 환경에서 가상화 시스템의 장치 복제와 그 장치 내 데이터의 타임 스탬핑을 통한 데이터 시간성 보존 방법 및 시스템을 제공하는 데 그 목적이 있다.It is an object of the present invention to provide a method and system for preserving data time through virtual machine system device replication and time stamping of data in the virtual machine environment.

본 명세서에 개시된 실시예에 따른 가상머신 환경에서 가상화 시스템의 장치 복제 시스템은, 가상화 시스템에서 호스트 머신으로 입력되는 데이터를 복제된 가상 머신으로 분배하는 직렬제어 드라이버 소프트웨어 모듈과; 상기 데이터를 수신하고, 상기 데이터에 대한 이중 버퍼링 기능을 수행하고, 상기 데이터의 수신을 알리는 직렬제어 데이터 분배 소프트웨어 모듈과; 상기 분배한 데이터를 수신하는 게스트머신 직렬 장치를 포함하며, 상기 직렬제어 데이터 분배 소프트웨어 모듈은 직렬화 데이터의 속성을 규정하는 직렬화 데이터 수용 자료구조와, 상기 버퍼된 데이터의 속성 관리를 위한 소프트웨어 버퍼링 요소의 자료구조를 포함할 수 있다.In a virtual machine environment according to an embodiment disclosed herein, a device clone system of a virtualization system includes: a serial control driver software module for distributing data input from a virtualization system to a host machine to a replicated virtual machine; A serial control data distribution software module for receiving the data, performing a double buffering function for the data, and informing reception of the data; And a guest machine serial device for receiving the distributed data, the serial control data distribution software module comprising: a serialized data acceptance data structure for defining attributes of the serialized data; and a software buffering element for managing the attributes of the buffered data Data structures can be included.

본 명세서에 개시된 실시예에 따른 가상머신 환경에서 가상화 시스템의 장치 복제 시스템은, 가상머신 구성상의 복제기능을 제공함에 있어서 실제 머신에서 입출력되는 입출력 데이터의 시간요소를 두어 적시성을 위한 근거를 제공한다. In a virtual machine environment according to an embodiment of the present invention, a device replication system of a virtualization system provides a time factor for timeliness by providing time elements of input and output data input and output in a real machine in providing a replication function in a virtual machine configuration.

또한, 본 발명에 따르면, 실제 호스트의 직렬장치로 입력된 데이터의 임계량에 대한 조치를 통해 불규칙한 입력에 대해서도 안정적인 입출력 처리를 수행할 수 있다.Also, according to the present invention, it is possible to perform stable input / output processing for irregular input through measures for a threshold amount of data input to a serial device of a real host.

또한, 본 발명에 따르면, 가상머신 확인을 위한 아이디를 데이터 요소에 유지하여 가상머신 아이디에 해당하는 모든 가상머신에 대해 복제 데이터를 제공하여 가상머신 복제를 통한 고장감내를 구현할 수 있다. Also, according to the present invention, it is possible to maintain fault tolerance through virtual machine replication by providing replication data for all virtual machines corresponding to virtual machine IDs by keeping IDs for virtual machine identification in data elements.

도 1은 본 명세서에 따른 실시예를 설명하기 위한 가상머신 시스템을 나타낸 예시도이다.
도 2는 본 명세서의 실시 예에 따른 가상플랫폼 상의 소프트웨어 모듈의 구조를 나타낸 도이다.
도 3은 본 명세서의 실시 예에 따른 각 소프트웨어 모듈과 연관되는 버퍼의 구조를 나타낸 도이다.
도 4는 도3에 대한 실시 예에 따른 하드웨어 입력부터 상위계층에 전달되는 소프트웨어 모듈 간의 수행 흐름을 나타내는 흐름도이다.
도 5는 도3에 대한 실시 예에 따른 상위계층부터 하위계층으로 전달되는 소프트웨어 모듈 간의 수행 흐름을 나타낸 흐름도이다.
도 6a-6c는 상기 소프트모듈의 기능 예에 따른 구조도를 나타낸 예시도이다.
도 7은 하드웨어로부터 입력된 직렬데이터를 속성분석 후 만들어지는 직렬데이터 자료구조를 나타낸 예시도이다.
BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is an illustration showing a virtual machine system for explaining an embodiment according to the present invention. Fig.
2 is a diagram illustrating a structure of a software module on a virtual platform according to an embodiment of the present invention;
3 is a diagram illustrating a structure of a buffer associated with each software module according to an embodiment of the present invention.
FIG. 4 is a flowchart illustrating an execution flow between software modules transmitted from a hardware input to an upper layer according to the embodiment of FIG. 3. FIG.
FIG. 5 is a flowchart illustrating an operation flow between software modules transferred from an upper layer to a lower layer according to the embodiment of FIG.
6A to 6C are diagrams illustrating an exemplary structure of the soft module according to an exemplary embodiment of the present invention.
FIG. 7 is a diagram illustrating an example of a serial data structure created after attribute analysis of serial data input from hardware.

이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, wherein like reference numerals are used to designate identical or similar elements, and redundant description thereof will be omitted. The suffix "module" and " part "for the components used in the following description are given or mixed in consideration of ease of specification, and do not have their own meaning or role. In the following description of the embodiments of the present invention, a detailed description of related arts will be omitted when it is determined that the gist of the embodiments disclosed herein may be blurred. In addition, it should be noted that the attached drawings are only for easy understanding of the embodiments disclosed in the present specification, and should not be construed as limiting the technical idea disclosed in the present specification by the attached drawings.

도 1은 본 명세서에 따른 실시예를 설명하기 위한 가상머신 시스템을 나타낸 예시도이다. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is an illustration showing a virtual machine system for explaining an embodiment according to the present invention. Fig.

상기 가상머신 시스템은 호스트 컴퓨터, 호스트 운영체제, 게스트 머신, 게스트 운영체제, 응용 프로세스로 구성될 수 있다. The virtual machine system may include a host computer, a host operating system, a guest machine, a guest operating system, and an application process.

도 2는 본 명세서의 실시 예에 따른 가상플랫폼 상의 소프트웨어 모듈의 구조를 나타낸 도이다. 2 is a diagram illustrating a structure of a software module on a virtual platform according to an embodiment of the present invention;

도 2를 참조하면, 상기 호스트 컴퓨터는 그 호스트 컴퓨터에 장착된 실제 호스트 컴퓨터 직렬장치(400), 호스트 컴퓨터 직렬장치(400)로부터 입력되는 데이터를 처리하는 직렬제어 드라이버 소프트웨어 모듈(300), 직렬제어 드라이버 소프트웨어 모듈(300)에서 제공되는 데이터를 수신하는 직렬제어 데이터 분배 소프트웨어 모듈(200), 호스트 운영체제의 직렬제어 데이터분배 소프트웨어 모듈(200)로부터 분배된 데이터를 처리하는 가상머신 상의 게스트 머신 직렬장치(100)로 구성되며, 이는 최초 하드웨어를 받아 각 계층간 소프트웨어 모듈에 걸쳐 전달 및 처리되며 결국 게스트 머신 상의 응용 프로세스가 데이터를 얻어갈 수 있는 형태가 된다.Referring to FIG. 2, the host computer includes a real host computer serial device 400 mounted on the host computer, a serial control driver software module 300 for processing data input from the host computer serial device 400, A serial control data distribution software module 200 for receiving data provided in the driver software module 300, a guest machine serial device (not shown) for processing distributed data from the host operating system's serial control data distribution software module 200 100), which is received and processed through software modules between layers, receiving the initial hardware, and eventually an application process on the guest machine can obtain the data.

도 3은 본 명세서의 실시 예에 따른 각 소프트웨어 모듈과 연관되는 버퍼의 구조를 나타낸 도이다.3 is a diagram illustrating a structure of a buffer associated with each software module according to an embodiment of the present invention.

도 3을 참조하면, 호스트컴퓨터 직렬장치는 하드웨어 장치로 입력된 데이터를 버퍼(d410)의 형태로 저장한다. 이 버퍼장치(d410)는 일정량의 버퍼가 채워지면 인터럽트에 의해 직렬제어 드라이버 소프트웨어 모듈 버퍼(d310)로 입력되어 드라이버 내의 버퍼(d310)로 복사된다. 직렬제어 드라이버 모듈은 입력된 버퍼(d310)에 저장된 데이터를 처리하기 위해 직렬제어 데이터 분배 소프트웨어 모듈 버퍼(s210)로 이동되며, 그 이동된 데이터는 두개의 버퍼(s210) 중 하나로 입력된다. 여기서 이중버퍼(s210) 입력을 통해 효과적인 데이터 전달이 이루어진다. Referring to FIG. 3, a host computer serial device stores data input to a hardware device in the form of a buffer d 410. The buffer device d410 is input to the serial control driver software module buffer d310 by an interrupt when a predetermined amount of the buffer is filled, and is copied to the buffer d310 in the driver. The serial control driver module is moved to the serial control data distribution software module buffer s210 to process the data stored in the input buffer d310 and the shifted data is input to one of the two buffers s210. Here, effective data transfer is achieved through the double buffer (s210) input.

상기 직렬제어 데이터 분배 소프트웨어 모듈(200)은 가상하드웨어인 게스트 머신 중 어떤 게스트 머신이 버퍼된 입력을 기다리는지 알고 있어야 한다. 분배 대상이 되는 게스트 머신의 게스트 머신 직렬장치 버퍼(g110)로 데이터가 전달된다. The serial control data distribution software module 200 needs to know which of the guest machines as virtual hardware is waiting for the buffered input. The data is transferred to the guest machine serial device buffer g110 of the guest machine to be distributed.

상기 직렬제어 데이터 분배 소프트웨어 모듈(200)에서 게스트 머신 직렬 장치로 전달될 때 여러 대의 게스트 머신에 직렬입력이 복사되어 전달된다. 본 명세서의 과정에서 최초 하드웨어 입력시의 데이터가 실시간적으로 게스트 머신 직렬장치에 전달되는가에 대한 결정을 하기 위해 타임스탬프(time stamp) 정보로 유지된다. 이는 최초 하드웨어 입력 데이터의 시간지연을 계산하여 실시간성 기준을 점검하는데 사용된다. 타임스탬프 시간데이터는 데이터의 실시간성 뿐만 아니라 적시성 등의 시간적인 가치를 판단하는 중요한 데이터가 된다. 또한, 게스트 머신의 프로세스가 게스트 머신 직렬장치 버퍼(g110)로의 출력시 게스트 머신 직렬장치에서 직렬제어 데이터 분배 소프트웨어 모듈 버퍼(이중버퍼)(s210)로 전달되어 직렬제어 데이터 분배 소프트웨어 모듈(200) 내의 이중버퍼(s210)로 전달이 된다. 데이터 전달과정에서 타임스탬프 처리가 되어 전달 데이터의 시간정보가 포함되어 유효성 여부판단에 사용될 수 있다. When the serial control data distribution software module 200 transfers the serial input to the guest machine serial device, the serial input is copied and transmitted to the plurality of guest machines. In the process of this specification, time stamp information is maintained to determine whether data at the time of first hardware input is delivered to the guest machine serial device in real time. It is used to check the real-time performance criteria by calculating the time delay of the initial hardware input data. The time stamp time data is important data for judging the temporal value such as the timeliness as well as the real time property of the data. In addition, the guest machine process is transferred from the guest machine serial device to the serial machine control data distribution software module buffer (duplex) s210 upon output to the guest machine serial device buffer g110, And transmitted to the double buffer s210. Time stamping is performed in the data transfer process and time information of the transfer data is included and can be used for judging whether or not it is valid.

상기 직렬제어 데이터 분배 소프트웨어 모듈 버퍼(s210)의 데이터는 직렬제어 드라이버 소프트웨어 모듈 버퍼(d310)로 전달되어 실제 하드웨어로의 출력을 준비한다. 직렬제어 드라이버 소프트웨어 모듈은 자신의 버퍼에 위치한 데이터의 시간정보를 점검한 후 실제 하드웨어를 통해 출력을 실시한다.The data in the serial control data distribution software module buffer s210 is transferred to the serial control driver software module buffer d310 to prepare the output to the actual hardware. The serial control driver software module checks the time information of the data located in its buffer and outputs through the actual hardware.

도 4는 도3에 대한 실시 예에 따른 하드웨어 입력부터 상위계층에 전달되는 소프트웨어 모듈 간의 수행 흐름을 나타내는 흐름도이다.FIG. 4 is a flowchart illustrating an execution flow between software modules transmitted from a hardware input to an upper layer according to the embodiment of FIG. 3. FIG.

도 4를 참조하면, 호스트 컴퓨터 직렬장치(400)는 입력된 데이터를 직렬제어 드라이버 소프트웨어 모듈(300)으로 전달한다. Referring to FIG. 4, the host computer serial device 400 transfers the input data to the serial control driver software module 300.

상기 직렬제어 드라이버 소프트웨어 모듈(300)은 데이터를 수신하고(S10), 그 수신된 데이터의 상태를 검사하고 이러한 데이터의 입력을 기반으로 데이터 패킷(알림 데이터 패킷)을 구성한다(S11). 상기 데이터 패킷 구성시 타임스탬프 정보와 데이터의 목적지 정보를 포함하게 된다. The serial control driver software module 300 receives the data (S10), checks the status of the received data, and configures a data packet (notification data packet) based on the input of the data (S11). The time stamp information and the destination information of the data are included in the data packet.

직렬제어 드라이버 소프트웨어 모듈(300)의 알림을 받은 직렬제어 데이터 분배 소프트웨어 모듈(200)은 큐상의 데이터 관리 상태를 확인하고(S12), 상기 데이터 패킷을 전달받는다. Upon receipt of the notification from the serial control driver software module 300, the serial control data distribution software module 200 checks the data management state on the queue (S12) and receives the data packet.

상기 직렬제어 데이터 분배 소프트웨어 모듈(200)은 전달받은 데이터 패킷을 버퍼 저장소에 저장하고 속성데이터를 처리하는 연산을 수행 후 분배정책에 따라서 정해진 게스트 머신 내의 게스트 머신 직렬장치(100)로 전달된다(S13, S14, S15). The serial control data distribution software module 200 stores the received data packet in a buffer storage and performs an operation for processing the attribute data, and then is transmitted to the guest machine serial device 100 in the guest machine determined according to the distribution policy (S13 , S14, S15).

직렬장치로 입력된 데이터는 게스트 운영체제 내의 드라이버 소프트웨어 모듈에 의해서 처리될 수 있도록 제공된다. 또한 게스트 운영체제 드라이버 소프트웨어 모듈에서 출력되는 데이터는 게스트 머신 직렬장치(100)에 전달되고 직렬장치에서 직렬제어 데이터 분배 소프트웨어 모듈(200)로 전달되어 저장되고 속성 데이터를 처리하고 저장되며, 그 저장된 데이터는 직렬제어 드라이버 소프트웨어 모듈(300)로 다시 전달된다. The data entered into the serial device is provided so that it can be processed by the driver software module within the guest operating system. The data output from the guest operating system driver software module is also passed to the guest machine serial device 100 and transferred from the serial device to the serial control data distribution software module 200 for storage and processing of attribute data, Serial control driver software module 300 again.

직렬제어 드라이버 소프트웨어 모듈(300)은 상태검사와 분배정책에 따라 데이터를 선택하여 호스트 컴퓨터 직렬장치로 데이터를 출력하여 실제 하드웨어로 전달하도록 한다.The serial control driver software module 300 selects data according to the status check and the distribution policy, and outputs the data to the host computer serial device to transfer the data to the actual hardware.

도 5는 도3에 대한 실시 예에 따른 상위계층부터 하위계층으로 전달되는 소프트웨어 모듈 간의 수행 흐름을 나타낸 흐름도이다.FIG. 5 is a flowchart illustrating an operation flow between software modules transferred from an upper layer to a lower layer according to the embodiment of FIG.

도 5를 참조하면, 게스트 운영체제 드라이버 소프트웨어 모듈은 데이터를 게스트 머신 직렬장치(100)에 송신한다(S21).Referring to FIG. 5, the guest operating system driver software module transmits data to the guest machine serial device 100 (S21).

상기 게스트 머신 직렬장치(100)는 상기 게스트 운영체제 드라이버 소프트웨어 모듈로부터 송신된 데이터를 그대로 직렬제어 데이터 분배 소프트웨어 모듈(200)에 전달(송신)한다(S22). The guest machine serial device 100 transmits (transmits) the data transmitted from the guest operating system driver software module to the serial control data distribution software module 200 as it is (S22).

상기 직렬제어 데이터 분배 소프트웨어 모듈(200)은 상기 전달된 데이터에 대한 상태검사(데이터 패킷 해석)와 속성 데이터 연산을 수행한다(S23, S24). 상기 직렬제어 데이터 분배 소프트웨어 모듈(200)은 상기 상태검사와 속성 데이터 연산이 수행된 데이터를 저장소에 저장 및 데이터 송신을 수행한다(S25, S26). 상기 속성 데이터 연산에서 시간성을 위배하는 조건들이 있다면 검출하게 된다. 이러한 수행을 마친 후 데이터는 직렬제어 드라이버 소프트웨어 모듈로 전달되어 호스트 컴퓨터 직렬장치로 최종 출력된다.The serial control data distribution software module 200 performs state inspection (data packet analysis) and attribute data operation on the transferred data (S23, S24). The serial control data distribution software module 200 stores the data for which the status check and attribute data operations have been performed in a storage and performs data transmission (S25, S26). If there are any conditions that violate temporality in the attribute data operation, they are detected. After this is done, the data is passed to the serial control driver software module and finally output to the host computer serial device.

도 6a-6c는 상기 소프트모듈의 기능 예에 따른 구조도를 나타낸 예시도이다. 상기 직렬드라이버 소프트웨어 모듈, 게스트머신 직렬장치, 직렬제어 데이터 분배 소프트웨어모듈 각 모듈은 해당기능을 수행하는 태스크로 구성된다. 6A to 6C are diagrams illustrating an exemplary structure of the soft module according to an exemplary embodiment of the present invention. Each of the serial driver software module, the guest machine serial device, and the serial control data distribution software module includes a task performing a corresponding function.

도 6a를 참조하면, 게스트 머신 직렬장치(100)는 직렬데이터 서비스 태스크(g111), 직렬데이터 임계량 관리태스크(g112), 직렬데이터 수집 태스크(g113)로 구성된다. 직렬데이터 수집 태스크(g113)는 하위계층으로 부터 직렬데이터를 수집하는 태스크이다. 직렬데이터 임계량 관리 태스크(g112)는 직렬데이터의 수가 임계량을 초과하는지를 관리하는 태스크이다. 직렬데이터 서비스 태스크(g111)는 게스트 머신의 소프트웨어 계층에서 직렬데이터를 요구시 전달하는 태스크이다.Referring to FIG. 6A, the guest machine serial device 100 includes a serial data service task g111, a serial data criticality management task g112, and a serial data collection task g113. The serial data collection task g113 is a task for collecting serial data from a lower layer. The serial data criticality management task g112 is a task for managing whether the number of serial data exceeds the threshold amount. The serial data service task g111 is a task for delivering serial data on demand in the software layer of the guest machine.

도 6b를 참조하면, 직렬제어 데이터 분배 소프트웨어 모듈(200)은 직렬데이터 수집태스크(s214), 직렬데이터 분류저장 태스크(s213), 직렬데이터 다중 버퍼링과 임계량 관리 태스크(s212), 직렬데이터 임계량 알림 태스크(s211)로 구성된다. 직렬데이터 수집 태스크(s214)는 하위계층으로 부터 직렬데이터를 받는 태스크이다. 직렬데이터 분류저장 태스크(s213)는 직렬데이터를 분류하여 버퍼에 저장하는 태스크이다. 직렬데이터 다중 버퍼링과 임계량 관리 태스크(s212)는 직렬데이터를 저장한 다중버퍼를 관리하고 직렬데이터의 수가 임계량을 초과하는지를 점검하는 태스크이다. 직렬데이터 임계량 알림 태스크(s211)는 임계량을 초과한 직렬데이터 발생시 상위계층에 알림기능을 수행하는 태스크이다.6B, the serial control data distribution software module 200 includes a serial data collection task s214, a serial data classification storage task s213, a serial data multiple buffering and criticality management task s212, a serial data criticality notification task (s211). The serial data collection task (s214) is a task that receives serial data from a lower layer. The serial data sorting storage task s213 is a task of classifying serial data and storing it in a buffer. The serial data multiple buffering and threshold management task (s212) manages multiple buffers storing serial data and is a task to check whether the number of serial data exceeds the threshold amount. The serial data threshold amount notification task (s211) is a task that performs a notification function to an upper layer when serial data exceeding a threshold amount is generated.

도 6c를 참조하면, 직렬제어 드라이버 소프트웨어 모듈(300)은 직렬데이터 수집태스크(d311), 직렬데이터 속성처리 태스크(d312), 직렬데이터 데이터 수집 태스크(d313)로 구성된다. 직렬데이터 수집태스크(d313)는 하드웨어로 부터 직렬데이터를 수집하는 기능을 한다. 직렬 데이터 속성처리 태스크(d312)는 하드웨어로 부터 입력된 데이터의 속성을 분석하여 필요정보를 수집하여 타임스탬프를 생성하고, 직렬데이터 자료구조를 구성한다. 직렬데이터 임계량 알림 태스크(d311)는 수집되고 속성이 분석된 데이터구조의 양이 임계량을 초과하는 순간 상위계층에 알림을 전송하는 태스크이다.Referring to FIG. 6C, the serial control driver software module 300 includes a serial data collection task d311, a serial data attribute processing task d312, and a serial data data collection task d313. The serial data collection task d313 functions to collect serial data from the hardware. The serial data attribute processing task d312 analyzes attributes of data input from hardware, collects necessary information to generate a time stamp, and constructs a serial data structure. The serial data threshold notification task d311 is a task for transmitting an alert to an upper layer as soon as the amount of the data structure in which the collected and analyzed attributes exceeds the threshold amount.

도 7은 하드웨어로 부터 입력된 직렬데이터를 속성분석 후 만들어지는 직렬데이터 자료구조를 나타낸 예시도이다. VM-UUID는 게스트머신의 UUID로서 게스트머신을 식별하는데 사용한다. DEVICE ID는 게스트 머신 내의 장치 ID이다. TimeStamp는 데이터가 발생한 시간을 알려주는 시간정보이다. SIZE는 데이터의 크기이다. DATA는 하드웨어 직렬장치로 입력된 직렬데이터이다.FIG. 7 is a diagram illustrating an example of a serial data structure in which serial data input from hardware is analyzed after attribute analysis. FIG. The VM-UUID is used to identify the guest machine as the UUID of the guest machine. The DEVICE ID is the device ID in the guest machine. TimeStamp is time information indicating the time when data occurred. SIZE is the size of the data. DATA is serial data input to a hardware serial device.

본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas falling within the scope of the same shall be construed as falling within the scope of the present invention.

100: 게스트 머신 직력 장치 200: 직렬 제어 데이터 분배 소프트웨어 모듈
300: 직렬 제어 드라이버 소프트웨어 모듈
400: 호스트 컴퓨터 직렬 장치
100: Guest machine force device 200: Serial control data distribution software module
300: Serial Control Driver Software Module
400: host computer serial device

Claims (4)

가상화 시스템에서 호스트 머신으로 입력되는 데이터를 복제된 가상 머신으로 분배하는 직렬제어 드라이버 소프트웨어 모듈과;
상기 데이터를 수신하고, 상기 데이터에 대한 이중 버퍼링 기능을 수행하는 직렬제어 데이터 분배 소프트웨어 모듈과;
상기 분배한 데이터를 수신하는 게스트머신 직렬 장치를 포함하며,
상기 직렬제어 데이터 분배 소프트웨어 모듈은 직렬화 데이터의 속성을 규정하는 직렬화 데이터 수용 자료구조와, 상기 버퍼된 데이터의 속성 관리를 위한 소프트웨어 버퍼링 요소의 자료구조를 포함하는 것을 특징으로 하는 가상머신 환경에서 가상화 시스템의 장치 복제 시스템.
A serial control driver software module that distributes data input from the virtualization system to the host machine to the replicated virtual machine;
A serial control data distribution software module for receiving the data and performing a double buffering function for the data;
And a guest machine serial device for receiving the distributed data,
Wherein the serial control data distribution software module includes a serialization data acceptance data structure that defines an attribute of the serialized data and a data structure of a software buffering element for attribute management of the buffered data. The device cloning system.
제 1항에 있어서, 상기 직렬제어 드라이버 소프트웨어 모듈은,
상기 데이터를 상기 복제된 가상머신으로 보내기 위해 타임스탬프를 부여하며 보낼 가상머신의 식별자를 가지며, 전송할 데이터의 크기를 계산하여 하나로 묶어 데이터 단위를 생성하는 것을 특징으로 하는 가상머신 환경에서 가상화 시스템의 장치 복제 시스템.
The method of claim 1, wherein the serial control driver software module comprises:
Wherein a time stamp is given to send the data to the replicated virtual machine, and an identifier of a virtual machine to be transmitted is calculated, and the size of data to be transmitted is calculated, and the data unit is created by grouping the data into one unit. Cloning system.
제 1항에서 있어서, 상기 직렬제어 데이터 분배 소프트웨어 모듈은,
상기 이중버퍼링을 통해 읽기, 쓰기 연산을 수행하며, 통신장치로서 일정량의 데이터가 대기되었을 때 상위계층에 알림을 전송하며, 데이터 단위를 타임스탬프 처리하여 다중버전으로 관리하여 처리하는 것을 특징으로 하는 가상머신 환경에서 가상화 시스템의 장치 복제 시스템.
2. The system of claim 1, wherein the serial control data distribution software module comprises:
Wherein the communication unit performs a read and a write operation through the double buffering, transmits a notification to a higher layer when a predetermined amount of data is queued as a communication apparatus, time stamps the data unit, Device cloning system in a virtualized system in a machine environment.
제 1항에 있어서, 상기 게스트머신 직렬 장치는,
상기 호스트머신에서 분배하는 데이터를 수신하고, 소프트웨어 모듈로 하드웨어 기능을 구현하며 상기 소프트웨어 모듈상에 데이터 입출력 채널기능을 세팅하여 상기 데이터를 전송하는 것을 특징으로 하는 가상머신 환경에서 가상화 시스템의 장치 복제 시스템.
The guest machine serial device according to claim 1,
Wherein the virtual machine environment receives data to be distributed from the host machine, implements a hardware function with a software module, sets a data input / output channel function on the software module, and transmits the data. .
KR1020130037718A 2013-04-05 2013-04-05 System and method for device duplication of virtualization system in virtual machine environment KR101451781B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130037718A KR101451781B1 (en) 2013-04-05 2013-04-05 System and method for device duplication of virtualization system in virtual machine environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130037718A KR101451781B1 (en) 2013-04-05 2013-04-05 System and method for device duplication of virtualization system in virtual machine environment

Publications (2)

Publication Number Publication Date
KR20140121216A KR20140121216A (en) 2014-10-15
KR101451781B1 true KR101451781B1 (en) 2014-10-16

Family

ID=51992835

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130037718A KR101451781B1 (en) 2013-04-05 2013-04-05 System and method for device duplication of virtualization system in virtual machine environment

Country Status (1)

Country Link
KR (1) KR101451781B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102562160B1 (en) 2022-11-22 2023-08-01 쿤텍 주식회사 Virtual machine system using in-memory and operating method the same

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019119315A1 (en) * 2017-12-20 2019-06-27 深圳前海达闼云端智能科技有限公司 Input processing method and apparatus based on multiple operating systems, and electronic device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060117869A (en) * 2005-05-12 2006-11-17 마이크로소프트 코포레이션 Partition bus
KR20120043427A (en) * 2010-10-26 2012-05-04 한국전자통신연구원 Host system and remote apparatus server for maintaining connectivity of virtual in spite of live migration of a virtual machine

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060117869A (en) * 2005-05-12 2006-11-17 마이크로소프트 코포레이션 Partition bus
KR20120043427A (en) * 2010-10-26 2012-05-04 한국전자통신연구원 Host system and remote apparatus server for maintaining connectivity of virtual in spite of live migration of a virtual machine

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102562160B1 (en) 2022-11-22 2023-08-01 쿤텍 주식회사 Virtual machine system using in-memory and operating method the same

Also Published As

Publication number Publication date
KR20140121216A (en) 2014-10-15

Similar Documents

Publication Publication Date Title
Hu et al. Time-and cost-efficient task scheduling across geo-distributed data centers
CN102790771B (en) A kind of document transmission method and system
US9367501B2 (en) Dynamic streaming data dispatcher
US10120820B2 (en) Direct memory access transmission control method and apparatus
JP6224244B2 (en) Power balancing to increase working density and improve energy efficiency
US7593948B2 (en) Control of service workload management
US10484190B2 (en) Managing channels in an open data ecosystem
US20140068134A1 (en) Data transmission apparatus, system, and method
US20150127880A1 (en) Efficient implementations for mapreduce systems
US9801204B2 (en) Sending node and buffer status reporting method
CN103888293A (en) Data channel scheduling method of multichannel FC network data simulation system
CN101616083A (en) A kind of message forwarding method and device
CN103414535A (en) Data sending method, data receiving method and relevant devices
US20160036665A1 (en) Data verification based upgrades in time series system
US20170048352A1 (en) Computer-readable recording medium, distributed processing method, and distributed processing device
CN105191235A (en) Cut-through processing for slow and fast ports
CN111507479B (en) Feature binning method, device, equipment and computer-readable storage medium
CN103986585A (en) Message preprocessing method and device
CN105353987A (en) File processing method and device
KR101451781B1 (en) System and method for device duplication of virtualization system in virtual machine environment
CN103455363A (en) Command processing method, device and physical host of virtual machine
CN107896196B (en) Method and device for distributing messages
US20090282287A1 (en) Supporting apparatus for analyzing computer operation status
US20220222080A1 (en) Queuing System
US8589605B2 (en) Inbound message rate limit based on maximum queue times

Legal Events

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

Payment date: 20191002

Year of fee payment: 6