본문 바로가기
Web basics

V8 엔진이란 무엇인가

by 시계의온도 2021. 1. 24.

 

V8이란 

V8은 웹 브라우저를 만드는데 기반을 제공하는 오픈소스 자바스크립트 엔진이다. ECMAScript 규격의 C++로 작성되었으며, 자바스크립트를 바이트코드로 컴파일하고 실행하는 방식을 사용한다. ( JIT )  

 

자바스크립트 엔진이란 

자바스크립트 엔진은 자바스크립트 코드를 실행하는 프로그램 혹은 인터프리터를 말한다. 자바스크립트 엔진은 표준적인 인터프리터로 구현될 수도 있고 혹은 자바스크립트 코드를 바이트코드로 컴파일하는 JIT( just - in - time ) 컴파일러로 구현할 수도 있다. 

 

자바스크립트 엔진은 ECMAScript에 맞게 개발되었으며 아래는 유명한 프로젝트들이다. 

  • SpiderMonkey : 최초의 자바스크립트 엔진. 넷스케이프 네비게이터에 사용됐고 현재는 파이어폭스에 사용됨. 
  • Chakra(JScipt9) : 인터넷익스플로러
  • Chakra(JavaScipt) : 마이크로소프트엣지 
  • V8(C++) : 구글 크로니움 오픈소스 프로젝트 

V8의 등장배경 

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

 

구글의 크로니움 프로젝트 2008년에 처음 배포되었다. 몽고DB와 Node.js에서도 사용가능하다. 

 

출처 

위키피디아: en.wikipedia.org/wiki/V8_(JavaScript_engine)

댓글