Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

Java is currently one of the most widely used software development technologies. Java's technical system is mainly supported by

Virtual machines running Java programs, Java APIs that provide interface support in various development areas, Java programming languages, and many third parties

Java framework (such as Spring, Struts, etc.) constitute. In China, related to Java API, Java language grammar and third-party boxes

The technical information and books on the shelf are very rich. In contrast, the information about the Java Virtual Machine is extremely poor.

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

Information acquisition method

Content features

The first part comes to Java

The first part of the book establishes a good foundation for the following explanation. Although understanding the ins and outs of Java technology and compiling your own OpenJDK are not necessary for readers to understand the Java virtual machine, these preparation processes can provide a good guide for approaching Java technology and the Java virtual machine. The first part is only chapter 1

Chapter 1 introduces the past, present and future development trends of the Java technology system, and introduces how to independently compile an OpenJDK 7.

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

 

The second part of the automatic memory management mechanism

Because the programmer has given the power of memory control to the Java virtual machine, you can enjoy the many advantages of automatic memory management when coding, but it is for this reason. How does the virtual machine use memory, then troubleshooting errors will become an extremely difficult task. The second part includes chapters 2-5:

Chapter 2 explains how memory is divided in a virtual machine, and which areas, what kind of code and operations may cause memory overflow exceptions, and explains the common causes of memory overflow exceptions in various areas.

Chapter 3 analyzes the garbage collection algorithm and the characteristics and operating principles of several garbage collectors provided in JDK1.7. The main rules of automatic memory allocation and recycling in the Java virtual machine are verified through code examples.

Chapter 4 introduces the use of six command line tools and two visual troubleshooting tools released with JIDK.

Chapter 5 shares some representative practical cases with readers, and also prepares an exercise that all developers can "act in person". Readers can get experience in troubleshooting and tuning through practice.

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

 

The third part of the virtual machine execution subsystem

The execution subsystem is an essential part of the virtual machine. Only by understanding how the virtual machine executes the program can we write better code. The third part includes chapters 6-9:

Chapter 6 defuses the various components of the Class file structure, as well as the definition, data structure and use method of each part, and demonstrates how the data of the Class file is stored and accessed in a practical way.

Chapter 7 introduces the actions performed by the virtual machine in the five stages of loading, verification, preparation, resolution, and initialization of the class loading process. It also introduces the T. Principles and their meaning to virtual machines.

Chapter 8 analyzes how the virtual machine finds the correct method when executing code, how to execute the byte code within the method, and the memory structure involved in executing the code.

Chapter 9 through the case of four class loading and execution subsystems, shares some ideas that are worthy of appreciation and reference for using class loaders and processing bytecode, and deepens the understanding of previous theoretical knowledge through a practical exercise.

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

 

Part 4 Program compilation and code optimization

The two processes of compiling a Java program from source code into bytecode and compiling from bytecode to local machine code are actually equivalent to the compilation process performed by a traditional compiler. The fourth part includes chapters 10 ~ 11

Chapter 10 analyzes the causes and consequences of various types of syntactic sugar in the Java language, such as generics, active boxing and unboxing, and conditional compilation. Well, it demonstrates how to use a plug-in annotation processor to achieve-a check program naming convention Compiler plugin.

Chapter 11 explains the hotspot detection method of the virtual machine, HoSpor's real-time compiler, compilation trigger conditions, and how to observe and analyze the JT compilation data and results from outside the virtual machine. In addition, it also explains several common compilation optimization techniques .

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

 

Part V Efficient Well Development

The Java language and virtual machine provide native, complete multi-thread support, which makes it inherently suitable for developing multi-threaded concurrent applications. However, we cannot expect the system to complete all concurrency-related processing. Understanding the insider of concurrency is also an indispensable course for a senior programmer. The fifth part includes chapters 12 to 13:

Chapter 12 explains the structure and operation of the Java memory model of the virtual machine, and the reflection of atomicity, visibility, and order in the Java memory model. It introduces the rules and use of the principle of pre-occurrence, and also understands the thread in the Java language. How is it achieved in China.

Chapter 13 introduces the concepts and classifications involved in thread safety, the method of synchronization implementation, and the underlying operating principles of virtual machines, and introduces a series of lock optimization measures taken by virtual machines to achieve efficient concurrency.

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

 

 

Challenge must-see for high salary: "In-depth understanding of advanced features and best practices of java virtual machine jvm"

Guess you like

Origin www.cnblogs.com/yunxi520/p/12699658.html