프로그래밍 개념들

6. 가상환경 ( 가상머신 ) - 패캠 리눅스 올인원 패키지 스터디 내용 포함

쟈누이 2021. 5. 25. 11:03
반응형

 

1. 가상환경(가상머신)이란 ?


컴퓨터 환경을 소프트웨어로 구현한 것, 가상머신상에서 운영체제나 응용 프로그램을 설치 및 실행할 수 있다.

가상 머신에는 시스템 가상머신, 프로세스 가상머신 2가지의 종류가 있다. 그리고 통상 우리에게 익숙한 가상머신은 아래의 프로그램들이 있다.

 

 

 

2. 시스템 가상머신 이란?


하드웨어 가상머신이라고 하며 각 운영 체제를 실행하는 가상 머신 사이의 기초가 되는 물리 컴퓨터를 다중화한다. 가상화를 제공하는 소프트웨어 계층은 가상 머신 모니터 또는 하이퍼바이저라고 한다. 하이퍼바이저는 순 그대로의 하드웨어 또는 호스트 운영체제 위에서 실행할 수 있다. 다시 말해, 같은 컴퓨터에서 다른 운영체제를 돌릴 수 있게 해 준다.

 

1) 주요 이점

  • 여러 운영 체제를 스는 환경은 운영 체제가 완벽히 고립된 채로 같은 컴퓨터에서 존재할 수 있다
  • 가상 머신은 실제 컴퓨터가 제공하는 것과 다른 형태의 명령어 집합 구조(ISA) 를 제공한다

 

저만의 운영체제를 실행하는 가상 머신들을 게스트 운영 체제라고 하며, 다른 장치가 충돌을 피하기 위해 각 장치에서 실행하기 위한 서버 통합에서 쓰이며, 각 가상 머신에서는 같은 물리 컴퓨터에서 실행된다. 이러한 사용을 제품 품질의 고립(QOS 고립) 이라고 한다. 

 

 

 

 

 

3. 프로세스 가상 머신


응용 프로그램 가상 머신이라고도 하며, 운영 체제 안에서 일반 응용 프로그램을 돌리고 단일 프로세스를 지원한다. 프로세스가 시작하고, 끝나 파괴될 때 만들어진다. 목적은 어떠한 플랫폼에서나 같은 방식으로 실행하는 프로그램을 허용하고 기초가 되는 하드웨어나 운영 체제의 상세한 부분을 가져오는 독립 프로그래밍 환경을 제공하기 위함.

 

가상머신이라는 프로세스는 고급 프로그래밍 언어에서 높은 수준의 추출을 제공한다. 이러한 종류의 가상머신은 자바 가상머신을 사용하여 추가되는 자바와 더불어 인기를 끌었다. 

 

 

 

 

4. 가상머신 네트워크(Virtual Box 를 기준으로)


가상머신에서는 네트워크를 연결할 수 있는 몇가지 방법이 있는데 우선 Virtual Box 를 기준으로 몇가지를 정리하고자 한다. 추후 내용이 추가될 수 있다.

 

출처 : 패스트 캠퍼스 리눅스 올인원 패키지

 

  • NAT : 가상머신 내부 네트워크에서 host pc 의 외부 네트워크를 단방향으로 연결한것
      (host 내부 네트워크와 통신 불가)
  • 어댑터에 브리지 :  호스트 pc 와 동등하게 외부 네트워크와 연결( ip 할당을 외부로 부터 받음 )
  • 내부 네트워크 : HOST 내부 네트워크와만 통신 가능
  • 호스트 전용 : host와 내부 네트워크만 통신 가능(외부 네트워크 단절)
  • 일반 드라이버 :  거의 미사용
  • NAT 네트워크 : NAT + HOST 내부 네트워크와 통신 가능
  • 연결되지 않음 : 테크워크 미사용

 

 

 

5. 참고링크


가상머신은 위키피디아 링크를 참고하여 공부를 했다.

https://ko.wikipedia.org/wiki/%EA%B0%80%EC%83%81_%EB%A8%B8%EC%8B%A0

 

가상 머신 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 가상 머신(영어: virtual machine, VM)은 컴퓨팅 환경을 소프트웨어로 구현한 것, 즉 컴퓨터를 에뮬레이션하는 소프트웨어다. 가상머신상에서 운영 체제나 응용 프로

ko.wikipedia.org

 

 

반응형