Subversion Repositories ALCASAR

Rev

Rev 3037 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 3037 Rev 3287
Line 104... Line 104...
104
            $processors = preg_split('/\s?\n\s?\n/', trim($bufr));
104
            $processors = preg_split('/\s?\n\s?\n/', trim($bufr));
105
            foreach ($processors as $processor) {
105
            foreach ($processors as $processor) {
106
                $dev = new CpuDevice();
106
                $dev = new CpuDevice();
107
                $details = preg_split("/\n/", $processor, -1, PREG_SPLIT_NO_EMPTY);
107
                $details = preg_split("/\n/", $processor, -1, PREG_SPLIT_NO_EMPTY);
108
                foreach ($details as $detail) {
108
                foreach ($details as $detail) {
109
                    $arrBuff = preg_split('/\s+:\s+/', trim($detail));
109
                    if (preg_match('/^([^:]+):(.+)$/', trim($detail) , $arrBuff) && (($arrBuff2 = trim($arrBuff[2])) !== '')) {
110
                    if (count($arrBuff) == 2) {
-
 
111
                        switch (strtolower($arrBuff[0])) {
110
                        switch (strtolower(trim($arrBuff[1]))) {
112
                        case 'model name':
111
                        case 'model name':
113
                        case 'cpu':
112
                        case 'cpu':
114
                            $dev->setModel($arrBuff[1]);
113
                            $dev->setModel($arrBuff2);
115
                            break;
114
                            break;
116
                        case 'cpu mhz':
115
                        case 'cpu mhz':
117
                        case 'clock':
116
                        case 'clock':
118
                            $dev->setCpuSpeed($arrBuff[1]);
117
                            $dev->setCpuSpeed($arrBuff2);
119
                            break;
118
                            break;
120
                        case 'cycle frequency [hz]':
119
                        case 'cycle frequency [hz]':
121
                            $dev->setCpuSpeed($arrBuff[1] / 1000000);
120
                            $dev->setCpuSpeed($arrBuff2 / 1000000);
122
                            break;
121
                            break;
123
                        case 'cpu0clktck':
122
                        case 'cpu0clktck':
124
                            $dev->setCpuSpeed(hexdec($arrBuff[1]) / 1000000); // Linux sparc64
123
                            $dev->setCpuSpeed(hexdec($arrBuff2) / 1000000); // Linux sparc64
125
                            break;
124
                            break;
126
                        case 'l2 cache':
125
                        case 'l2 cache':
127
                        case 'cache size':
126
                        case 'cache size':
128
                            $dev->setCache(preg_replace("/[a-zA-Z]/", "", $arrBuff[1]) * 1024);
127
                            $dev->setCache(preg_replace("/[a-zA-Z]/", "", $arrBuff2) * 1024);
129
                            break;
128
                            break;
130
                        case 'bogomips':
129
                        case 'bogomips':
131
                        case 'cpu0bogo':
130
                        case 'cpu0bogo':
132
                            $dev->setBogomips($arrBuff[1]);
131
                            $dev->setBogomips($arrBuff2);
133
                        }
132
                        }
134
                    }
133
                    }
135
                }
134
                }
136
            }
135
            }
137
        }
136
        }