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 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?