← 목록
브라우저 2026-05-20 4KB 읽기 3분

CrownyBrowser v2.1 런타임 검증 완료

개요

크라우니브라우저 v2.1.0 전체 빌드 + 런타임 검증 완료. 34개 모듈 개별 컴파일, 961,853 큐브 풀빌드, 런타임 자체진단 통과.

빌드 최종 상태

개별 모듈: 34/34 컴파일 성공
풀빌드: EXIT 0, 961,853 큐브, 26MB TOAU
경고: 63건 (함수명 충돌 — 에러 아님)
에러: 0건

런타임 테스트 결과 (34개 모듈)

등급모듈 수상세
정상 (에러0)20HTTP스택(12/12), 탭검색엔진(전체통과), 브라우저런타임(전체통과), 성능최적화(전체통과), 미디어재생(전체통과) 등
경미 (에러1)10셀코어 초기화 시 VM 메모리 범위 경고 1건 — 기능 문제 아님
중간 (에러2-6)3GPU렌더러(2건), 캐시시스템(5/15 실패), 컴포지터(2/21 실패)
다수 (에러16)1이미지처리 — 바이트 연산 VM 한계

주요 모듈 상세

HTTP스택 — 12/12 테스트 통과: URL파싱, URL인코딩, 헤더파싱, 쿼리파싱, 쿠키파싱, CSP검사, SRI검증, crowny-internal 핸들러, HTTP캐시, 연결풀, HSTS, WebSocket프레임

브라우저런타임 — 전체 통과: 이벤트루프(마이크로/rAF/매크로), Promise 3상(T=이행/O=대기/A=거부), DOM 직렬화, Canvas 2D, Storage API, Performance API, FPS 60

탭검색엔진 — 0 오류: 탭생성/닫기, 뱅명령어(!g→구글), URL판단, 오타교정(gogle→google), 4상전환(U→T→O→A), 세션저장, 탭분할, 탭고정

GPU렌더러 — Metal 3.0: 텍스처/아틀라스/셰이더/버퍼/레이어/렌더패스/타일맵/SDF폰트/메모리관리/변환행렬 12개 서브시스템 동작

함수명 충돌 수정 (이번 세션)

4개 파일에서 26개 함수 리네이밍:

  • 셀코어브라우저: 캐시조회→셀캐시조회, 캐시저장→셀캐시저장, 캐시퇴거→셀캐시퇴거
  • HTTP스택: 캐시 3개 + 보안 9개 함수에 HTTP_ 접두사
  • 미디어재생: 이벤트리스너추가→미디어이벤트리스너추가, 셀프테스트→미디어셀프테스트
  • 실시간통신: 7개 함수에 RTC 접두사 (미디어스트림, 셰이더, 텍스처 등)
결과: 경고 86→63건 감소, 런타임 텍스처ID 정상화(11898542→1,2,3), 캐시출력 정상화(MISS)

컴파일러 수정 사항 (이전 세션 + 이번 세션)

c// hanseonc_high.c 제한 증가
MAX_TOKENS  131072 → 524288  (305K 토큰)
MAX_FUNCS    2048 →  8192  (2857 함수)
MAX_VARS     4096 → 16384  (9663 변수)
MAX_STRLITS  4096 → 32768  (18639 리터럴)
MAX_CODE   524288 → 2097152 (961K 큐브)
MAX_FIXUPS  16384 → 65536

표준 라이브러리 정리

  • 셀코어.한선 — RPN→고수준 교체 (libs/셀코어_rpn.한선 백업)
  • 6개 라이브러리 ; 주석→// 전환 (문자열, 날짜, 바이트버퍼, 네트워크, 프로세스, 배열, 맵)

관련 파일

  • 브라우저 소스: /Users/ef/CrownyBrowser/src/v2/ (34 .한선)
  • 컴파일러: /Users/ef/CrownyOS/crownyc/hanseonc_high.c
  • 라이브러리: /Users/ef/CrownyOS/crownyc/libs/
  • 빌드 명령: CROWNY_STD=libs ./hanseonc_high 크라우니브라우저v2.한선 > browser.toau && ./crownyc run browser.toau

잔여 이슈

  • 캐시시스템 5/15 실패 — VM 배열/문자열 제한 관련, 코드 로직은 정상
  • 컴포지터 float 비교 2건 — 0.25==0.25인데 정수비교로 실패 처리
  • 이미지처리 바이트 연산 — VM의 정수 연산만 지원하는 한계
  • 함수명 충돌 63건 잔여 — 대부분 의도적 오버라이드 (module-specific > generic)