사진과코딩

[JavaScript] JavaScript Engine V8 본문

KB IT's Your Life

[JavaScript] JavaScript Engine V8

Dev_Fuji 2024. 5. 20. 18:32

  • Memory Heap : 데이터를 무더기로 저장한다.(ex.배열,Map,Set,String | 참조형 데이터)
  • Call Stack : 순서대로 누적 저장한다.(ex.지역변수) => 처리순서 저장
  • JIT Compiler : JIT 컴파일러는 처음에 소스코드를 파싱하여 중간언어(IR) 바이트 코드 형태로 먼저 변환한다. 이 후 인터프리터 모드라면 바이트 코드를 하나씩 읽어가며 동작을 수행하고, JIT 모드라면 생성된 바이트 코드를 기반으로 네이티브 코드 컴파일 하여 수행하게 된다.
    => 하나의 함수 처럼 처리한다, inline처리 (ex. a()안에 b()가 있는 것 처럼 처리한다.)
  • Garbage Collection : 사용하지 않는 메모리를 해제한다.
    ex. c()가 끝나면 c와 지역변수는 삭제 되지만 Memory Heap에 선언한 Arrays() 사라지지 않는다(c()는 Arrays()의 주소만 가지고 있기 때문이다). 이것을 Garbage Collection이 해재해준다

'KB IT's Your Life' 카테고리의 다른 글

[Git] 이론 및 명령어 정리  (0) 2024.05.20
[JavaScript] Promise 비동기 처리  (0) 2024.05.20
[Git] Git 상태 추적  (0) 2024.05.20
[Vue.js] 이론  (0) 2024.05.14
[JavaScript] 이론, Test  (0) 2024.05.13