Implement JVM workflow distribution and multi-core processors

I am doing some research on language realities on multi-core platforms. I'm currently trying to figure out a couple of things:

  • How does the JVM implementation map java.lang.Threadto the native OS thread?
  • For example, let's say Open JDK, I think I don’t even know which parts I should look to learn more about this. Is there any document that describes how built-in functions are implemented? Since java.lang.Threadthere are parts in the parts that are native, I suggested that perhaps some of the internal parts are encoded in their own parts.

Taking this into multicore, how is this mapping done for multicore? How do threads map to different cores to run simultaneously? I know that there is an implementation ExecutorServicethat we can use to use multi-core functions. Here the consequences of the previous answers may arise: if the OS’s own threads are responsible for the distribution of work and thread scheduling, is it true that what the JVM does through ThreadPooland ExecutorServiceonly creates threads and sends tasks to them?

I would be grateful for your answers, as well as if I am on the right track on the topic.

+3
source share
1 answer

, Open JDK, , , , .

, ++. C/++ IDE .

multicore, ? ?

, , JVM.

... , , JVM ThreadPool ExecutorService, ?

AFAIK, .

+1

Source: https://habr.com/ru/post/1775379/


All Articles