728x90

hypervisor 4

Virtualizing the generic timers, Arm architecture aarch64

📢 Timer(Physical, Virtual)에 대해 알아봐요 하루 8시간 책상에 앉아 공부를 했을 때 정말 내 순수 공부 시간이 8시간이 맞을까요?딴생각 안 하고 집중해서 공부를 한 순수 공부시간이 의미 있는 게 아닐까요? Physical Timer와 Virtual Timer도 위와 유사한 개념이에요 무심히 흐르는 벽시계, System Counter모든 코어가 공유하는 System Counter(CNTPCT_EL0)는 멈추지 않고 계속 증가해요이 카운트를 각 코어의 Physical Comparator가 감시하다 비교 값에 도달하면 “띠링!” 하고 Physical IRQ를 발생시켜요(Virtual IRQ도 마찬가지죠) +--------------------..

TIL/2025 2025.04.29

Virtualizing Exceptions in the Arm Architecture AArch64

📢 Virtualizing Exception에 대해 알아봐요 왜 Virtual Exception이 필요한가실제 하드웨어 인터럽트(IRQ, FIQ, SError)는일부는 하이퍼바이저(EL2)가 처리해야 하고,일부는 VM(EL0/EL1) 안의 소프트웨어(vCPU)가 처리해야 해요VM이 그 순간 실행 중이지 않을 수도 있어, 하이퍼바이저(EL2)가 대신 받아두고 적절한 시점에 전달해 줘야 하죠 가상 인터럽트(vIRQ/vFIQ/vSError) 개념하이퍼바이저가 실제 인터럽트를 여러 Guest OS에게 전달하기 위해 만들어낸 "가짜 인터럽트"에요물리 인터럽트처럼 동작하지만 EL0/EL1에서만 발생하며, EL2/EL3에선 절대 발생하지 않아요 Virtual Interrupt 활성화 (Enabling)하이퍼바..

TIL/2025 2025.04.29

Trapping and Emulation of instructions

📢 Hypervisor의 trap & emulate 과정에 대해 알아봐요 Trapping and emulation of instructionsHypervisor는 VM의 특정 동작(예: 전력 관리)을 Trap해서 Emulation할 수 있어요Trap이 설정되면 VM이 특정 동작(레지스터 접근, WFI 실행 등)을 할 때 예외가 발생하고, Hypervisor가 제어권을 가져옵니다. 예를 들어,HCR_EL2.TWI 비트 필드를 1로 설정하면VM(EL1/EL0)이 WFI 명령을 실행할 때 CPU 저전력 전환 대신 Hypervisor로 Trap(Exception)이 발생해요Hypervisor는 이를 이용해CPU를 저전력으로 보내는 대신,다른 vCPU를 스케줄링할 수 있어요이런 Trap 메커니즘은 VM 간 ..

TIL/2025 2025.04.29

가상화(Virtualization) 소개 | hypervisor, arm architecture

📢 Server, Automotive의 필수 기능인 Virtualization에 대해 살펴봐요 OverviewArmv8-A AArch64에서의 virtualization에 대해 알아봐요Target profile이 달라도 Virtualization에 대한 컨셉을 익힐 수 있죠 Introduction to virtualizationAmazon은 Black Friday 같은 날 서버 터질 것 준비해서 서버 빵빵하게 준비해요그런데 평소에는 이 서버 자원들이 놀고 있는 게 문제가 됐죠 이 놀고 있는 자원들을 필요한 사람들에게 돈 받고 빌려주면? 사업이 되겠군!이러한 관점에서 Virtualization이 등장했죠 Virtualization의 핵심 가치는 아래 4가지에요Isolation: A, B 서비스는 서로..

TIL/2025 2025.04.28
728x90