JavaScript | V8 Engine

space's pace·2022년 7월 1일
0

Javascript

목록 보기
19/20

V8이란?

V8은 웹 브라우저를 만드는데 기반을 제공하는 구글에서 개발한 오픈소스 자바스크립트 엔진이다.

V8은 자바스크립트 코드를 실행 전에 최적화된 머신 코드로 컴파일하는 엔진이다.
(즉, V8은 자바스크립트 코드를 받아 컴파일하고 실행하는 C++ 프로그램이다.)
크롬 브라우저와 노드 js에서 사용된다.

V8의 등장배경

웹 브라우저 내부에서 자바스크립트의 속도 개선을 위해서 고안되었다. 자바스크립트 엔진은 웹 특성상 유저와 상호작용을 위해서 즉시성이 있는 인터프리터 방식을 사용하는데, 코드가 많아질 수록 속도가 느려져서 구글맵같은 기능을 구현하기 어려웠다. 따라서 V8은 속도 향상을 위해 자바스크립트 코드를 더 효율적인 머신 코드로 번역한다.

V8 기능 정의

자바스크립트 코드 컴파일 및 실행
콜스택을 핸들링해서 자바스크립트 함수를 특정 순서에 따라 실행
힙메모리 객체에 대한 메모리 할당 관리
더 이상 사용하지 않는 객체를 관리 (가비지컬렉터)
모든 데이터 타입, 연산자, 객체, 함수를 제공
이벤트 루프를 제공 (이벤트 루프를 사용하여, Callback 함수들의 변화 감지)

profile
블로그 이사 준비중!

0개의 댓글