전체 글

이전글에서 가상화 기본 개념을 정리했다. 이어서 현대의 System VM 은 어떻게 구현되는지에 대해 공부한 내용을 정리해본다.1. 에뮬레이션 (Emulation) 과 Qemu (Quick EMUlator)Qemu 는 가상 환경을 만들기 위해 필요한 모든 하드웨어 시스템을 에뮬레이트한다. 여기서 에뮬레이트란, 가상의 하드웨어를 실제 물리 머신 위에서 소프트웨어적으로 구현하는 것이다. 이를 위해 가상환경에서 동작하는 어플리케이션 프로그램이나 운영체제가 하드웨어 자원(이라고 믿고 있지만 실제로는 Qemu 인) 에 보내는 요청을 적절히 처리할 수 있어야 한다. Qemu 는 에뮬레이트 되는 하드웨어의 모든 명령어를 실제 물리머신이 처리할 수 있도록 binary translation 을 하는 방식으로 이를 구현한..
가상화 기술 관련 공부를 심도있게 하고 싶은데 참고할 자료를 찾기 쉽지 않았다. 그러던 중 Virtual Machines : Versatile Platforms For Systems And Processes 라는 영문 원서의 pdf 본을 구할 수 있었는데, 가상화 기술 관련해서는 운영체제의 공룡책 만큼이나 바이블이라고 한다. 기술적으로 상당히 깊이 있어 보여서 이걸 완독을 하는 건 조금 나중의 일일 것 같고, 일단 개론 격에 해당하는 1장을 읽어서 내맘대로 정리 해본다.  이후 목차는 2장부터 6장까지는 JVM 같은 프로세스 레벨의 가상 머신을 다루고, 7장 ~ 9장 부분이 시스템 VM 을 다룬다. 책이 2005 년에 발간되었는데, 알아보니 Intel 의 VT-x 가 처음 도입된게 2005년이라고 해서 ..
책 내용이 쉽지 않아 이해가 잘가지 않았던 부분에 나만의 주석을 달아놓기 위함+ 실무적으로 참고하고 싶은 부분4장 아키텍쳐4.2.1 프라이머리 키에 의한 클러스터링p 99. '프라이머리 키가 클러스터링 인덱스이기 때문에 프라이머리 키를 이용한 레인지 스캔은 상당히 빨리 처리 될 수 있다'프라이머리 키에 의한 클러스터링이란, 데이터의 실제 물리적 주소가 PK 값을 기준으로 배열되어있다는 뜻이다. 클러스터링 키를 지원하지 않는 MyISAM 엔진의 경우 데이터의 물리적 주소는 여기저기 분산되어있고, 인덱스는 이 주소값을 가지고 있는 방식으로 동작한다. 전자(클러스터링 키) 가 후자(비 클러스터링 키) 보다 근본적으로 성능의 차이를 보이는 이유는 데이터의 물리적인 주소가 한군데에 같이 모여 있다는 것이다. 그렇..
Cypher
나 보려고 만든 블로그