NPTL in Linux kernel2.6 on Hyperthreading Processor

NPTL in Linux kernel2.6 on Hyperthreading Processor

The introduction of NPTL into Redhat 9.0 kernel 2.6 has solve the Java threading problems on scalability and signal handling.

Correct me if I am wrong on this perception:
For example, an application consist of 5 Java threads, map to 5 kernel threads created from the NPTL (clone system call) using 1 to 1 mapping model respectively.

If my perception is correct:

1)How can these 5 kernel threads being scheduled into the HT dual processors which consist of 4 logical processors?

2) How the kernel threads scheduler knows the number of logical processors exist?

3) How is the naming of the logical processors in a DP with HT enabled?Is it:

Physical processor 0: Logical processor 0
Physical processor 0: Logical processor 1
Physical processor 1: Logical processor 2
Physical processor 1: Logical processor 3

OR:

Physical processor 0: Logical processor 0
Physical processor 1: Logical processor 1
Physical processor 0: Logical processor 2
Physical processor 1: Logical processor 3
Correct me if I am wrong. Does this dependent on the kernel version installed?

Thank you: meileng

1 post / 0 new
For more complete information about compiler optimizations, see our Optimization Notice.