Java Virtual Machine은 Java 바이트코드(.class 파일)를 수신하고 바이트코드(한 줄씩)를 기계가 이해할 수 있는 코드로 변환하는 프로그램/소프트웨어입니다.
JVM에는 클래스 로더라는 모듈이 포함되어 있습니다. JVM의 클래스 로더는 프로그램 로드, 링크 및 초기화를 담당합니다. It:
클래스를 메모리에 로드합니다.
바이트코드 지침을 확인하세요.
프로그램에 메모리를 할당합니다.
JVM에는 다음과 같은 5개의 메모리 위치가 있습니다.
Heap - 객체(참조 유형)에 대한 런타임 저장소를 할당합니다.
Stack - 지역 변수와 부분 결과를 저장합니다. 스택에는 프레임이 포함되어 있으며 각 스레드에는 하나의 프레임이 할당됩니다. 스레드가 완료된 후 프레임도 삭제됩니다. 또한 메서드 호출 및 반환에서도 역할을 합니다.
PC 레지스터 - 프로그램 카운터 레지스터에는 현재 JVM에서 실행되는 명령어의 주소가 포함됩니다.
실행 엔진 - 가상 프로세서, 바이트코드 명령어를 하나씩 해석하는 인터프리터, JIT(Just-In-Time) 컴파일러가 있습니다.
Native Method Stack - 애플리케이션에서 사용하는 모든 기본 메소드가 포함되어 있습니다.
위 내용은 Java에서 JVM은 몇 가지 유형의 메모리 영역을 할당합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!