Embedded Linux

가상 머신 소개

작성자 임베디드코리아 작성일24-11-29 22:28 조회652회 댓글0건
■  가상 머신 이란?
    • 가상머신(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부터 제공하는 가상 머신으로, 윈도우 자체를 가상 머신 환경에서 실행시켜 준다.