From: Michael Tremer Date: Wed, 24 Nov 2010 15:34:41 +0000 (+0100) Subject: Reimplement CPU.count. X-Git-Tag: v0.2~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f6fe0dfc1c751e53841d437cd18cb09a414b187f;p=oddments%2Ffireinfo.git Reimplement CPU.count. --- diff --git a/fireinfo/cpu.py b/fireinfo/cpu.py index fad7810..cea1ad9 100644 --- a/fireinfo/cpu.py +++ b/fireinfo/cpu.py @@ -1,7 +1,11 @@ #!/usr/bin/python +import os + import _fireinfo +PROC_CPUINFO = "/proc/cpuinfo" +SYS_CLASS_CPUID = "/sys/class/cpuid/cpu%d" class CPU(object): __info = _fireinfo.cpuinfo() @@ -12,10 +16,10 @@ class CPU(object): def read_cpuinfo(self): """ - Read information from /proc/cpuinfo and store + Read information from PROC_CPUINFO and store it into a dictionary self.__cpuinfo. """ - f = open("/proc/cpuinfo") + f = open(PROC_CPUINFO) while True: line = f.readline() @@ -82,8 +86,13 @@ class CPU(object): @property def count(self): - return int(self.__info["ncpus"]) - + """ + Count number of CPUs (cores). + """ + i = 0 + while (os.path.exists(SYS_CLASS_CPUID % i)): + i += 1 + return i if __name__ == "__main__":