-
The previous code did not count the number of virtual processors across physical processors on SunOS. Can handle the following situations: ``` $ uname -a SunOS solaris 5.11 11.4.0.15.0 i86pc i386 i86pc $ psrinfo -p -v The physical processor has 1 virtual processor (0) x86 (GenuineIntel 306D2 family 6 model 61 step 2 clock 3492 MHz) Intel Core Processor (Broadwell) The physical processor has 1 virtual processor (1) x86 (GenuineIntel 306D2 family 6 model 61 step 2 clock 3492 MHz) Intel Core Processor (Broadwell) The physical processor has 1 virtual processor (2) x86 (GenuineIntel 306D2 family 6 model 61 step 2 clock 3492 MHz) Intel Core Processor (Broadwell) The physical processor has 1 virtual processor (3) x86 (GenuineIntel 306D2 family 6 model 61 step 2 clock 3492 MHz) Intel Core Processor (Broadwell) ``` ``` $ uname -a SunOS sol11x86 5.11 11.0 i86pc i386 i86pc $ psrinfo -p -v The physical processor has 2 virtual processors (0 1) x86 (GenuineIntel 50650 family 6 model 85 step 0 clock 2000 MHz) Intel(r) Xeon(r) Gold 6138 CPU @ 2.00GHz ``` ``` $ uname -a SunOS sol11 5.11 11.0 sun4v sparc sun4v $ psrinfo -p -v The physical processor has 2 cores and 16 virtual processors (0-15) The core has 8 virtual processors (0-7) The core has 8 virtual processors (8-15) SPARC-T4 (chipid 0, clock 2848 MHz) ```
1c87bc60