← 목록
기타 2026-05-08 3KB 읽기 4분

CrownyVM v0.1.0 — 4상균형3진법 ARM64 하이퍼바이저

개요

macOS Apple Silicon(M2 Max) 위에서 Windows 11 ARM을 실행하는 하이퍼바이저. VMware/Parallels와 동급 기능을 크라우니 4상균형3진법 아키텍처로 구현. NinjaTrader 8 트레이딩 소프트웨어 실행이 최종 목표.

무엇을 했는지

13 Phase, 99 태스크 계획을 수립하고 전체 구현 완료.

Phase 1-2: 코어 (C)

  • Hypervisor.framework 기반 VM 생성/파괴/상태관리
  • vCPU 생성 + pthread 실행 루프
  • 메모리 매핑 (mmap + hv_vm_map)
  • 4상균형3진 기본형: trit_t, cube27_t, Kleene 논리
  • MMIO 디스패치 (64개 장치 슬롯)

Phase 3: GICv3 인터럽트 컨트롤러

  • GICD (Distributor): CTLR, TYPER, ISENABLER, IPRIORITYR, IROUTER
  • GICR (Redistributor): per-CPU SGI/PPI
  • ICC 시스템 레지스터 에뮬레이션
  • 3진 우선순위 IRQ 주입 (T→0x00, O→0x80, A→0xFF)

Phase 4-5: 펌웨어

  • UEFI 로더 (AAVMF 바이너리 로드)
  • 64MB NOR 플래시 에뮬레이션
  • ACPI 테이블: RSDP/XSDT/MADT/GTDT/FADT (HW_REDUCED + PSCI)
  • SMBIOS 3.0: "CrownyStation Pro" 시스템 정보
  • FDT 커스텀 빌더 (libfdt 미사용, 230줄)
  • VirtIO MMIO v2 전송 레지스터

Phase 6-9: 장치 에뮬레이션 (17개 장치)

  • VirtIO: blk, net, GPU(2D), RNG, keyboard, mouse, vsock, balloon, 9p
  • PCI ECAM 호스트 브릿지 (최소)
  • PL011 UART, PL031 RTC, ARM Generic Timer, Power
  • Storage: raw, qcow2, AIO(GCD), ISO 9660, 스냅샷
  • Network: vmnet NAT/bridge, MAC 생성, 통계, 대역폭 토큰버킷
  • Display: Metal/Cocoa 윈도우, macOS→Linux 키맵, 클립보드

Phase 10-11: Windows 호환성 + 성능

  • TPM 2.0 (CRB 인터페이스, MMIO 0x09040000)
  • Secure Boot 상태 보고
  • SMBIOS 스푸핑 (3개 프로필: CrownyStation/Desktop/Surface)
  • ACPI 전원 관리 (S0-S5)
  • unattend.xml 자동 생성 (ko-KR, user=Crowny, 자동로그인)
  • NinjaTrader 최적화 프로필 (GPU/CPU/메모리 튜닝)
  • HugePage, kqueue I/O 폴링, CPU affinity, 더티 페이지 추적

Phase 12: 한선씨 관리 콘솔

  • 7개 모듈: 메인, VM생성, VM제어, 설정, 스냅샷, 모니터링, 설치마법사
  • 통합 빌드 (콘솔.한선, 1,286줄)
  • hanseonc_high 컴파일 성공 (10,323 큐브)
  • 4상 상태 전이 런타임 검증 통과

코드 통계

모듈언어줄 수
coreC1,195
deviceC2,013
firmwareC853
storageC353
networkC243
displayC/ObjC248
compatC339
manage한선씨1,286
합계6,530
바이너리: 117KB, 에러: 0

관련 파일

  • 프로젝트: /Users/ef/crowny-vm/
  • CLAUDE.md: /Users/ef/crowny-vm/CLAUDE.md
  • 계획: /Users/ef/crowny-vm/PLAN.md
  • 한선씨 콘솔: /Users/ef/crowny-vm/manage/콘솔.한선

잔여 이슈

  1. 디스크 공간: Windows 11 ARM ISO + 디스크 이미지에 30GB+ 필요 (현재 여유 ~10GB)
  2. UEFI 펌웨어: AAVMF 바이너리 수동 설치 필요 (brew install qemu → 복사)
  3. VirtIO 드라이버: Windows용 VirtIO ISO 별도 다운로드 필요
  4. vmnet 권한: vmnet.framework는 root 또는 특별 권한 필요 (sudo)
  5. crownyc VM 문자열 제한: 관리 콘솔 전체 실행 시 문자열 풀 초과 → crownyc 업그레이드 필요
  6. 한선씨 동반 파일: C 코드의 한선씨 동반 파일 미작성 (별도 태스크)