TL;DR
- NVX는
OpenVMM기반으로 Linux를 게스트 운영체제로 실행하며, 하드웨어가 격리를 강제하는 초경량 마이크로 VM 샌드박스임. - NVX는 MSR Systems Research Group과 Azure Research - Systems가 Nanvix 시스템의 연구 성과를 바탕으로 공동 개발함.
- 저장소에는 Linux와
OpenVMM버전 고정 정보, 패치, 게스트 소스 파일, 빌드 도구와 벤치마크가 포함됨. - Python 3.10 이상과 선택한 하이퍼바이저의 접근 권한이 필요하며, 빠른 시작 명령은 플랫폼에 맞는 최신 NVX 릴리스를 내려받아 로컬 빌드 없이 실행함.
- 문서는 환경 설정, 빌드, 실행, 벤치마크, 명령줄 참조와 설계·저장소 구조·지속적 통합·적대적 테스트·배포·기여 내용을 다룸.
NVX: 초경량 마이크로 VM 샌드박스
- NVX는 신뢰할 수 없는 워크로드를 하드웨어가 강제하는 격리 환경에서 실행하는 초경량 마이크로 VM 샌드박스임.
OpenVMM을 기반으로 구축되며 Linux를 게스트 운영체제로 실행함.- MSR Systems Research Group과 Azure Research - Systems가 Nanvix 시스템의 연구 성과를 바탕으로 공동 개발함.
- 저장소에는 Linux와
OpenVMM의 버전 고정 정보, 패치, 게스트 소스 파일, 빌드 도구, 벤치마크가 포함됨.
빠른 시작
- Python 3.10 이상이 필요함.
- 아래 명령은 선택한 플랫폼에 맞는 최신 NVX 릴리스를 내려받으므로 로컬 빌드가 필요하지 않음.
- 부팅에 성공하면
NVX-GUEST-BOOT-OK: alpine이 출력되고 루트 셸이 열림. --guest ubuntu를 전달하면 동일한 NVX 커널에서 Ubuntu 사용자 공간을 선택함.- 게스트에서
/sbin/nvx-exit 0을 실행하면 정상적으로 종료됨. - 자세한 사전 요건과 런타임 옵션은 설정 및 실행 가이드에서 확인 가능함.
scripts/nvx.py런타임 하네스 없이OpenVMM에 직접 통합하려면 OpenVMM 직접 실행 안내를 참조함.
Linux / KVM
- KVM을 설정하고
/dev/kvm에 읽기 및 쓰기 권한을 부여해야 함. https://github.com/microsoft/nvx.git저장소를 복제한 뒤python3 scripts/nvx.py download와python3 scripts/nvx.py run을 실행함.
Linux / MSHV
- MSHV를 설정하고
/dev/mshv에 읽기 및 쓰기 권한을 부여해야 함. https://github.com/microsoft/nvx.git저장소를 복제한 뒤python3 scripts/nvx.py download --hypervisor mshv와python3 scripts/nvx.py run --hypervisor mshv를 실행함.
Windows / WHP
- Windows Hypervisor Platform을 활성화해야 함.
https://github.com/microsoft/nvx.git저장소를 복제한 뒤python scripts\nvx.py download와python scripts\nvx.py run을 실행함.
문서
사용법
- 설정 — 환경 설정 안내.
- 빌드 — NVX 빌드 안내.
- 실행 — NVX 실행 안내.
- 벤치마크 — NVX 벤치마크 안내.
- 명령줄 참조 —
scripts/nvx.py명령 및 옵션 전체 참조.
개발
- 설계 — 현재 마이크로 VM 아키텍처와 ABI.
- 프로젝트 구조 — NVX 저장소 레이아웃 개요.
- 지속적 통합 — NVX CI 실행 및 유지 관리 안내.
- Copilot 기반 적대적 테스트 — 범위가 제한된 적응형 스트레스 및 격리 캠페인.
- 패키지 및 소스 배포 — NVX 패키징 및 배포 안내.
- 기여 — NVX 기여 지침.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요