KR101930113B1 - 가상 머신 이미지 분석 기법 - Google Patents
가상 머신 이미지 분석 기법 Download PDFInfo
- Publication number
- KR101930113B1 KR101930113B1 KR1020137034508A KR20137034508A KR101930113B1 KR 101930113 B1 KR101930113 B1 KR 101930113B1 KR 1020137034508 A KR1020137034508 A KR 1020137034508A KR 20137034508 A KR20137034508 A KR 20137034508A KR 101930113 B1 KR101930113 B1 KR 101930113B1
- Authority
- KR
- South Korea
- Prior art keywords
- virtual machine
- settings
- values
- target
- sample
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Investigating Or Analysing Biological Materials (AREA)
Abstract
가상 머신을 분석하는 기법들이 기술된다. 일실시예에서, 설정들의 서브세트가 하나 이상의 가상 머신 이미지로부터 추출되는데, 가상 머신 이미지는 설정들의 값을 저장하고 있다. 설정들은 가상 머신 내에서 실행중인 가상 머신 이미지의 소프트웨어에 의해 각각 사용된다. 가상 머신 이미지 중 타겟 가상 머신 이미지가 선택되고 설정들의 타겟 값이 타겟 가상 머신 이미지로부터 획득된다. 설정들의 샘플 값은 복수의 가상 머신 이미지로부터 획득된다. 서브세트는 가상 머신 이미지들 간의 값의 유사점 및 차이점을 식별함으로써 형성된다.
Description
가상 머신에서의 소프트웨어 관리 분야에서, 가상 머신 게스트 운영체제에서의 다수의 변수들은 사람들이 몇몇 임의의 목적에 대해 관련이 있거나 중요한 소프트웨어 설정들(settings) 간을 구별하기 어렵게 만들 수 있다. 예를 들어, (가상 머신의)게스트 운영체제의 환경 설정 및/또는 가상 머신에 설치된 애플리케이션 소프트웨어로 실험하는 사람은 시간이 지남에 따라 예컨대 직접 수동 편집을 함으로써 소프트웨어 인스톨 또는 언인스톨 등과 같은 작업에 대한 부작용으로서 구성을 많이 변경할 수 있다. 이러한 구성 또는 설정 변경이 누적됨에 따라, 사용자가 행한 동작들을 거슬러 조사하는 것이 어려울 수 있고 무엇이 가상 기계로 하여금 바람직한 상태 또는 바람직하지 않은 상태로 동작을 시작하게 했는지를 알아내는 것이 어려울 수 있다.
가상 머신의 많은 변경 상태 파라미터들 중에서 의미 또는 중요성을 갖는 파라미터를 식별하는 것은 어려울 뿐만 아니라, 가상 머신 상에서 다른 유형 또는 카테고리의 변경가능 값들 간을 구별하는 것도 어려울 수 있다. 일부는 게스트 운영체제 또는 애플리케이션 소프트웨어가 어떻게 기능하는지를 결정하기 위해 읽을 수 있는 진정한 구성 파라미터일 수 있다. 나머지는 성능 메트릭, 타임스탬프, 사용량 카운트 등과 같은 게스트 운영체제에 의해 출력되는 운영 데이터를 포함할 수 있다. 이들 중에서도, 가상 머신을 평가하기 위해, 가상 머신의 바람직한 또는 바람직하지 않은 현재 상태와 상관되는 운영 데이터 및 가상 머신의 상태에 사실상 독립적인 운영 데이터를 결정하는 것이 어려울 수 있다.
피어 프레셔 타입 알고리즘을 사용하여 가상 머신 이미지를 분석하는 것과 관련된 기술이 아래에 설명된다.
본 요약부는 이하 발명의 상세한 설명에서 보다 자세히 기술될 일부 개념들을 소개하기 위해 제공되는 것이다. 본 요약부는 포괄적으로 이루어진 것이 아니고, 말미에 제시되는 청구항에 기재된 청구대상의 범위를 정확하게 기술하고자 하는 것도 아니다.
가상 머신을 분석하는 기법들이 기술된다. 일실시예에서, 설정들의 서브세트가 하나 이상의 가상 머신 이미지로부터 추출되는데, 가상 머신 이미지는 설정들의 값을 저장하고 있다. 설정들은 가상 머신 내에서 실행중인 가상 머신 이미지의 소프트웨어에 의해 각각 사용된다. 가상 머신 이미지 중 타겟 가상 머신 이미지가 선택되고 설정들의 타겟 값이 타겟 가상 머신 이미지로부터 획득된다. 설정들의 샘플 값은 복수의 가상 머신 이미지로부터 획득된다. 서브세트는 가상 머신 이미지들 간의 값의 유사점 및 차이점을 식별함으로써 형성된다. 유사점 및 차이점은, 예컨대 베이지안 추정을 이용하여 통계적으로 분석될 수 있다.
많은 부수적인 특징들은 첨부 도면과 관련하여 고려되는 하기 상세한 설명을 참조하여 이하에 설명될 것이다.
본 발명은 첨부한 도면을 참고로 한 상세한 설명으로부터 가장 잘 이해될 수 있을 것이며, 도면에서 유사한 참조번호는 유사한 부분을 지시하는데 사용된다.
도 1은 예시적은 가상화층을 도시한 도면.
도 2는 가상 머신 및 가상 머신 이미지에 대한 가상화층의 프로세스 및 상호작용을 도시한 도면.
도 3은 실행중인 가상 머신의 스냅샷이 어떻게 캡처될 수 있는 지를 도시한 도면.
도 4는 일반적인 피어 프레셔 알고리즘(peer pressure algorithm)을 도시한 도면.
도 5는 설정을 획득하는 다양한 접근법을 도시한 도면.
도 6은 가상 머신 이미지 내 예시적인 설정들을 도시한 도면.
도 7은 설정들 및 값들의 예시적인 데이터베이스를 도시한 도면.
도 8은 피어 프레셔 컴포넌트 및 예시적인 출력들을 이용한 시스템을 도시한 도면.
도 1은 예시적은 가상화층을 도시한 도면.
도 2는 가상 머신 및 가상 머신 이미지에 대한 가상화층의 프로세스 및 상호작용을 도시한 도면.
도 3은 실행중인 가상 머신의 스냅샷이 어떻게 캡처될 수 있는 지를 도시한 도면.
도 4는 일반적인 피어 프레셔 알고리즘(peer pressure algorithm)을 도시한 도면.
도 5는 설정을 획득하는 다양한 접근법을 도시한 도면.
도 6은 가상 머신 이미지 내 예시적인 설정들을 도시한 도면.
도 7은 설정들 및 값들의 예시적인 데이터베이스를 도시한 도면.
도 8은 피어 프레셔 컴포넌트 및 예시적인 출력들을 이용한 시스템을 도시한 도면.
이하에서 논의하는 실시예들은 가상 머신 이미지를 분석하는 것과 관련이 있다. 배경기술에서 언급한 바와 같이, 가상 머신 상에서의 많은 관측가능한 값들 중에서 어느 값이 설정(setting)을 위한 값인지 또는 관심이 있는 파라미터이고 관심이 없는 파라미터인지를 식별하기 위해 사용자가 이들을 조사하는 것은 어려울 수 있다. 가상 머신 상에 존재할 수 있는 많은 설정 중에서 의미있는 설정을 식별하기 위해, 가상 머신의 파라미터 또는 설정을 평가하고 분류하는 베이지안 기반 피어 프레셔(Bayesian-based peer-pressure) 기법이 이용된다. 머신 가상화의 개요에 대해 설명한 후에, 피어 프레셔 알고리즘에 대해 논의하고, 그 다음에 피어 프레셔 알고리즘이 어떻게 가상 머신 이미지로부터 추출된 데이터에 적용될 지에 대해 설명할 것이다.
도 1은 예시적인 가상화층(100)을 도시한 것이다. 컴퓨터(102)는 CPU(106), 메모리(108), 네트워크 인터페이스(110), 비휘발성 저장 장치(112), 및 버스, 디스플레이 어댑터 등과 같은 도시되지 않은 다른 컴포너트를 포함하는 하드웨어(104)를 포함한다. 가상화층(100)은 가상 머신(114)의 실행을 관리하고 실행을 용이하게 한다. 도 1에는 도시되어 있지 않지만, 각각의 가상 머신(114)은 통상적으로 관련 가상 디스크 이미지 및 게스트 운영 체제를 갖는다. 간략화를 위해, 운영 체제 및 아마도 가상 머신의 애플리케이션 소프트웨어는 때론 게스트라고도 하는데, 이는 가상 머신(114)과 연관된 가상 디스크 이미지로부터 저장되고 실행된다.
가상화층(100)은 Hyper-V 서버(TM), VMWare ESX 서버(TM), Xen, Oracle VM(TM) 등과 같은 임의의 다양한 기존의 또는 향후의 구현들일 수 있다. 가상화층의 아키텍처는 호스트 운영 체제에서 실행되는 가상 머신 모니터(VMM)를 갖는 호스트형(hosted type) 또는 컴퓨터(102)의 하드웨어(104) 상에서 직접 실행되는 하이퍼바이저를 갖는 베어 메탈형(bare-metal type) 등일 수 있다. 본 명세서에서 사용된 바와 같이, "가상 머신(virtual machine)"이란 용어는 자신에 대한 네이티브 코드(native code)를 실행할 수 있는 임의의 특정한 하드웨어 아키텍처(예컨대, x86)를 시뮬레이트하는 시스템형 가상 머신을 지칭하는데, 게스트에게는, 가상 머신과 하드웨어 머신이 거의 구별 가능하지 않다. 본 명세서에서 논의된 가상 머신은 자바 가상 머신과 같은 추상형(abstract type) 또는 프로세스형 가상 머신이 아니다.
가상화층(100)은, 가상 머신(114)을 관리하고 자신과 가상 머신(114)에 의해 하드웨어(104)를 공유하는 기본 기능을 수행한다. 하드웨어(104)로부터 가상 머신(114)을 격리시키기 위한 다양한 기법들 중 임의의 기법이 사용될 수 있다. 일실시예에서, 가상화층은 가상 머신들(114)에 대응하는 여러 격리 환경(즉, 파티션 또는 도메인)을 제공할 수 있다. 공유된 가상 장치 드라이버, 다양한 가상 머신 통신 설비 및 가상 머신 관리 API(application programming interface)와 같은 일부 가상화층(100)은 특별한(special privileged) 파티션 또는 도메인에서 실행될 수 있으며, 세밀하고 효율적인 하이퍼바이저를 가능하게 한다. 다른 실시예들에서, 가상 머신 관리 및 하드웨어(104)의 일관된 공유를 위한 기능이 획일적인 온더메탈(on-the-metal) 하이퍼바이저에 상주한다.
도 2는 가상 머신(114) 및 가상 머신 이미지(140)에 대한 가상화층(100)의 프로세스 및 상호작용을 도시한 것이다. 가상화층(100)은 가능하게는 대응하는 가상 머신 구성 파라미터에 따라서 가상 머신(114)을 시동시키고 실행시키는 프로세스(142)를 수행한다. 가상 머신(VM)(114)이 시동되면, 가상화층은 관련 가상 머신 이미지(140)를 식별한다. 실제로, 임의의 가상 머신 이미지(140)는 임의의 가상 머신(114)에 의해 사용될 수 있다. 가상 머신 이미지(140)는 가상화층(100)의 파일 시스템(141) 상의 특별히 포맷된 파일(예컨대, VHD)일 수 있다. 가상화층(100)은 식별된 가상 머신 이미지(140)를 로딩한다. 시동된 가상 머신(114)은 가상 머신 이미지(140)를 탑재하고 판독하고, 아마도 마스터 부트 레코드 또는 다른 부트 정보를 추적하며, 실행을 시작하는 게스트 운영 체제를 부팅한다.
가상화층(100)은 가상 머신(114)의 실행, 게스트의 커널에 대한 소정의 호출, 하이퍼콜(hypercall) 등의 처리 및 하부 하드웨어(104)에 대한 가상 머신(114)의 액세스 조정을 관리한다. 게스트 및 그 소프트웨어가 실행되면, 가상화층(100)은 가상 디스크 이미지(140) 상에서의 게스트의 상태를 유지할 수 있으며, 게스트 또는 게스트에 의해 실행되는 애플리케이션이 데이터를 "디스크"에 기록할 경우 가상화층(100)은 데이터를 가상 디스크 이미지(140)의 포맷으로 변환하여 이미지에 기록한다.
가상화층(100)은 가상 머신(114)을 셧다운하는 프로세스(144)를 수행할 수 있다. 가상 머신(114) 중지 명령이 수신되면, 가상 머신(114)의 상태 및 그 게스트가 가상 디스크 이미지(140)에 저장되고, 실행중인 가상 머신(114) 프로세스(또는 파티션)가 삭제된다. 가상 머신(114)의 나중의 재시동을 위해 가상 머신(114)의 이력이 유지될 수 있다.
도 3은 실행중인 가상 머신의 스냅샷이 어떻게 캡처될 수 있는지를 보여준다. 가상 머신(114)은 하드웨어(104)를 사용하여 실행되는 게스트 운영 체제(180)를 포함한다. 실행중인 가상 머신(113)은 게스트 운영 체제(180) 및 임의의 애플리케이션 또는 설치되어 있는 기타 소프트웨어를 저장하는 가상 디스크 저장부를 제공한다. 요컨대, 게스트 운영 체제(180) 및 애플리케이션의 상태(182)는 가상화층(100)에 의해 관리되는 하드웨어(104) 전역에 걸쳐 물리적으로 존재할 수 있다. 결국 물리적 머신의 임의의 알려진 하드웨어 또는 소프트웨어 특징은 가상 머신(114) 상에서 거의 동등한 양을 가질 수 있다. 가상화층(100)은 스냅샷(188)을 캡처하기 위한 프로세스(186)를 수행하는 스냅샷 컴포넌트(184)를 포함한다. 가상 머신(114)이 실행 중인 동안, 가상 머신(114)의 스냅샷 캡처 명령이 수신된다. 예를 들어, 가상화 관리 시스템은 가상화층(100)에 의해 수신되는 명령을 네트워크를 통해 전송할 수 있다. 일부 가상화 구현에서는, 스냅샷이 캡처되기 전에, 일부 사전 준비가 요구될 수도 있다. 예를 들어, 캐시가 플러싱(flushing)을 요구할 수 있거나, 파일 시스템 또는 저장 시스템이 비활성화될(quiesced) 필요가 있을 수 있거나, 게스트 운영 체제(180)의 메모리 페이지가 저장될 필요가 있거나 할 수 있다.
스냅샷(188) 캡처는 기존의 기법들 또는 현존하는 가상화 기술의 구현들을 이용하여 수행될 수 있다. 특히, 스냅샷(188)은 그에 상당하는 실행중인 물리적 머신에서 이용가능한 임의의 정보를 포함할 수 있다. 예를 들어, 스냅샷(188)은 가상 머신(113)의 메모리의 카피를 포함할 수 있는데, 이 카피는 실행 프로세스(190), 커널 데이터 구조(192) 또는 가상 머신(113)의 가상화된 물리적 메모리 내의 임의의 정보를 포함할 수 있다. 또한, 스냅샷(188)은 레지스터 값, 버퍼 내용(buffer content) 등을 포함한, 가상 머신에 의해 사용된 물리적 장치 또는 가상 장치로부터 캡처된 정보를 포함할 수 있다. 일부 구현에서, 스냅샷 프로세스(186)는 또한 가상 CPU 정보(가상 코어 또는 CPU의 개수), 메모리 및 저장 장치의 양, 가상 장치, 가상 네트워크 인터페이스 카드, BIOS, 가상 마더 보드, 장치 드라이버 등과 같은 가상 머신(113)의 가상의 물리적 환경에 대한 정보를 캡처할 수도 있다. 일부 가상화 구현들은 스냅샷을 가상 머신의 디스크 이미지에 링크시킬 수 있고, 스냅샷은 가상 머신의 디스크 이미지와 다른 실행중인 가상 머신의 저장 블록을 포함할 수 있다. 요컨대, 스냅샷(188)은 가상 머신의 캡처된 작업 상태를 포함하는 파일과 같은 지속성 객체(persistent object)이다. 대부분의 가상화 구현들은 스냅샷이 로딩되어 실행될 수 있게 하는데, 즉 스냅샷을 실행하는 가상 머신(가능하게는 스냅샷을 캡처한 원래의 가상 머신 이외의 가상 머신)이 마치 스냅샷이 취해진 시간에서의 원래의 가상 머신처럼 실행을 시작한다. 다른 말로 하면, 실행중인 가상 머신의 상태가 캡처되어 동일 또는 새로운 가상 머신에서 나중에 다시 시작될 수 있다.
일부 가상화 구현에서는, 스냅샷 및 디스크 이미지 파일이 기능적으로 호환가능함을 주지해야 한다. 따라서, 본 명세서에서 사용된 바와 같이, "가상 머신 이미지"란 용어는 가상화층이 가상 디스크로서 가상 머신에 제공하는 특별한 포맷의 파일뿐만 아니라 실행중인 가상 머신으로부터 캡처된 스냅샷 모두를 지칭할 것이다.
도 4는 일반적인 피어 프레셔 알고리즘을 보여준다. 결함있는 기계(faulty machine)를 진단하는데 적용되는 피어 프레셔 알고리즘은 "utomatic Misconfiguration Troubleshooting with PeerPressure" (H.Wang, J.Platt, Y.Chen, R. Zhang, and Y.-M.Wang; USENIX OSDE, 2004)에 상세히 설명되어 있다. 전술한 참조문헌은 본 명세서에 참조로서 포함된다. 도 4에 대한 이하의 설명은 인용문헌에 기술된 알고리즘을 요약하고 일반화한다.
단계 220에서, 타겟 머신, 예컨대 결함있는 머신이 사용자에 의해 선택된다. 단계 222에서, 타겟 관련 설정값 쌍이 추출된다. 일반적으로, 가상 머신 이미지 내에서 찾아낼 수 있는 임의의 유형의 설정값 쌍이 추출될 수 있다(본 명세서에서 사용된 바와 같이, "설정(seting)"은 가상 머신 이미지에 대해 지속되는 로그 파일 또는 임의의 게스트/애플리케이션 상태 또는 출력과 같은 동작 상태 또는 기록/출력 데이터를 지칭할 수도 있다). 예를 들어, 설정값 쌍은 레지스트리 키 및 그 내용(값), 파일 디렉토리 및 디렉토리 내 파일의 이름, 파일 및 그 파일의 첫번째 라인, 로그 파일 및 그 로그 파일 내 라인의 수, 가상화 파라미터(예컨대, 메모리 할당) 및 그 값 등일 수 있다. 즉, 설정 또는 파라미터는 대응하는 값의 출처가 되는 가상 머신 이미지 상의 위치를 식별하는 일부 정보이고, 그 값은 그 위치에서의 내용이다.
단계 224에서, 타겟 설정값 쌍이 정규화(canonicalized)될 수 있다. 이것은 단지 설정 및 값을 일부 정규 형식(canonical form)으로 하여 이들이 의미론적으로 정확하게 비교될 수 있게 하는 것을 포함한다. 예를 들어, 철자 또는 형식에서의 변형(variation)이 수정될 수 있거나(예컨대, "#1"이 "1"로 변환될 수 있다), 값들이 숨겨질 수 있거나 할 수 있다.
단계 226에서, 관련 가상 머신의 샘플 세트가 식별되고, 단계 222에서의 설정에 대응하는 설정값 쌍(또는 단지 값들)의 샘플 세트가 획득된다. 가상 머신은 임의의 기준, 아마도 사용자가 정의한 기준에 기초하여 식별될 수 있다. 예를 들어, 골든 이미지(golden image)와 같은 동일한 가상 머신 이미지에 기초한 가상 이미지가 선택될 수 있다. 동일한 애플리케이션을 갖는 가상 머신이 식별될 수 있다. 사용자에 의해 선택된 가상 머신 세트가 식별될 수 있다. 그 후 값들이 추출된다. 이 값들은 식별된 가상 머신의 가상 머신 이미지로부터 사전 추출될 수 있고, 그 후 정규 형식으로 데이터베이스에 저장되며(도 7 참조), 필요시 이 데이터베이스로부터 값들이 얻어질 수 있다. 이 값들은 가상 머신 이미지로부터 직접 추출될 수 있고, 필요시 정규화될 수 있다.
단계 228에서, 피어 프레셔 알고리즘이 통계적 분석을 수행하여 설정에 대한 정보를 도출해낸다. 즉, 어느 설정이 (단계 220으로부터의)그 타겟 머신에 대해 관심이 있을 것 같은지 그리고 어느 설정이 관심이 없을 것 같은지를 식별하는 것을 돕기 위한 계산이 수행된다. 바꾸어 말하면, 통계적 계산은 샘플링된 가상 머신에 대한 타겟 가상 머신의 동작에 실질적으로 영향을 미칠(또는 신호를 줄) 가능성이 낮은 것으로 여겨지는 설정을 식별해 낸다. 전술한 참조 문헌에 자세히 설명되어 있지만, 그 중 일부를 이하에 설명한다.
일반적인 아이디어는, 일부 주어진 설정에 대하여, 설정의 값이 가상 머신들 사이에서 비교된다는 것이다. 모든 머신에 걸쳐 매우 균일한 경향이 있는 값을 갖는 설정은 머신 동작에 영향을 미치는 또는 머신 동작의 표시(telltale) 역할을 하는 설정일 것 같지 않다. 매우 비균일한 경향이 있는 설정은 동작 제어(behavior-controlling) 또는 동작 표시(hehavior-indicatig)할 것 같지 않다. 즉, 모든 가상 머신이 주어진 설정에 대해 상이한 값을 가지면, 그 설정은 타겟 가상 머신의 특징에 영향을 주거나 예측할 것 같지 않다. 값들이 다소 균일하지만 몇몇 통계적 중요성에 따라 변하는 설정이 중간에 있다. 예를 들어, 머신들 중 절반 또는 1/3이 설정에 대해 상이한 값을 갖고 나머지는 동일한 값을 가지면, 그 설정은 의도적으로 변경되고 있거나 효과를 가질 가능성이 있다. 평가 단계(228)는 매우 균일한 설정 및 매우 비균일한 설정을 제외시켜 사용자에게 관심이 있을만한 설정들의 서브세트를 식별한다. 일실시예에서, 베이지안 통계 평가가 사용되는데, 이는 전술한 논문에 충분히 설명되어 있다.
도 5는 설정을 획득하기 위한 상이한 방법을 보여준다. 일실시예에서, 가상 머신(114A)이 가상 머신(114B)과 관련된다. 이들은 둘 모두가 동일한 베이스 또는 "골든(golden)" 가상 머신 이미지로부터 도출되는 가상 머신 이미지를 갖는 점에서 관련이 있을 수 있다. 이들은 시간적으로 관련이 있을 수 있는데, 하나가 (직계 후손으로서 또는 상대편의 클론/스냅샷으로서)다른 하나의 나중 시간에서의 버전일 수 있는 등이다. 이들은 모두 동일한 소프트웨어 인스톨, 게스트 운영 체제 등을 갖는다는 점에서 관련이 있을 수 있다. 시간의 경과에 따라, 가상 머신(114A, 114B)은 제각기의 가상 머신 이미지에 반영되는 수정, 업데이트, 구성 편집 및 기타 지속적인 상태 변경을 겪게 된다. 예를 들어, 가상 머신(114A, 114B)은 설정(252A, 252B)("설정 i")과 같은 동일 설정의 인스턴스를 가질 수 있다. 시간의 경과에 따라, 설정(252A, 252B)은 상이한 값을 취할 수 있다. 단일 가상 머신이 시간의 경과에 따라 스냅샷되거나 또는 캡처/카피되면, 리니지(lineage)가 타겟 가상 머신 역할을 할 수 있다는 점에서 이들 인스턴스는 샘플 세트(단계 226 참고) 및 가상 머신 역할을 할 수 있다. 즉, 동일한 가상 머신의 동일한 설정의 상이한 시간에서의 값이 그 샘플 세트 역할을 할 수 있다.
도 6은 가상 머신 이미지(270)에서의 예시적인 설정을 보여준다. 앞서 살펴본 바와 같이, 이들 설정은 가상 머신 이미지 내 임의의 지속적인 어드레스 가능 값, 예컨대, 파이 시스템 객체, 레지스트리 개체, 가상 머신 메타데이터(예컨대, 가상 머신 이미지의 헤더 내의) 등일 수 있다. 설정의 값은 시간의 경과에 따라 변할 수 있고 이들 값이 샘플 공간에 걸쳐 얼마나 균일한지에 따라 변할 수 있다. 일부 설정은 매우 균일한 값을 가질 수 있고, 일부 값은 매우 비균일한 값(예컨대, 호스트명, 네트워크 어드레스, 사용자명 등과 같은 특정 머신의 "특성(character)"을 반영하는 값)을 가질 수 있다.
도 7은 설정 및 값에 대한 예시적인 데이터베이스(290)를 보여준다. "설정"과 같은 컬럼 제목은 따로 설명이 필요치 않다. 이 예에서, 이용가능한 파퓰레이션 내 각 가상 머신은 자신의 컬럼 또는 값의 벡터를 갖는다. 실제로, 설정(행)의 수는 수만개 이상이 될 수 있다. 일부 설정에 있어서, 값들은 가상 머신에 걸쳐 대부분 균일할 수 있는데, 예컨대, "installDir" 설정은 각 가상 머신에 대해 동일한 값을 갖는다. 다른 설정들은 매우 비균일한 값을 가질 수도 있다. 예컨대, "registryKeyX"는 각각의 머신에 대해 상이한 값을 갖는다. 다른 설정들은 매우 균일하지도 않고 매우 비균일하지도 않은 값을 가질 수 있는데, 어느 설정이 관심 대상인지를 식별하기 위해 구현 특정 파라미터를 이용한 베이지안 통계 분석이 사용될 수도 있다. 일실시예에서, 다차원 데이터베이스가 사용된다. 예를 들어, 동일한 머신의 값들이 상이한 시간에 걸쳐 상이한 개정으로 색인될 수 있다.
도 8은 피어 프레셔 컴포넌트(310) 및 예시적인 출력(312A, 312B)을 사용하는 시스템을 도시한다. 피어 프레셔 컴포넌트(310)는 타겟 설정값 쌍의 타겟 세트(314)(또는 일정한 설정 세트가 사용될 경우에는 단지 그 값들만)를 전달받는다. 샘플 세트(316)가 또한 피어 프레셔 컴포넌트(310)로 전달된다. 피어 프레셔 컴포넌트(310)는 입력에 대한 통계적 분석을 수행하여 출력을 생성하며, 이 출력은 기록 매체에 저장될 수 있거나 디스플레이 상에 디스플레이될 수 있거나 또는 네트워크를 통해 전송될 수 있거나 한다. 일실시예에서, 출력(312A)은 균일한 것으로 추정되는 설정, 비균일한 것으로 추정되는 설정 및 관심 대상 후보인 설정으로 추정되는 설정과 같이 분류된 설정 세트이다. 다른 실시예에서, 출력(312B)은 입력된 타겟 설정값 쌍(314) 중에서의 확률순 설정(probability-ranked setting) 세트이다. 출력(312B)은 상위 M개(예컨대, 상위 3개)의 순위화된 설정 세트로 감소될 수도 있다. 확률 임계치가 대신 사용될 수도 있다.
하기 청구범위에 의해 변형 실시예 및 다른 실시예가 고려되고 포함될 수도 있음을 이해할 수 있을 것이다.
결론
전술한 실시예들 및 특징들은 휘발성 또는 비휘발성 컴퓨터 또는 장치 판독가능한 매체에 저장된 정보의 형태로 실현될 수 있다. 이것은 적어도 광학 저장 장치(예컨대, CD-ROM(compact-disk read-only memory)), 자기 매체, 플래시 판독 전용 메모리(ROM), 또는 임의의 현재의 또는 미래의 디지털 정보 저장 수단과 같은 매체를 포함하는 것으로 간주된다. 저장된 정보는 컴퓨팅 장치로 하여금 전술한 다양한 실시예를 수행하게 하거나 또는 그와 같이 컴퓨팅 장치를 구성하는데 사용될 수 있는 기계 실행가능 명령어(예컨대, 컴파일된 실행가능 이진 코드), 소스 코드, 바이트코드 또는 임의의 다른 정보 형태일 수 있다. 이것은 또한 적어도 RAM(random-access memory)과 같은 휘발성 메모리 및/또는 실시예를 수행하는 프로그램의 실행 동안 CPU(central processing unit) 명령어와 같은 정보를 저장하는 가상 메모리, 및 프로그램 또는 실행 파일이 로딩되어 실행될 수 있게 하는 정보를 저장하는 비휘발성 매체를 포함하는 것으로 간주된다. 실시예 및 특징들은 휴대형 장치, 워크스테이션, 서버, 이동 무선 장치 등을 포함한 임의의 유형의 컴퓨팅 장치 상에서 수행될 수 있다.
Claims (17)
- 컴퓨터 디바이스에 의해 수행되는 방법으로서,
복수의 가상 머신 이미지로부터 추출된 값들에 대응하는 설정들(settings)의 서브세트를 선택하는 단계 -상기 복수의 가상 머신 이미지는 상기 설정들의 상기 값들이 저장된 파일들로 구성된 제각기의 파일 시스템을 포함하고, 상기 설정들의 상기 값들은 상기 가상 머신 이미지 내의 소프트웨어를 각각 제어함- 와,
상기 복수의 가상 머신 이미지 중 타겟 가상 머신 이미지를 선택하고, 상기 타겟 가상 머신 이미지로부터 상기 설정들의 타겟 값들을 획득하는 단계 -상기 타겟 값들은 상기 설정들을 식별하고 상기 파일들로부터 상기 타겟 값들을 추출하기 위해 상기 타겟 가상 머신 이미지의 상기 파일 시스템의 파일들을 파싱함으로써 획득되고, 상기 설정들은 상기 복수의 가상 머신 이미지의 각각 중에서 발생함- 와,
상기 타겟 값들을 획득한 것에 응답하여, 상기 설정들의 샘플 값들에 액세스하는 단계 -상기 샘플 값들은 상기 설정들을 식별하고 상기 설정들의 상기 샘플 값들을 추출하기 위해 상기 복수의 가상 머신 이미지의 파일 시스템의 파일들을 파싱함으로써 상기 복수의 가상 머신 이미지로부터 획득됨 - 와,
상기 설정들의 상기 샘플 값들을 획득한 것에 응답하여, 통계 함수에 기초하여 상기 복수의 가상 머신 이미지 간의 상기 타겟 값 및 상기 샘플 값의 유사점(similarity) 및 차이점(difference)을 식별함으로써 상기 서브세트를 형성하는 단계를 포함하는
방법.
- 제1항에 있어서,
상기 통계 함수는 베이지안 통계 함수(Bayesian statistic function)를 포함하고,
상기 방법은,
상기 유사점 및 차이점의 개수(count)에 따라 동작하는 상기 베이지안 통계 함수(Bayesian statistic function)로 이루어진 피어 프레셔 알고리즘(peer-pressure algorithm)을 실행하는 단계를 더 포함하는
방법.
- 제1항에 있어서,
상기 타겟 가상 머신 이미지는 사용자 선택 가상 머신 이미지를 포함하고, 상기 복수의 가상 머신 이미지는 서로 관련되며 상기 타겟 가상 머신 이미지와 관련되는
방법.
- 제3항에 있어서,
상기 복수의 가상 머신 이미지 및 상기 타겟 가상 머신 이미지는 상이한 시점에서 동일한 가상 머신 이미지의 카피인 것으로서 관련되는
방법.
- 제3항에 있어서,
상기 복수의 가상 머신 이미지 및 상기 타겟 가상 머신 이미지는 원래 동일한 가상 머신 이미지의 카피였던 것으로서 관련되는
방법.
- 제5항에 있어서,
상기 복수의 가상 머신 이미지는 가상 머신으로서 실행되었고, 상기 설정들의 샘플 값들 및 타겟 값들 중 적어도 일부는 상기 가상 머신 이미지가 가상 머신으로서 실행되고 있었던 동안 생성된
방법.
- 제1항에 있어서,
상기 샘플 값들은 샘플 가상 머신들의 파일들로부터 상기 샘플 값을 추출함으로써 상기 샘플 가상 머신들로부터 획득되고, 상기 샘플 가상 머신들은 상이한 시점에 동일 실행 가상 머신의 취해진 스냅샷을 포함하는
방법.
- 제1항에 있어서,
상기 식별함으로써 상기 서브세트를 형성하는 단계는 상기 샘플 값과 상기 타겟 값 사이의 일치 정도에 따라 통계적 계산을 수행하는 단계를 포함하는
방법.
- 제1항에 있어서,
상기 설정들 중 주어진 하나의 설정의 샘플 값들이 서로 일치하는(in agreement) 정도에 기초하여 상기 주어진 하나의 설정을 포함할 지의 여부를 판정하는 단계를 더 포함하는
방법.
- 제9항에 있어서,
상기 샘플 값이 통계적 일치(statistical agreement)를 갖는다고 판정될 경우 상기 설정들 중 상기 주어진 하나의 설정은 상기 서브세트에 포함되는
방법.
- 제10항에 있어서,
특정 값이 상기 샘플 값에 대해 통계적 일치로 판정되고, 상기 판정은 상기 주어진 하나의 설정의 샘플 값이 상기 특정 값과 상이한 것에 기초하는
방법.
- 제1항에 있어서,
상기 설정들은 상기 가상 머신들 상의 소프트웨어의 환경 설정(configuration settings)을 포함하는
방법.
- 제1항에 있어서,
상기 설정들의 샘플 값들 및 타겟 값들에 따라 상기 설정들을 순위화하는 단계를 더 포함하는
방법.
- 컴퓨터 디바이스가 프로세스를 수행할 수 있게 하는 정보를 저장한 하나 이상의 컴퓨터 판독가능 저장 하드웨어 디바이스로서,
상기 프로세스는,
복수의 가상 머신 이미지로부터 추출된 값들에 대응하는 설정들(settings)의 서브세트를 선택하는 것 -상기 복수의 가상 머신 이미지는 상기 설정들의 상기 값들이 저장된 파일들로 구성된 제각기의 파일 시스템을 포함하고, 상기 설정들의 상기 값들은 상기 가상 머신 이미지 내의 소프트웨어를 각각 제어함- 과,
상기 복수의 가상 머신 이미지 중 타겟 가상 머신 이미지를 선택하고, 상기 타겟 가상 머신 이미지로부터 상기 설정들의 타겟 값들을 획득하는 것 -상기 타겟 값들은 상기 설정들을 식별하고 상기 파일들로부터 상기 타겟 값들을 추출하기 위해 상기 타겟 가상 머신 이미지의 상기 파일 시스템의 파일들을 파싱함으로써 획득되고, 상기 설정들은 상기 복수의 가상 머신 이미지의 각각 중에서 발생함- 과,
상기 타겟 값들을 획득한 것에 응답하여, 상기 설정들의 샘플 값들에 액세스하는 것 -상기 샘플 값들은 상기 설정들을 식별하고 상기 설정들의 상기 샘플 값들을 추출하기 위해 상기 복수의 가상 머신 이미지의 파일 시스템들의 파일들을 파싱함으로써 상기 복수의 가상 머신 이미지로부터 획득됨- 과,
상기 설정들의 상기 샘플 값들을 획득한 것에 응답하여, 통계 함수에 기초하여 상기 복수의 가상 머신 이미지 간의 상기 타겟 값 및 상기 샘플 값의 유사점(similarity) 및 차이점(difference)을 식별함으로써 상기 서브세트를 형성하는 것을 포함하는
하나 이상의 컴퓨터 판독가능 저장 하드웨어 디바이스.
- 제14항에 있어서,
상기 통계 함수는 상기 설정들의 샘플 값들 및 타겟 값들에 따라 상기 서브세트를 식별하는 피어 프레셔 알고리즘을 구성하는 베이지안 통계 함수를 포함함으로써, 균일한 카테고리에 대응한다고 판정된 값들을 갖는 상태 파라미터는 상기 서브세트에 포함되지 않고, 비균일한 카테고리에 대응한다고 판정된 값들을 갖는 상태 파라미터는 상기 서브세트에 포함되지 않는
하나 이상의 컴퓨터 판독가능 저장 하드웨어 디바이스.
- 제15항에 있어서,
상기 균일한 카테고리 또는 상기 비균일한 카테고리 내에 존재한다고 판정되지 않은 값들을 갖는 상태 파라미터는 상기 상태 파라미터의 서브세트에 포함되는
하나 이상의 컴퓨터 판독가능 저장 하드웨어 디바이스.
- 제15항에 있어서,
상기 상태 파라미터는 상기 가상 머신 이미지 상의 소프트웨어의 동작 상태 및 환경 설정을 포함하는
하나 이상의 컴퓨터 판독가능 저장 하드웨어 디바이스.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/171,366 | 2011-06-28 | ||
US13/171,366 US8645950B2 (en) | 2011-06-28 | 2011-06-28 | Virtual machine image analysis |
PCT/US2012/041700 WO2013003005A2 (en) | 2011-06-28 | 2012-06-08 | Virtual machine image analysis |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140033169A KR20140033169A (ko) | 2014-03-17 |
KR101930113B1 true KR101930113B1 (ko) | 2019-03-14 |
Family
ID=47392073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137034508A KR101930113B1 (ko) | 2011-06-28 | 2012-06-08 | 가상 머신 이미지 분석 기법 |
Country Status (7)
Country | Link |
---|---|
US (2) | US8645950B2 (ko) |
EP (1) | EP2726977B1 (ko) |
JP (1) | JP5960259B2 (ko) |
KR (1) | KR101930113B1 (ko) |
CN (1) | CN103620550B (ko) |
TW (2) | TWI563449B (ko) |
WO (1) | WO2013003005A2 (ko) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9286182B2 (en) | 2011-06-17 | 2016-03-15 | Microsoft Technology Licensing, Llc | Virtual machine snapshotting and analysis |
US9229951B1 (en) | 2011-06-30 | 2016-01-05 | Emc Corporation | Key value databases for virtual backups |
US8843443B1 (en) * | 2011-06-30 | 2014-09-23 | Emc Corporation | Efficient backup of virtual data |
US8849777B1 (en) | 2011-06-30 | 2014-09-30 | Emc Corporation | File deletion detection in key value databases for virtual backups |
US8949829B1 (en) | 2011-06-30 | 2015-02-03 | Emc Corporation | Virtual machine disaster recovery |
US9158632B1 (en) | 2011-06-30 | 2015-10-13 | Emc Corporation | Efficient file browsing using key value databases for virtual backups |
US9311327B1 (en) | 2011-06-30 | 2016-04-12 | Emc Corporation | Updating key value databases for virtual backups |
DE102012217202B4 (de) * | 2011-10-12 | 2020-06-18 | International Business Machines Corporation | Verfahren und System zum Optimieren des Platzierens virtueller Maschinen in Cloud-Computing-Umgebungen |
US9063815B2 (en) * | 2012-09-17 | 2015-06-23 | International Business Machines Corporation | Provisioning a virtual machine from one or more VM images |
CN104424013B (zh) * | 2013-08-26 | 2018-03-09 | 国际商业机器公司 | 在计算环境中部署虚拟机的方法和设备 |
KR101554554B1 (ko) | 2013-11-29 | 2015-09-22 | 한국과학기술정보연구원 | 가상 머신 구동 시스템 및 방법 |
US9767276B1 (en) | 2014-08-26 | 2017-09-19 | Amazon Technologies, Inc. | Scanning kernel data structure characteristics |
US9507621B1 (en) | 2014-08-26 | 2016-11-29 | Amazon Technologies, Inc. | Signature-based detection of kernel data structure modification |
US9575793B1 (en) * | 2014-08-26 | 2017-02-21 | Amazon Technologies, Inc. | Identifying kernel data structures |
US9530007B1 (en) | 2014-08-26 | 2016-12-27 | Amazon Technologies, Inc. | Identifying tamper-resistant characteristics for kernel data structures |
US9860208B1 (en) * | 2014-09-30 | 2018-01-02 | Palo Alto Networks, Inc. | Bridging a virtual clone of a target device in a honey network to a suspicious device in an enterprise network |
US9882929B1 (en) | 2014-09-30 | 2018-01-30 | Palo Alto Networks, Inc. | Dynamic selection and generation of a virtual clone for detonation of suspicious content within a honey network |
US10044675B1 (en) | 2014-09-30 | 2018-08-07 | Palo Alto Networks, Inc. | Integrating a honey network with a target network to counter IP and peer-checking evasion techniques |
US9495188B1 (en) | 2014-09-30 | 2016-11-15 | Palo Alto Networks, Inc. | Synchronizing a honey network configuration to reflect a target network environment |
US20160125059A1 (en) | 2014-11-04 | 2016-05-05 | Rubrik, Inc. | Hybrid cloud data management system |
EP3252600A4 (en) * | 2015-01-28 | 2018-02-28 | Nec Corporation | Virtual network function management device, system, healing method, and program |
JP6197816B2 (ja) * | 2015-03-24 | 2017-09-20 | 日本電気株式会社 | ストレージシステム、ストレージの管理方法、及び、コンピュータ・プログラム |
JP6696252B2 (ja) * | 2016-03-24 | 2020-05-20 | 富士ゼロックス株式会社 | 通信プログラム、通信装置及び情報処理装置 |
CN109313565A (zh) | 2016-05-02 | 2019-02-05 | 诺基亚通信公司 | 虚拟网络环境中的快照创建 |
US10768961B2 (en) | 2016-07-14 | 2020-09-08 | International Business Machines Corporation | Virtual machine seed image replication through parallel deployment |
JP6919173B2 (ja) * | 2016-10-20 | 2021-08-18 | 富士通株式会社 | 表示制御プログラム、表示制御方法、及び表示制御装置 |
US11221920B2 (en) | 2017-10-10 | 2022-01-11 | Rubrik, Inc. | Incremental file system backup with adaptive fingerprinting |
US11372729B2 (en) | 2017-11-29 | 2022-06-28 | Rubrik, Inc. | In-place cloud instance restore |
KR102114238B1 (ko) * | 2018-10-11 | 2020-05-22 | 전석기 | 패치 환경을 이용한 멀웨어 판단 방법 및 시스템 |
CN111240794B (zh) * | 2018-11-28 | 2023-06-13 | 阿里巴巴集团控股有限公司 | 容器镜像提取方法、装置以及容器镜像测试方法、装置 |
US11265346B2 (en) | 2019-12-19 | 2022-03-01 | Palo Alto Networks, Inc. | Large scale high-interactive honeypot farm |
US11271907B2 (en) | 2019-12-19 | 2022-03-08 | Palo Alto Networks, Inc. | Smart proxy for a large scale high-interaction honeypot farm |
CN117891472B (zh) * | 2024-03-11 | 2024-06-04 | 杭州吉利汽车数字科技有限公司 | 一种裸金属镜像部署的方法、装置及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070162521A1 (en) | 2006-01-09 | 2007-07-12 | International Business Machines Corporation | Method and system for sharing files among different virtual machine images |
US20080256534A1 (en) | 2007-04-12 | 2008-10-16 | International Business Machines Corporation | Method for improved image-customization by use of embedded metadata |
US20080263258A1 (en) | 2007-04-19 | 2008-10-23 | Claus Allwell | Method and System for Migrating Virtual Machines Between Hypervisors |
US20090198731A1 (en) | 2008-01-31 | 2009-08-06 | Prowess Consulting, Llc | Method and system for modularizing windows imaging format |
US20110035747A1 (en) | 2008-03-07 | 2011-02-10 | Fumio Machida | Virtual machine package generation system, virtual machine package generation method, and virtual machine package generation program |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7386611B2 (en) * | 2002-12-10 | 2008-06-10 | International Business Machines Corporation | Apparatus and methods for co-location and offloading of web site traffic based on traffic pattern recognition |
US20050198303A1 (en) | 2004-01-02 | 2005-09-08 | Robert Knauerhase | Dynamic virtual machine service provider allocation |
US8074214B2 (en) | 2005-05-19 | 2011-12-06 | Oracle International Corporation | System for creating a customized software installation on demand |
US8806479B2 (en) | 2007-06-05 | 2014-08-12 | International Business Machines Corporation | Creating an application virtual machine image by isolating installation artifacts in shadow area |
US20090070752A1 (en) | 2007-09-06 | 2009-03-12 | International Business Machines Corporation | Method and system for optimization of an application |
WO2009108943A2 (en) | 2008-02-29 | 2009-09-03 | Doyenz Incorporated | Automation for virtualized it environments |
US8543998B2 (en) * | 2008-05-30 | 2013-09-24 | Oracle International Corporation | System and method for building virtual appliances using a repository metadata server and a dependency resolution service |
US8191065B2 (en) | 2009-04-06 | 2012-05-29 | Red Hat Israel, Ltd. | Managing virtual machine images |
US9069730B2 (en) * | 2009-06-29 | 2015-06-30 | Hewlett-Packard Development Company, L. P. | Coordinated reliability management of virtual machines in a virtualized system |
US8140907B2 (en) * | 2010-06-29 | 2012-03-20 | International Business Machines Corporation | Accelerated virtual environments deployment troubleshooting based on two level file system signature |
JP5772127B2 (ja) * | 2011-03-25 | 2015-09-02 | 富士通株式会社 | 仮想マシン管理方法、情報処理装置および仮想マシン管理プログラム |
-
2011
- 2011-06-28 US US13/171,366 patent/US8645950B2/en active Active
-
2012
- 2012-04-30 TW TW105109707A patent/TWI563449B/zh not_active IP Right Cessation
- 2012-04-30 TW TW101115391A patent/TWI547874B/zh active
- 2012-06-08 JP JP2014518598A patent/JP5960259B2/ja not_active Expired - Fee Related
- 2012-06-08 EP EP12803990.6A patent/EP2726977B1/en active Active
- 2012-06-08 WO PCT/US2012/041700 patent/WO2013003005A2/en active Application Filing
- 2012-06-08 CN CN201280031966.0A patent/CN103620550B/zh active Active
- 2012-06-08 KR KR1020137034508A patent/KR101930113B1/ko active IP Right Grant
-
2013
- 2013-12-11 US US14/103,602 patent/US9207962B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070162521A1 (en) | 2006-01-09 | 2007-07-12 | International Business Machines Corporation | Method and system for sharing files among different virtual machine images |
US20080256534A1 (en) | 2007-04-12 | 2008-10-16 | International Business Machines Corporation | Method for improved image-customization by use of embedded metadata |
US20080263258A1 (en) | 2007-04-19 | 2008-10-23 | Claus Allwell | Method and System for Migrating Virtual Machines Between Hypervisors |
US20090198731A1 (en) | 2008-01-31 | 2009-08-06 | Prowess Consulting, Llc | Method and system for modularizing windows imaging format |
US20110035747A1 (en) | 2008-03-07 | 2011-02-10 | Fumio Machida | Virtual machine package generation system, virtual machine package generation method, and virtual machine package generation program |
Non-Patent Citations (1)
Title |
---|
Helen J. Wang 외 4명. 'Automatic misconfiguration troubleshooting with peerpressure'. Proceedings of the 6th Conference on Symposium on OSDI, 2004.11., pp.1-13.. |
Also Published As
Publication number | Publication date |
---|---|
JP5960259B2 (ja) | 2016-08-02 |
TW201301137A (zh) | 2013-01-01 |
US8645950B2 (en) | 2014-02-04 |
WO2013003005A3 (en) | 2013-03-14 |
WO2013003005A2 (en) | 2013-01-03 |
US9207962B2 (en) | 2015-12-08 |
CN103620550B (zh) | 2018-10-02 |
JP2014518424A (ja) | 2014-07-28 |
US20140143775A1 (en) | 2014-05-22 |
EP2726977A2 (en) | 2014-05-07 |
EP2726977B1 (en) | 2019-12-11 |
CN103620550A (zh) | 2014-03-05 |
EP2726977A4 (en) | 2015-01-07 |
TW201627859A (zh) | 2016-08-01 |
US20130007732A1 (en) | 2013-01-03 |
TWI563449B (en) | 2016-12-21 |
TWI547874B (zh) | 2016-09-01 |
KR20140033169A (ko) | 2014-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101930113B1 (ko) | 가상 머신 이미지 분석 기법 | |
US10379967B2 (en) | Live rollback for a computing environment | |
US9436603B1 (en) | Detection and mitigation of timing side-channel attacks | |
TWI553558B (zh) | 虛擬機快照與分析 | |
US9870288B2 (en) | Container-based processing method, apparatus, and system | |
JP5176837B2 (ja) | 情報処理システム及びその管理方法、制御プログラム並びに記録媒体 | |
US8387046B1 (en) | Security driver for hypervisors and operating systems of virtualized datacenters | |
US20110225459A1 (en) | Generating a debuggable dump file for a virtual machine | |
US20220035905A1 (en) | Malware analysis through virtual machine forking | |
US9558023B2 (en) | Live application mobility from one operating system level to an updated operating system level and applying overlay files to the updated operating system | |
US10089474B2 (en) | Virtual machine introspection | |
JP2021174495A (ja) | コンピュータシステムを動作可能状態に選択的に復元するシステムおよび方法 | |
US20120124355A1 (en) | Single volume image file extraction | |
US9836241B1 (en) | Label based guest memory deduplication | |
US11687490B2 (en) | Management of contextual information for data | |
US10423578B2 (en) | Management of contextual information for data | |
US11709683B2 (en) | State semantics kexec based firmware update | |
CN109564533B (zh) | 一种支持即时恢复进程中执行引导进程的设备和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |