가상 컴퓨터 통합 패키지는 내부적으로 어떻게 구현됩니까?


1

가상 컴퓨터에 가상 컴퓨터 추가 패키지 (예 : Microsoft Virtual PC 2007의 가상 컴퓨터 용 추가 프로그램, Windows Virtual PC의 통합 구성 요소 및 Oracle VM VirtualBox의 게스트 추가 프로그램)를 설치하면 가상 컴퓨터의 백엔드에서 어떤 일이 발생합니까? 마우스 포인터 통합, 창 크기 조정 및 폴더 공유 같은 통합 기능을 사용할 수 있습니까? 즉, 내부적으로 통합 기능이 구현되는 방식은 무엇입니까?

마우스 포인터 통합을 위해 Virtual PC에서 통합 기능을 사용하면 마우스가 훨씬 빠르게 움직이고 하단과 오른쪽 가장자리에서 게스트 커서의 일부가 외부에 표시됩니다. 이 기능을 사용하지 않으면 커서가 더 천천히 움직입니다. 내 생각에 통합이 활성화되면 커서는 실제로 호스트 OS의 일부이며 게스트에게 명령을 보냅니다. 호스트 PC에 통합 소프트웨어를 설치하면 커서가 사라진다는보고를 들었습니다. 또한 공유 폴더가 네트워크 드라이브로 구현된다는 것도 알고 있습니다. 내가 맞습니까?


복잡한 프로세스를 간단하게 만들 수 있습니다. 추가로 필요한 경우 드라이버와 서비스를 설치합니다.
Ramhound

답변:


3

일반적으로 하이퍼 바이저는 게스트 운영 체제와보다 최적의 인터페이스로 상호 작용할 수 있습니다.

위치 결정 장치

포인팅 장치의 경우. 하이퍼 바이저는 먼저 호스트에 나타나는 게스트 운영 창의 창 내에서 마우스 커서의 위치를 ​​캡처합니다.

그런 다음 마우스를 움직이면이 움직임은 게스트 환경에서 발생하는 것처럼 상대적인 움직임으로 변환되어야합니다. 이 이동은 게스트 운영 체제의 가상 USB 인터페이스를 통해 읽을 수 있도록 다시 변환됩니다.

게스트는 그 운동 신호를 수신하여 화면상의 실제 커서 움직임으로 변환합니다.

이 프로세스에는 약간의 시간이 걸릴 수 있으므로 호스트의 한 커서와 게스트의 커서 중 두 개의 커서가있는 경우가 많습니다. 손님은 보통 조금 뒤쳐집니다.

마우스는 일반적으로 다음을 포함하는 포인팅 장치입니다. 상대적인 운동. 일부 하이퍼 바이저는 가상 타블렛을 포인팅 장치로 사용할 수 있도록 지원합니다. 순수한 위치. 이것은 일반적으로 관찰되는 지연을 줄일 수 있습니다.

enter image description here

통합 패키지를 설치할 때 게스트 운영 체제에 특수 장치 드라이버가 설치됩니다. 이 드라이버는 하이퍼 바이저와보다 직접 통신 할 수 있습니다. 방법 정확히 통신은 벤더에 따라 다릅니다. 세부 정보는 질문의 요지에 대한 답변과 관련이 없어야합니다.

이 새로운 통신 경로를 통해 하이퍼 바이저는 커서 움직임을 게스트의 드라이버로 직접 전달할 수 있습니다. 먼저보다 일반적인 USB 인터페이스 레벨로 다시 변환 할 필요가 없습니다.

공유 폴더

호스트에서 파일 시스템 리소스에 액세스하는 경우 일반적으로 네트워크의 다른 컴퓨터와 파일을 공유 할 때와 동일한 경로를 따라야합니다. 공유 폴더를 만들고 액세스 권한을 설정 한 다음 게스트에서 해당 폴더에 액세스하고 파일 전송을 수행합니다.

통합 패키지를 설치하면 하이퍼 바이저가 네트워크에서 게스트의 공유 폴더로 볼 수있는 리소스를 노출하는 저장 장치를 에뮬레이트 할 수 있습니다.

이는 통합 패키지가 하이퍼 바이저와 직접 통신하는 드라이버를 다시 설치할 수 있기 때문에 가능합니다. 파일 전송은 전체 네트워크 스택을 사용하는 대신 가상 PC를 통해 게스트의 드라이버로 전달됩니다.

개요

특히 다른 하이퍼 바이저에는 다른 많은 통합 기능이 있습니다. 공유 클립 보드와 같은 기능을 자주 보게됩니다. 이러한 기능의 기초는 일반적으로 위에서 설명한 것과 같습니다. 하이퍼 바이저는 게스트 운영 체제의 전용 드라이버를 통해 직접 데이터 교환 채널을 설정합니다.

하이퍼 바이저는 일반적으로 하드웨어 수준에서 작동하며 드라이버는 운영 체제 수준에서도 작동 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.