Skip to content

WebAssembly

웹어셈블리(wasm)

  • 바이트코드 형태의 이진 포맷과 그에 대응하는 텍스트 포맷을 제공하는 새로운 타입의 코드 실행 환경

특징

  • 고성능: 기계어에 가까운 수준의 성능
  • 범용성: 다양한 프로그래밍 언어 지원
  • 보안: 샌드박스 환경을 통해 시스템에 대한 접근 최소화
  • 크로스 플랫폼: 여러 운영 체제와 브라우저에서 동일한 WebAssembly 모듈 실행

구성 요소

  • 바이너리 포맷
    • 빠른 네트워크 전송을 위해 최적화
  • 텍스트 모델
    • 인간이 읽을 수 있음
  • 가상 머신
    • 바이트코드를 기계어로 변환하여 실행

메모리 모델

  • 선형 메모리(Linear Memory) 모델 사용
    • 하나의 큰 배열로 메모리 관리
    • 메모리 주소는 0에서 시작하여 순차적으로 증가
  • 독립된 메모리 사용
  • 메모리 확장 가능