■ 가상 머신 이란?
• 가상머신(VM)은 하나의 물리적 컴퓨터에서 여러 가상 컴퓨터를 실행하는 기술이다.
• 각각의 VM은 독립적으로 운영 체제와 애플리케이션을 실행하는 환경을 제공하고 있어서 별도의 OS 를 설치하는 경우가 많다.
• 이것은 리소스를 효율적으로 공유하고 분리된 환경에서 작업을 수행할 수 있으므로 테스트, 서버 운영, 보안 및 복구 등 다양한 용도로 사용된다.
• 물리적으로 존재하는 컴퓨터가 아닌, 다른 컴퓨터가 만들어내는 가상의 컴퓨터를 말한다.
• 가상 머신으로 돌린 컴퓨터에서 가상 머신을 돌리는 것도 가능하다.
• 자바 가상 머신처럼 특정 언어로 쓰여진 프로그램을 돌리기 위한 인터프리터를 가리키기도 한다.
• 가상머신의 개념 자체는 컴퓨터가 보급되기 이전부터 존재했다.
• 보편 튜링 머신은 어떤 다른 튜링 머신을 모사할 수 있는 튜링 머신으로 정의되었다.
• 오늘날에 널리 사용되는 많은 종류의 컴퓨터들이 보편 튜링 머신의 구현체이다.
• 보편 튜링 머신은 모든 튜링 머신을 모사할 수 있기 때문에 보편 튜링 머신인 컴퓨터는 튜링 머신인 다른 컴퓨터를 모사할 수 있다.
■ 가상머신 원리
• CPU, RAM, 하드디스크 등 컴퓨터의 주요 부품들을 가상으로 만들어서 구동하는 식으로 동작한다.
• 가상으로 만들기 위해서는 각 부품들의 기능을 소프트웨어적으로 구현할 필요가 있다.
• 데스크톱 CPU의 하드웨어 지원의 경우, 인텔 CPU에서는 VT-x(VT-d),
AMD CPU에서는 AMD-V(AMD FX 시리즈까지)/SVM(AMD RYZEN 시리즈 이후부터)이 활성화되어야 제대로 된 사용이 가능하다.
■ x86/x64 계통 가상 머신 전용
( 1 ) 버추얼박스 (VirtualBox)
► 오라클이 개발한 오픈 소스 가상화 소프트웨어 이다.
► 프로그램은 컴퓨터 하드웨어 위에 가상 머신(가상 컴퓨터)을 생성하고 실행하는 데 사용할 수 있다.
► 가상 머신은 실제 컴퓨터처럼 작동하지만 소프트웨어 수준에서 분리되어 독립적으로 운영체제와 응용 프로그램을 실행할 수 있다.
► 이를 통해 사용자는 하나의 머신에서 여러 운영체제를 실행하거나 개발 및 테스트 환경을 구축하는 등 다양한 용도로 활용할 수 있다.
► 사이트 주소 :
https://www.virtualbox.org/
( 2 ) VMware Workstation
• VMware(브이엠웨어)는 가상화 소프트웨어 및 클라우드 컴퓨팅 서비스를 제공하는 글로벌 기업으로
가상 환경에서 여러 운영 체제와 응용 프로그램을 실행하고 관리하는 솔루션을 개발합니다.
• VMware의 주요 제품에는 VMware vSphere, VMware Workstation, VMware Fusion, VMware Horizon 등이 있다.
• 우리가 주로 사용하는 제품은 VMware Workstation 이다.
• VMware Workstation 및 Fusion은 개발자 및 시스템 관리자가 로컬 컴퓨터에서 가상 환경을 구축하고 테스트하는 데 사용되는 도구이다.
• VMware Horizon은 데스크톱 가상화 및 원격 데스크톱 서비스를 제공하여 사용자가 어디서나 안전하게 액세스할 수 있는 가상 데스크톱 환경을 제공한다.
• VMware Workstation : 호스트 OS가 Microsoft Windows 또는 Linux
• VMware Workstation Player: 이미 만들어진 가상 머신의 구동만 가능했으나 생성도 가능하게 바뀌었다. 물론 Workstation에 비해서는 가상 머신 설정이 부실하다.
• VMware Fusion: 호스트 OS가 macOS
( 3 ) Hyper-V
• Hyper-V(하이퍼-V)는 Microsoft에서 개발한 가상화 플랫폼 이다.
• 이 기술은 Windows 서버 및 Windows 클라이언트 운영 체제에서 사용할 수 있으며, 가상 머신(VM)을 생성하고 관리하는 데 사용된다.
• Hyper-V를 사용하면 하나의 물리적 서버에서 여러 가상 머신을 실행할 수 있으며,
이를 통해 하드웨어 리소스를 효율적으로 공유하고 운영체제와 응용 프로그램을 격리시킬 수 있다.
< 장점 >
► Windows Server 및 Windows 10 Pro 및 Enterprise Edition과 함께 제공되는 Microsoft의 가상화 플랫폼.
► Windows 기반 환경에서 원활한 통합.
► Windows 환경의 경우 라이선스 비용 없음.
< 단점 >
► 다른 운영 체제를 호스팅하기 위해서는 추가 소프트웨어가 필요할 수 있음.
► 호스트 운영 체제에 따라 다르며, Windows 10 Home에서는 사용 불가.
( 4 ) WSL
▪ Windows Subsystem for Linux (WSL)은 Windows 운영 체제에서 Linux 환경을 실행하기 위한 기술이다.
▪ WSL은 Linux 환경과 Windows를 통합하는 강력한 도구이며, 개발 및 시스템 관리 작업을 향상 시킬 수 있다.
< 장점 >
► Windows 운영 체제에서 Linux 명령어 및 유틸리티를 사용 가능
► Windows와 Linux 개발 환경을 통합
► 다양한 Life 배포판을 지원
► 향상된 가상화 기술을 사용하여 빠른 성능을 제공
► 별도의 라이선스 비용이나 가상화 솔루션을 구매할 필요
< 단점 >
► 명령줄 인터페이스에 중점을 두고 있으며 그래픽 애플리케이션 실행에는 제한
► 하드웨어 리소스 제한
► 몇 가지 네트워크 구성 제한
► 완벽한 커널 대체 불가능
► 파일 시스템 호환성
( 5 ) Parallels Desktop
• Parallels Desktop(패러럴즈 데스크톱)은 macOS 운영 체제에서 Windows 및 기타 운영 체제를 가상 머신으로 실행할 수 있게 해주는 가상화 소프트웨어입니다.
• 주로 Mac 컴퓨터 사용자가 동일한 장치에서 macOS와 Windows 애플리케이션을 병렬로 실행하고 싶을 때 사용한다.
• Parallels Desktop는 사용자 친화적인 인터페이스와 고성능 가상화 엔진을 제공하여 맥 사용자가 Windows 앱을 무리 없이 사용할 수 있다.
• 이 소프트웨어는 비즈니스, 개발, 디자인 등 다양한 분야에서 Mac과 Windows 간의 시너지를 활용하고자 하는 사용자에게 인기가 있으며,
데스크톱 가상화 솔루션 중 하나 이다.
• 사이트 주소 :
https://www.parallels.com/kr
< 장점 >
► macOS에서 Windows 및 기타 운영 체제를 실행하기 위한 최적화된 솔루션.
► 사용자 친화적인 인터페이스와 쉬운 사용.
► 성능이 뛰어나며 macOS 통합이 원활함.
< 단점 >
► 상용 소프트웨어이며 비용이 상대적으로 높음.
► 주로 macOS 환경에서만 사용 가능.
( 6 ) Xen
Xen 이하 XenServer 및 Xen Hypervisor는 반가상화(Para-Virtualization)를 통해 Bare Metal 서버의 성능과 거의 일치하는
성능을 제공하는 가상화 플랫폼이다.
( 7 ) Bochs
• Bochs 는 휴대용 IA-32 및 x86-64 IBM PC 호환 에뮬레이터 및 디버거로, 대부분 C ++로 작성되었으며
GNU Lesser General Public License에 따라 무료 소프트웨어로 배포된다.
•프로세서, 메모리, 디스크, 디스플레이, 이더넷, BIOS 및 PC의 일반 하드웨어 주변 장치의 에뮬레이션을 지원한다.
•DOS, 여러 버전의 Linux, Xenix, Microsoft Windows, BSD 및 Rhapsody OS(Mac OS X Public Beta의 선구자)를
포함한 많은 게스트 운영 체제를 에뮬레이터를 사용하여 실행할 수 있다.
•Bochs는 Android OS, Linux, macOS, PlayStation 2, Windows 및 Windows CE를 포함한 많은 호스트 운영 체제에서 실행된다.
( 8 ) Windows Virtual PC : 초창기에는 PowerMac용 제품이었으나 x86/x86-64용도 개발되었다.
( 9 ) Windows 샌드박스 : Windows 10 버전 1903 빌드 18305부터 제공하는 가상 머신으로, 윈도우 자체를 가상 머신 환경에서 실행시켜 준다.