>  기사  >  Java  >  가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

零下一度
零下一度원래의
2017-06-14 16:18:582691검색

1: Java 기술 시스템 모듈 그림 2: JVM 메모리 영역 모델 1. 메서드 영역은 "영구 생성" 및 "비힙"이라고도 합니다. 가상으로 로드된 클래스 정보, 상수 및 정적 변수를 저장하는 데 사용됩니다. 머신이며 각 스레드에서 공유됩니다. 기본 최소값은 16MB이고 최대값은 64MB입니다. -XX:PermSize 및 -XX:MaxPermSize 매개변수를 통해 메소드 영역의 크기를 제한할 수 있습니다. 런타임 상수 풀: 클래스 버전, 필드, 메소드, 인터페이스 등과 같은 설명 정보 외에도 클래스 파일에는 다양한 기호를 저장하는 데 사용되는 상수 풀이 있습니다. 컴파일러에 의해 생성된 참조는 클래스가 로드된 후 메서드 영역의 런타임 상수 풀에 배치됩니다. 2. 가상 머신 스택은 Java 메소드 실행의 메모리 모델을 설명합니다. 각 메소드가 실행될 때 로컬 변수 테이블(매개변수 포함), 작업 스택, 메소드 종료 및 기타 정보를 저장하기 위해 "스택 프레임"이 생성됩니다. 각 메소드가 호출되어 실행이 완료될 때까지의 과정은 가상머신 스택에서 스택 프레임이 스택에 푸시되어 스택 밖으로 튀어나오는 과정에 해당한다. 선언 주기는 스레드와 동일하며 스레드에만 적용됩니다. 지역 변수 테이블 저장

1. Java Virtual Machine Learning - 아키텍처 메모리 모델

가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

소개: "영구 생성" 및 "비힙"이라고도 하며 가상 머신을 저장하는 데 사용됩니다. 로드 클래스 정보, 상수, 정적 변수는 각 스레드가 공유하는 메모리 영역입니다. 기본 최소값은 16MB이고 최대값은 64MB입니다. -XX:PermSize 및 -XX:MaxPermSize 매개변수를 통해 메소드 영역의 크기를 제한할 수 있습니다.

2. Java Virtual Machine Learning - 개체 액세스

가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

소개: 개체 액세스에는 Java 스택, Java 힙 및 메서드 영역의 세 가지 메모리 영역이 포함됩니다.

3. Java Virtual Machine Learning - Garbage Collection Algorithm

가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

소개: 추적 수집기는 실행 중에 개체 간의 참조 상태를 전체적으로 기록하는 중앙 집중식 관리 방법을 채택합니다. GC Roots 객체 중에서 해당 노드 아래로 모든 참조 체인을 검색합니다. 객체에 GC Roots에 대한 참조 체인이 없으면 이 객체를 사용할 수 없음을 증명합니다.

4. Java Virtual Machine Learning - Garbage Collector

소개: 직렬 수집기는 복사 알고리즘을 사용하여 단일 스레드에서 실행되는 차세대 수집기입니다. 가비지 수집을 수행하는 동안 다른 모든 작업자 스레드(사용자 스레드)를 일시 중단해야 합니다. Jvm 클라이언트 모드의 기본 차세대 수집기입니다. 단일 CPU로 제한된 환경의 경우 직렬 수집기는 스레드 상호 작용 오버헤드가 없으므로 가비지 수집에 중점을 두어 자연스럽게 가장 높은 단일 스레드 수집 효율성을 달성할 수 있습니다.

5. Java Virtual Machine Learning - 객체 메모리 할당 및 재활용

가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

소개: 대부분의 경우 객체는 신세대 Eden 영역에서 먼저 할당됩니다. Eden 메모리 영역에 할당할 공간이 충분하지 않으면 가상 머신은 Minor GC(New Generation GC)를 트리거합니다. Minor GC 동안 가상 머신은 Eden 영역의 개체를 Survivor 영역 중 하나로 이동합니다.

6. Java 가상 머신 학습 - JVM 매개변수 및 값을 보기 위한 명령줄 도구 ​​

가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

소개: 1. HotSpot VM의 각 globals.hpp 파일 초기 기본값 보기

7. Java 가상 머신 러닝-JDK 시각적 모니터링 도구

가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

소개: JConsole 도구는 JDK/bin 디렉터리에 있습니다. JConsole을 시작하면 로컬 시스템에서 실행 중인 jvm 프로세스를 자동으로 검색하고 쿼리하고 지정할 필요가 없습니다. jvm 프로세스 중 하나를 두 번 클릭하여 모니터링을 시작하거나 "원격 프로세스"를 사용하여 원격 서버에 연결합니다.

8. Java Virtual Machine Learning - 객체 참조 강도

가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

소개: 계산 알고리즘을 통해 객체에 대한 참조 수를 결정하는지, 아니면 객체가 참조 체인은 루트 검색 알고리즘을 통해 도달할 수 있으며 객체가 살아 있는지 여부를 결정하는 것은 "참조"와 관련됩니다.

9. Java Virtual Machine Learning - 메모리 튜닝

가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

소개: JVM 튜닝은 주로 각 세대의 크기 제어 및 GC 전략을 포함하여 메모리 관리 튜닝을 위한 것입니다. GC는 가비지 수집을 시작할 때 애플리케이션 스레드를 일시 중단하므로 성능에 심각한 영향을 미치므로 튜닝의 목적은 GC로 인해 발생하는 애플리케이션 스레드의 일시 중지 시간을 최소화하고 Full GC 수를 줄이는 것입니다.

10. Java Virtual Machine Learning - 클래스 로더(ClassLoader)

가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼

소개: 클래스 바이트 코드를 Java Virtual Machine에 로드하는 데 사용됩니다. 일반적으로 자바 가상 머신이 자바 클래스를 사용하는 방식은 다음과 같다. 자바 소스 파일은 Javac를 거쳐 자바 바이트코드 파일(.class 파일)로 변환된다. 클래스 로더는 Java 바이트코드를 읽고 이를 java.lang.Class 클래스의 인스턴스로 변환하는 일을 담당합니다. 이러한 각 인스턴스는 Java 클래스를 나타냅니다. 실제 상황은 더 복잡할 수 있습니다. 예를 들어 Java 바이트 코드는 도구를 통해 동적으로 생성되거나 네트워크를 통해 다운로드될 수 있습니다.

위 내용은 가상 머신 학습을 위한 입문 튜토리얼: 제로 기반 가상 머신 학습을 위한 10가지 권장 입문 튜토리얼의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.