Реферат: Замер степени использования процессора

Реферат: Замер степени использования процессора




👉🏻👉🏻👉🏻 ВСЯ ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻




























































Недавно в статье, посвящённой недокументированным возможностям Windows, я обнаружил интересный способ измерения степени использования процессора. Дело в том, что в Windows 9x существуют счётчики Performance Counters, которые можно включить из реестра, и в реестр же они будут посылать результаты замеров. Например загруженности процессора. Есть они и в NT, но доступ к ним сложнее.
К моему собственному удивлению результат перевода С на человеческий VB отлично заработал! По-сему, если Вашей программе нужно знать загруженность проца, или если Вы заинтересуетесь доступом в реестр из WinApi32, то Вы можете познакомиться с простеньким примером. Разумеется в полном варианте нужно было бы вставить проверку типа Windows (например через GetWindowsVersion), сворачивание в SysTray и т.п., но в "укороченном" виде Вам будет проще приспособить данную фичу Windows к своим потребностям.
Итак. Если у Вас не NT. Расположите на форме кнопочку. Назовём её cmdStart. Как водится, в раздел General Declarations вставляем:
Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" ( _
ulOptions - зарезервировано: должно быть ноль,
samDesired - тип доступа: комбинация предопределённых констант,
phkResult - переменная, получающая хэндл нужного ключа. Не забудьте потом закрыть.
Получить тип и значение параметра из ранее открытого ключа:
Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" ( _
hkey - хэндл открытого ранее ключа,
lpValueName - имя параметра, который нужно прочитать,
lpReserved - зарезервировано: должно быть ноль,
lpType - переменная, в которую будет возвращаться тип параметра
можно передать ноль, если тип не требуется (нам, кстати, передаст 3 - REG_BINARY),
lpcbData - переменная, которая содержит длину буфера под lpData,
после выполнения будет содержать кол-во в действительности переданных байт
у нас - длина слова: 4. Если переменную заменить просто на 4 - тоже работает
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hkey As Long) As Long
Private Const HKEY_DYN_DATA = &H80000006
Private Const STANDARD_RIGHTS_ALL = &H1F0000
Private Const READ_CONTROL = &H20000
Private Const STANDARD_RIGHTS_READ = (READ_CONTROL)
Private Const KEY_QUERY_VALUE = &H1
Private Const KEY_CREATE_SUB_KEY = &H4
Private Const KEY_ENUMERATE_SUB_KEYS = &H8
Private Const KEY_CREATE_LINK = &H20
Private Const SYNCHRONIZE = &H100000
Private Const KEY_ALL_ACCESS = ((STANDARD_RIGHTS_ALL OR _
KEY_QUERY_VALUE OR KEY_SET_VALUE OR _
KEY_CREATE_SUB_KEY Or KEY_ENUMERATE_SUB_KEYS Or _
KEY_NOTIFY Or KEY_CREATE_LINK) And (Not SYNCHRONIZE))
Private Const KEY_READ = ((STANDARD_RIGHTS_READ Or _
KEY_QUERY_VALUE Or KEY_ENUMERATE_SUB_KEYS Or _
Самый ресурсощедящий способ выждать паузу (в миллисекундах):
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, _
DimlpcbDataAsLongпо-моему действительно лучше выкинуть,
подставив в нужных местах 4. Ау, теоретики!
SetWindowPos Me.hwnd, -1, 0, 0, 0, 0, 3
Включаем счётчик, считывая значение соответствующего ключа:
If RegOpenKeyEx(HKEY_DYN_DATA, "PerfStats\StartStat", 0, KEY_ALL_ACCESS, _
RegQueryValueEx hkey, "KERNEL\CPUUsage", 0, 0, dwCPUUsage, lpcbData
Считываем значение прямо из реестра:
If RegOpenKeyEx(HKEY_DYN_DATA, "PerfStats\StatData", 0, KEY_READ, _
пока ещё раз не нажмём на кнопочку <
RegQueryValueEx hkey, "KERNEL\CPUUsage", 0, 0, dwCPUUsage, lpcbData
останавливаем счётчик. Если Вы прервали выполнение программы
до этого момента, остановить счётчик можно только перезагрузившись!!!
If RegOpenKeyEx(HKEY_DYN_DATA, "PerfStats\StopStat", 0, KEY_ALL_ACCESS, _
RegQueryValueEx hkey, "KERNEL\CPUUsage", 0, 0, dwCPUUsage, lpcbData
не даем себе впасть в уныние глядя на зависшие 100%
Private Sub Form_Unload(Cancel As Integer)

Название: Замер степени использования процессора
Раздел: Рефераты по информатике, программированию
Тип: реферат
Добавлен 04:55:07 27 февраля 2008 Похожие работы
Просмотров: 13
Комментариев: 16
Оценило: 2 человек
Средний балл: 5
Оценка: неизвестно   Скачать

Срочная помощь учащимся в написании различных работ. Бесплатные корректировки! Круглосуточная поддержка! Узнай стоимость твоей работы на сайте 64362.ru
Если Вам нужна помощь с учебными работами, ну или будет нужна в будущем (курсовая, дипломная, отчет по практике, контрольная, РГР, решение задач, онлайн-помощь на экзамене или "любая другая" учебная работа...) - обращайтесь: https://clck.ru/P8YFs - (просто скопируйте этот адрес и вставьте в браузер) Сделаем все качественно и в самые короткие сроки + бесплатные доработки до самой сдачи/защиты! Предоставим все необходимые гарантии.
Привет студентам) если возникают трудности с любой работой (от реферата и контрольных до диплома), можете обратиться на FAST-REFERAT.RU , я там обычно заказываю, все качественно и в срок) в любом случае попробуйте, за спрос денег не берут)
Да, но только в случае крайней необходимости.

Реферат: Замер степени использования процессора
Реферат По Истории Религия Древнего Египта
Отчет По Учебной Практике Кассир
Жаңа Қазақстанның Жаңа Келбеті Эссе 2030
Курсовая работа: Понятие и сущность публичного и частного права
Контрольная работа по теме Влияние фруктов и ягод на организм человека
Реферат по теме Патогенетическая психотерапия Мясищева, психосоматические расстройства и невроз
Сочинение Рассуждение Огэ 2022 Пример
Реферат по теме Построение новой железнодорожной линии
Тепловая Машина Реферат
Доклад по теме Висцеральный сифилис
Реферат: Англо-ирландский договор
Курсовая работа: Разработка технологического процесса обработки ступенчатого вала
Реферат: Analysis Of Karl Marx And Communism Essay
Курсовая работа по теме Усилитель мощности звука
Принципы Налогового Права Рф Понятие Система Эссе
Доклад по теме Прогнозы в сфере социологии преступности
Темы Рефератов По Обж 10 Класс
Реферат по теме Рефлекс цели
Курсовая работа: Индивидуальные трудовые споры. Скачать бесплатно и без регистрации
Как Писать Сочинение 15
Реферат: Концепции Я у Ч.Кули и Дж.Мида (Доклад)
Реферат: Маркетинг в туризме на примере туристической фирмы
Реферат: Древнерусская знать в работах современных западных историков-славистов

Report Page