Open download! Supporting textbook of Alibaba cloud developer school JVM practice


Introduction:Java virtual machine is not only a cross platform software, but also a new network computing platform. The platform includes many related technologies, such as various APIs conforming to open interface standards, optimization technologies and so on.

When learning java virtual machine, you may have the following questions:

What is the principle of Java virtual machine?

What is the principle of JNI and class loader?

What is the safepoint mechanism?

Supporting materials for Alibaba cloud developer schoolJVMActual combatCome on! Chapter 6 helps you easily solve the above problems. Cooperate with 9000 + people to learnJava virtual machine principle video course, advanced technology is not a dream!

Click free download

JVM practice

Open download! Supporting textbook of Alibaba cloud developer school JVM practice

Open download! Supporting textbook of Alibaba cloud developer school JVM practice

Copy the link to the browser to complete the download or distribution

– see the highlights first –

JNI in Java

Master the mutual calls between Java and native, and greatly enrich the use scenarios of Java. Understanding the principle is more convenient for learning JVM / fault location.Click to view more > >

Safepoint mechanism

Safepoint will suspend the application threads of the whole JVM. The main concern here is that when VM thread sends a request, Java experimenters can respond to safepoint’s request in time and stop themselves immediately. If some threads stop and others are still running, other threads will be a waste of time waiting, Therefore, timely response is a very important indicator.Click to view more > >

Principle of class loader

For the class loading part, first the user has a java file, and then the java file can be compiled with Java C Class file, and then the virtual opportunity loads The class file becomes the metadata of the virtual machine. For example, in C + +, it will become Klass *, method *, constantpool *, etc. These are the descriptions of metadata in Java virtual machine.Click to view more > >

Dragonwell feature: multi tenant

The previously blocked API is supported, and there is no need to change the code at all. You can directly switch the previous code written with coprocessor to the coprocessor model for a model conversion. In this way, from the java thread and pthread operating system 1:1 model to calling a large number of wisps to a small number of operating systems, the performance is greatly improved.Click to view more > >

Dragonwell property: jwarmup

When a Java method is to be executed, the class of the method needs to be loaded by the JVM. This process includes the verification, parsing, linking and class initialization of various files. After the class is loaded, the JVM can execute the method.Click to view more > >

Dragonwell properties: Wisp

Context switching will consume valuable CPU resources. In many cases, we have misunderstandings about context. There is a great difference between going in and out of the kernel and scheduling. If we see multiple threads calling back and forth in this scenario, who will be selected for the next thread when its resources are exhausted or blocked? In fact, the operating system needs to be scheduled, and the real loss is much greater than expected.Click to view more > >

Alibaba cloud developer Sutra Pavilion

Ali cloud developer community, a series of e-books in the Sutra Pavilion, brings together the technology precipitation essence of a large factory, and the explosion continues. Click the link to get a large number of free e-books:

Open download! Supporting textbook of Alibaba cloud developer school JVM practice

Copyright notice:The content of this article is spontaneously contributed by Alibaba cloud real name registered users, and the copyright belongs to the original author. Alibaba cloud developer community does not own its copyright or bear corresponding legal liabilities. Please refer to Alibaba cloud developer community user service agreement and Alibaba cloud developer community intellectual property protection guidelines for specific rules. If you find any content suspected of plagiarism in the community, fill in the infringement complaint form to report. Once verified, the community will immediately delete the content suspected of infringement.

Recommended Today

Proper memory alignment in go language

problem type Part1 struct { a bool b int32 c int8 d int64 e byte } Before we start, I want you to calculatePart1What is the total occupancy size? func main() { fmt.Printf(“bool size: %d\n”, unsafe.Sizeof(bool(true))) fmt.Printf(“int32 size: %d\n”, unsafe.Sizeof(int32(0))) fmt.Printf(“int8 size: %d\n”, unsafe.Sizeof(int8(0))) fmt.Printf(“int64 size: %d\n”, unsafe.Sizeof(int64(0))) fmt.Printf(“byte size: %d\n”, unsafe.Sizeof(byte(0))) fmt.Printf(“string size: %d\n”, […]