Java & Algorithm/Java
[JAVA] 기초문법 - ✅️JVM? = 공통 실행 환경(Compile-time, Run-time) - 07
ohnyong
2023. 7. 24. 20:49
PC던 모바일이던 서버 컴퓨터던 JVM(Java Virtual Machine)을 깔아주면 Java를 실행 할 수 있다. 당연히 JDK에 JRE에도 들어있다. 실행과 관련 있기 때문이다. JVM은 Java가 조상인 C언어에서 추가된 기능이고 Java가 유명해진 영향을 준 핵심 하나라고 생각한다.
Java가 실행되는 흐름은 다음과 같다.
(~.java)로 끝나는 사람의 언어, 개발자의 언어(text)로 작성된 파일의 코드는
-> (Java Compiler)(javac)변환기를 통해서
-> byte code(OS가 이해하는 언어)로 번역된다.(.class)
// 까지가 Compile-time 환경이다
// 여기부터 Run-time 환경이다
//여기부터는 JVM이 하는 곳이다.
->(.class)byte code는
-->(Class Loader)라는 운반기(bytecode를 읽음)를 통해서 메모리(데이터를 저장하는 영역)에 옮긴다.(여기서=>class객체를 만든다)
-->해석부[(Interpreter),(JIT compiler)가 기계어(CPU 장치가 그대로 읽을 수 있도록) 번역, (Garbage Collector)라는 청소부가 자동으로 메모리소멸,제거 등 처리해서(개발자 편하게함) 메모리(데이터를 저장하는 영역)에 옮긴다.
//여기까지가 JVM이 하는곳이다.
-> OS
-> HW
// 여기까지가 Run-time 환경이다.
런타임과 런타임 환경이란?
런타임은 간단하게 프로그램이 실행되고 있는 동안의 동작을 가리킨다.해당 프로그램이 필요한 시스템 자원(RAM, 시스템 변수, 환경변수 등)을 할당받고 실제로 시스템 자원을 사용해서 어떤 처리를 하고 있는 것 또는 상태, 처리가 진행 중인 것을 말한다.
[OS] 런타임(Runtime)과 런타임 환경(Runtime Environment)
컴퓨터를 사용하다 보면 종종 런타임이라는 말을 볼 때가 있다. 런타임 에러(Runtime Error), 런타임 환경(Runtime Environment) 등등 친숙할 정도로 꽤 많이도 접하는데 정작 정확한 의미는 몰랐었다. 그
gf0308.tistory.com
해당 Java 기초 연습은 아래 깃허브를 통해 업로드 됩니다.
https://github.com/yzpocket/ohnyong_java_excercise
GitHub - yzpocket/ohnyong_java_excercise
Contribute to yzpocket/ohnyong_java_excercise development by creating an account on GitHub.
github.com