
이전글에서는 자바스크립트 엔진이 js를 어떻게 읽고 해석하는지에 다뤘습니다. 해당 글은구성요소와 이벤트루프가 어떻게 돌아가는지에 대한 글입니다. ? 자바스크립트 엔진이 또 다른 일을 해 ? V8은 single thread으로 되어있는 실행 엔진이고 상당히 많은 일을 한다. js코드를 해석, 실행도 하며 callStack을 다루며 memory 할당도 관리하고 GC도 하며 .. 등등을 담당한다. 뭐 엄청나게 많은 일을 하지만 여기선 이벤트루프 관련 글이기에 해당 부분만 다룬다. 자바스크립트 엔진의 구성요소 메모리들을 저장하는 영역인 Heap, 함수의 호출시점을 기억하는 Call Stack으로 이루어져있다. Memory Heap 함수나 변수들을 저장하는 공간. C의 경우 개발자가 할당한 메모리에 대해선 해제를..

이전 글에서 다루지 않았던 자바스크립트 엔진에 대한 글입니다. HTML이 parsing될 때 script태그를 만나면 parsing이 일시중지되고 script를 해석, 실행한다. 이 해석, 실행되는 것이 어떻게 이루어지는가에 대한 정리를 시작해보자. 앞서, 컴파일러, 인터프리터, JIT 컴파일러에 대해 간단히 알아보자. 알아야 아래 내용 이해하기 편하다. 컴파일러 ? 프로그래밍언어로 작성된 것을 실행파일로 만들기 위한 목적파일로 만드는 언어 번역 프로그램을 컴파일러라고 한다. CPU는 0,1만을 읽는 단순한 계산기다. 영어로 이루어진 코드를 컴퓨터는 절대 알 수 없다. 0, 1로 번역시켜주어야한다. Source code가 실행파일로 만들어지는 과정_출처 C로 예를 들었을 때 영어로 작성된 a.c 라는 s..
- Total
- Today
- Yesterday