Munal OS: WASM 샌드박싱 & 유니커널 기반 실험용 운영체제
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

Munal OS - WASM 샌드박싱이 적용된 그래픽 기반 실험용 운영체제

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

웹 개발, 앱 개발, 개발 툴

대상자

  • *OS 개발자, Rust 프로그래머, 웹어셈블리(WASM) 기술자**
  • 난이도: 중간 수준 (Rust 및 OS 설계 지식 필요)*

핵심 요약

  • unikernel 아키텍처WASM 샌드박싱 모델 을 결합한 실험용 운영체제
  • VirtIO 드라이버폴링 방식의 드라이버 구현 을 통해 QEMU 환경에서 실행
  • WASM 앱 실행 시 커널 메모리 접근 차단협동 스케줄링 기반 이벤트 루프 제공

섹션별 세부 요약

EFI 바이너리 기반 구조

  • 부트로더 없이 EFI 바이너리 형태로 실행
  • 커널, WASM 엔진, 앱이 하나의 파일에 내장
  • UEFI 부트 서비스는 최단시간 내 종료

주소 공간 관리

  • 가상 주소 공간 미사용, identity-mapped 주소 그대로 사용
  • WASM 샌드박싱 을 통해 커널 메모리 보호

드라이버와 하드웨어 지원

  • VirtIO 1.1 기반 PCI 드라이버 직접 구현
  • 인터럽트 미사용 , 폴링 방식으로 키보드, 마우스, 네트워크, GPU 드라이버 지원

이벤트 루프와 스케줄링

  • 단일 전역 이벤트 루프 기반의 선형적 실행 구조
  • Wasmi 엔진의 fuel limit 기능 을 통해 오작동 앱 강제 종료 가능

WASM 샌드박싱 및 앱 실행

  • Wasmi WASM 엔진 을 내장, 앱 실행 시 커널 분리 및 샌드박싱 제공
  • Rust 외 언어 의 WASM 빌드 지원, WASI 호환성 부분 지원

UI 툴킷 및 앱 생태계

  • Uitk UI 툴킷 제공, 글로벌 스타일시트 및 효율적인 캐싱 시스템
  • 기본 앱: 웹 브라우저(DNS, HTTPS 지원), Python 터미널, 텍스트 에디터

결론

  • Wasmi 엔진의 fuel limit 기능 을 활용한 앱 실행 제어가 핵심
  • unikernel + WASM 샌드박싱 구조는 임베디드 시스템 또는 최소한의 보안 경계가 필요한 환경에 적합
  • QEMU 10.0.0 이상Rust Nightly 2025-06-01 기반 빌드 필요
  • WASM 앱 생태계 확장 가능성 이 높으며, GUI 앱 개발 시 성능 최적화가 중요