← 목록
기타 2026-06-22 3KB 읽기 3분

요청: 크라우니-위계완성-OS브라우저런치

  • 날짜: 2026-06-22 18:59:30
  • 작업 경로: /Users/ef/crowny-ai

요청 본문

VM>OS>브라우저 위계완성: CrownyOS가 브라우저를 앱으로 등록·런치하도록 결선(APP_레지/런처/통합매니페스트), 0바이트 sdcard 브라우저앱 채우기

관련 산출

(클로드가 작업 결과를 이어 기록)


산출 결과 — VM>OS>브라우저 위계완성 (2026-06-22)

직전 현황감사가 "OS→브라우저 런치 미결선(브라우저가 VM 직결)·sdcard 앱 0바이트"를 갭으로 지목 → 결선 완료.

결선 내역

  1. OS 브라우저 앱 신규 apps/크라우니브라우저.한선 (0바이트→61KB toau): 크롬(탭/주소창)+시작페이지 렌더, OS 앱로더 진입점. 컴파일·실행 검증.
  2. OS 셸 등록 crownyc/apps/os/크라우니OS.한선: APP_browser + APP_레지 "browser"=4 + APP_실행 분기 + run/apps 명령 + 부팅메시지 + 데모 run browser. exec 디스크립터 [OS→VM exec] apps/크라우니브라우저.toau 발행.
  3. 런처 등록 crownyc/pkg/libs/런처.한선: 9번째 앱 브라우저(apps/크라우니브라우저.toau), _고정앱시작 8→9.
  4. 통합매니페스트 등록 crownyc/통합/통합매니페스트.한선: 서비스정의("크라우니브라우저", 0, "os://browser", 2, "OS앱").
  5. 전 sdcard 0바이트 앱 채움 (10개 플랫폼, 잔여 0).
  6. 호스트 하니스 위계부팅.sh: VM이 OS실행 → OS가 브라우저 런치결정·exec발행 → 하니스 포착 → VM이 브라우저앱 실행 → 한선씨웹엔진 HTML→cmd 실렌더.

end-to-end 검증 (위계부팅.sh)

  • [층1] crownyc VM → CrownyOS 부팅, run browser → PID=3 프로세스 등록 → [OS→VM exec] apps/크라우니브라우저.toau
  • [층2] OS exec 디스크립터 포착
  • [층3] VM이 브라우저앱.toau 실행 → 크롬+시작페이지
  • [엔진] 한선씨웹엔진: <h1>크라우니</h1><p>...</p>INIT/RECT/TEXT/END cmd (WebKit 없이 순수 한선씨)
  • 회귀: 수정 4파일 + 앱 컴파일 4/4 OK

의미

이전엔 "VM 위에 [OS]와 [브라우저]가 각각" 얹힌 평면이었으나, 이제 OS 앱 레지스트리가 브라우저를 소유하고 런치를 결정한다. 3층이 실제 위계로 합성됨(각 층 crownyc VM 실행). 단 in-VM은 exec 디스크립터 발행+호스트 하니스가 cross-process exec 완성(단일 crownyc는 자기 안에서 다른 crownyc spawn 불가 — 정당한 호스트경계).

관련 파일

  • /Users/ef/CrownyOS/apps/크라우니브라우저.한선 (+ .toau, 전 sdcard 복제)
  • /Users/ef/CrownyOS/crownyc/apps/os/크라우니OS.한선
  • /Users/ef/CrownyOS/crownyc/pkg/libs/런처.한선
  • /Users/ef/CrownyOS/crownyc/통합/통합매니페스트.한선
  • /Users/ef/CrownyOS/위계부팅.sh