ahead of time 컴파일이 뭐임?
익명(182.221)
2023-05-01 10:09
추천 0
댓글 18
다른 게시글
-
백만줄 코딩 루틴 알려줌익명(222.235) | 23.05.01추천 0
-
카카오 코테 마지막 문제는 걍 버리는게 낫냐? [3]익명(50.193) | 23.05.01추천 0
-
금일 프비지원 강의 시작합니다. [1]프갤가수(58.236) | 23.05.01추천 0
-
사진복구 프로그램 이거 돈값함?오닉라그(hshlee) | 23.05.01추천 0
-
대체 이 돈들이 다 어디서 나오는거냐? ㅋㅋ익명(175.203) | 23.05.01추천 0
-
코딩은 쟈마없다는 라스무스의 어록피치피(119.196) | 23.05.01추천 0
-
항불안제랑 성욕감퇴랑 연관있노 ㅇㅅㅇ?? [2]익명(223.62) | 23.05.01추천 1
-
코딩이 재밌을 수 없음올타임레전..(wjdxoxowkd) | 23.05.01추천 0
-
ㅋㅋㅋ 디씨 존나 웃긴새끼있네 [2]익명(112.150) | 23.05.01추천 2
-
진지벌레 학식벌레 갑식벌레 책충이로꾸거(119.196) | 23.05.01추천 0
해당 댓글은 삭제되었습니다.
프로그램 자체가 IL이라는게 LLVM IR같은거 생각하면됨? 실제 제품은 네이티브이고?
ㅇㅇ LLVM 아는거보니 제대로 이해했네 정확함
Dart공부하는데 AOT라는 말이 나오던데, 그럼 Dart 언어가 IL이라는 소리임?
일반 바이너리 = CPU 기계어 -> 실행
근데 IL 바이너리가 뭐임? IL은 코드아님? IL 바이너리랑 실행되는 CPU에 맞는 기계어로된 바이너리랑 다름?
ㅇㅇ, 자바가 흥한 이유가 그런 매커니즘임. 여러 CPU 에서 돌릴수가 있는거지 네가 말한 LLVM 크로스 플랫폼처럼
자바는 메커니즘이 다르지않나.. 자바vm을 설치해야하잖아
아래에 따로 설명해둘게 내가 잘못설명한 부분이 있음
그냥 AoT 하고 JiT 하고 원천 기술은 같음, 다만 언제 기계어로 번역되는가 그 시점만 다른거임
AoT = IL 코드 (니가 짠 프로그램의 코드) 실행 이전에 모든 IL을 어셈으로 변환시킴
JiT = 실행 시점에 IL 을 그떄 그떄 변환시켜 실행시킴
JIT 를 이해했다면 햇갈릴거 없음 그냥 언제 얼마만큼의 중간 언어(IL) 코드가 어셈코드로 변환되느냐 그 시점만 다른거임
말이 좀 꼬였는데 결론내줄게 위에 내가 잘못 설명한게 있어서 몇가진 지웠음 미안하다, 프레임워크마다 구현이 약간씩 달려서 나도 햇갈렸음
AoT 는 말 그대로 미리 컴파일 하는거임, C 나 C++ 컴파일러가 대부분이 그러듯이 니가 짠 코드를 바이트코드로 만드는게 아니라 타겟 H/W CPU 어셈으로 바꾸는거임
JIT 는 바이트코드로 되어있는 바이너리(IL,JVM Bytecode) 를 실행 시점에 어셈블리로 변환시켜 실행하는거임
Dart 자체는 IL 이 맞음. AoT 라는 용어 자체가 IL 을 쓰는 언어들이 성능 문제떄문에 기존 전통적인 컴파일러 방식으로 컴파일하자 여기서 나온 용어인거고
c컴파일러가 하는짓이랑 똑같은데 언어가 IL이면 AoT라 부른다는거임?