Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Данные процессора и оперативной памяти Добавлено: 25.12.06 13:44  

Автор вопроса:  Андрэ

Ответить

  Ответы Всего ответов: 17  

Номер ответа: 16
Автор ответа:
 JMP



Вопросов: 6
Ответов: 171
 Профиль | | #16 Добавлено: 28.12.06 10:13
У меня частота процессора написана в Processor Brand String :)


Позвольте с Вами не согласиться, Processor (name)Brand String возвращает частоту процессора только для 4-х пней.

О том же гласит и МСДН, "что для некоторых моделей ЦПУ в этой строке(Processor (name)Brand String) может возвращаться максимальная частота процессора."

Может но не обязана !

проверте на 2,3 пне, на старых АМД-шках.
В Processor Brand String частоты процессора не будет.

Тоже самое относится и к реестровой ветке

HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0

на 2-пнях (которых еще навалом в использовании)
в этой ветке скорости ЦПУ не будет.

Повторюсь, ИМХО единственный универсальный метод
получения корректного значения частоты процессора - WMI
согласно рекомендациям M$.

Буду искренно рад, если кто-то меня в этом разочарует,
при условии, что предложенный метод подпадает под условия сертификации программ Микрософтом.

2HACKER,

то что Вы имели ввиду о С-коде который использует наверно все таки библиотеку PSAPI, возвращает
информацию только о памяти, API же возвращающие частоту
процессора к сожалению там не находил.

TYPE PERFORMANCE_INFORMATION
   cb AS DWORD          
   CommitTotal AS DWORD  
   CommitLimit AS DWORD    
   CommitPeak AS DWORD        
   PhysicalTotal AS DWORD  ' <-Total amount of physical
                           '    memory, in pages.
   PhysicalAvailable AS DWORD  
   SystemCache AS DWORD
   KernelTotal AS DWORD
   KernelPaged AS DWORD
   KernelNonpaged AS DWORD
   PageSize AS DWORD    
   HandleCount AS DWORD  
   ProcessCount AS DWORD
   nThreadCount AS DWORD
END TYPE

DECLARE FUNCTION GetPerformanceInfo LIB "PSAPI.DLL" ALIAS "GetPerformanceInfo" ( _
    pPerformanceInformation AS PERFORMANCE_INFORMATION, _
    cb AS DWORD            ;) AS LONG  


Имхо для этих целей проще использовать
ранее приведенное АПИ GlobalMemoryStatus
входящую в библиотеку KERNEL32

Ответить

Номер ответа: 17
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #17
Добавлено: 28.12.06 16:59
Логично предположить, что сама WMI не из воздуха берет эти данные, а использует комбинированный метод. А может и только RDTSC.

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам