Skip to content

Latest commit

 

History

History
29 lines (17 loc) · 1.12 KB

js-vm.md

File metadata and controls

29 lines (17 loc) · 1.12 KB

js virtual machine

js vm은 js 코드를 컴파일하고 실행하는 역할을 담당한다.
즉, js 코드를 실행하는 가상 머신을 말한다.

V8 엔진 (Google Chrome, Node.js), SpiderMonkey, JavaScriptCore 등이 있다.

컴파일 및 실행 방법

js는 고수준 스크립트 언어로, js vm이 이를 바이트 코드 또는 머신 코드로 컴파일한 후 실행한다.
js vm은 js 코드를 받아서 인터프리터 방식 또는 jit 컴파일러 방식으로 동작한다.

  • 인터프리터: 코드를 한 줄씩 읽고 즉시 실행하는 방식
  • JIT 컴파일러: 코드를 미리 분석해 자주 사용하는 부분을 기계어로 변환하여 최적화하는 방식

메모리 관리

js vm은 메모리 할당 그리고 가비지 컬럭션을 처리해서 메모리를 효율적으로 사용할 수 있게 해준다.

요약

js vm은 js가 브라우저나 nodejs 환경에서 실행될 수 있게 해주는 가상 머신을 말한다.
이 vm은 js 코드를 컴파일하고 실행하며 메모리 관리 및 최적화를 해주는 엔진이다.


참고

nodejs 디자인 패턴 바이블