Mit dem Programm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/perl
use strict;
use 5.010;
use warnings;
my @cpuinfo = `cat /proc/cpuinfo`;
foreach my $selected_cpuinfo (@cpuinfo) {
chomp($selected_cpuinfo);
if ($selected_cpuinfo =~ m/^processor/ || $selected_cpuinfo =~ m/^cpu/ ) {
print "CPUINFO: $selected_cpuinfo\n";
}
}
und der Systemausgabe
Quotewolf@emma:~> cat /proc/cpuinfo
processor :
vendor_id :
cpu family : 6
model : 23
model name : Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz CPUINFO: processor : 1
stepping : 10
cpu MHz : 2000.000
cache size : 2048 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 13
...
erhalte ich identisch für alle Kerne
QuoteCPUINFO: processor : 0
CPUINFO: cpu family : 6
CPUINFO: cpu MHz : 2000.000
CPUINFO: cpu cores : 4
CPUINFO: cpuid level : 13
CPUINFO: processor : 1
...
Allerdings erhalte ich nur bei der Dezimalzahl (2000.000) in der Ausgabe mehrere zusätzliche Leerzeichen (oder Tabs) zwischen MHz und : 2000.000.
Warum?