오늘도 나는
article thumbnail

자바스크립트를 실행하기 위해서는 자바스크립트 엔진이 필요하다

 

자바스크립트 엔진은 기본적으로 웹 브라우저에 내장되어 있다.

물론 브라우저마다 엔진의 종류가 다르지만 코드 실행과정은 비슷하기 때문에 웹 브라우저에서 자바스크립트 엔진을 이용한 코드 실행 과정은 알고있어야 한다.

 

 

자바스크립트 엔진을 이용한 코드 실행 과정은 다음 그림과 같다.

 

 

자바스크립트 엔진 코드 실행 과정

 

 

  • 자바스크립트 소스코드를 파싱(parsing)하여 AST(Abstract Syntax Tree)로 변환한다.
  • 인터프린터(Interpreter)는 AST를 기반으로 하여 바이트 코드(Byte code)를 생성한다.
  • 인터프리터가 바이트코드를 생성할 때 사용되는 함수 및 타입 정보들을 프로파일링 데이터(Profiling data)최적화 컴파일러(Optimizing compiler)로 전달한다.
  • 최적화 컴파일러는 프로파일링 데이터를 기반으로 하여 최적화 코드(Optimized code)를 생성한다.
  • 여기서 프로파일링 데이터 중 잘못 전달된 정보들최적화 해제(Deoptimize)단계를 거쳐 다시 바이트 코드에 전달되고 이전 동작들을 반복해서 수행한다.

 

 

이미지 출처

https://mathiasbynens.be/notes/shapes-ics

profile

오늘도 나는

@hcw95

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

검색 태그