كيفية اكتشاف سرعة وحدة المعالجة المركزية و RPM HDD في Objective-C أو Python

StackOverflow https://stackoverflow.com/questions/3900345

سؤال

أنا جديد في Objective-C ، لسبب أكاديمي ، أحتاج إلى قراءة سرعة وحدة المعالجة المركزية و RPM HDD

ما هي أبسط طريقة للوصول إلى بعض إعدادات النظام في Objective-C أو Python

يمكنني الاختيار بين Objective-C و Python لهذا المشروع.

هل كانت مفيدة؟

المحلول

يمكن أن يحصل هذا على سرعة وحدة المعالجة المركزية المبلغ عنها لنظام التشغيل Windows 2000 وما فوق من خلال قراءة السجل باستخدام Python:

import _winreg

key = _winreg.OpenKey(
    _winreg.HKEY_LOCAL_MACHINE,
    r"HARDWARE\DESCRIPTION\System\CentralProcessor\0")

value, type = _winreg.QueryValueEx(key, "~MHz")
print 'CPU speed is:', value

لا أعرف كيفية القيام بذلك لأنظمة التشغيل الأخرى ، ولا كيفية الحصول على RPMs HDD.

نصائح أخرى

أعتقد أنه سيتعين عليك استخدام وحدة C ++ مع Python للكشف عن سرعة وحدة المعالجة المركزية أو دورة في الدقيقة من محرك الأقراص الثابتة. حساب إجمالي استخدام وحدة المعالجة المركزية يمكن أن تساعدك هنا

لا أعرف أي شيء عن OBJ-C ، لذلك لم أستطع إخبارك إذا كان ذلك ممكنًا بهذه اللغة!

إن التحقق من سرعة وحدة المعالجة المركزية ليس شيئًا موضوعيًا ، إنه أمر نظام التشغيل. على OS X (وأفترض iOS) تريد أن تنظر إلى sysctlbyname (3) وخاصية HW.Cpufrequency ، شيء مثل:

int hz;
size_t hz_size = sizeof(hz);
int rc = sysctlbyname("hw.cpufrequency", &hz, &hz_size, NULL, 0);
if (0 == rc) {
    fprintf(stderr, "Clockspeed is %d hz\n", hz);
}

لا أعرف طريقة جيدة للحصول على RPM من محرك الأقراص ، لكنني أعرف طريقة سيئة. تحليل إخراج system_profiler ، المعلومات موجودة (كـ "معدل دوران"):

    Hitachi HTS543232L9SA02:

      Capacity: 320.07 GB (320,072,933,376 bytes)
      Model: Hitachi HTS543232L9SA02                 
      Revision: FB4AC50F
      Serial Number: (omitted)
      Native Command Queuing: Yes
      Queue Depth: 32
      Removable Media: No
      Detachable Drive: No
      BSD Name: disk0
      Rotational Rate: 5400
      Medium Type: Rotational
      Partition Map Type: GPT (GUID Partition Table)
      S.M.A.R.T. status: Verified
      Volumes:
        Macintosh HD:
          Capacity: 319.73 GB (319,728,959,488 bytes)
          Available: 12.4 GB (12,397,940,736 bytes)
          Writable: Yes
          File System: Journaled HFS+
          BSD Name: disk0s2
          Mount Point: /

من المحتمل أن يكون هناك تجريد أفضل للاستخدام ، لا أعرف ذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top