Chertenok.ru - все о программировании
Вход  |  Регистрация  |  Поиск 
Праздник
Сегодня :

День славянской письменности и культуры


Загруженность процессора


Новая тема  Ответить  Печать Предыдущая тема  Следующая тема
Автор Сообщение
Пол:Муж aka57
Я живу тут....


Возраст: 28
Знак зодиака: Стрелец
Зарегистрирован: 03.07.2003
Сообщения: 1287

СообщениеВс, 19-Окт-2003 12:13    Заголовок сообщения: Загруженность процессора
Цитата

Как узнать (программно :)) загруженность процессора?
В начало
Посмотреть профиль Отправить личное сообщение
DrPass
Знающий :)
/Почетный Модератор/


Возраст: 31
Знак зодиака: Лев
Зарегистрирован: 02.05.2002
Сообщения: 5709
Откуда: Донецк
СообщениеВс, 19-Окт-2003 15:49 
Цитата

Задачка нетривиальная. Кое-что винда постоянно отмечает в HKEY_DYN_DATA (или как там этот раздел называется) - но это лажа, и применять ее нужно в Win9x, где других способов просто нет.
Есть такая недокументированная функция - NtQuerySystemInformation. С ее помощью можно получить для каждого процесса отработанное им время (и, собственно, список процессов тоже). Делаем там: замеряем время работы каждого процесса, суммируем. Через небольшой промежуток времени снова замеряем и суммируем. Вычитаем первую сумму из второй - получаем число миллисекунд процессорного времени, которое пожрали процессы (каламбурчик-с) за этот промежуток. Делим на длину промежутка - получаем загрузку в процентах.

_________________
Да пребудет с вами Сила!
В начало
Посмотреть профиль Отправить личное сообщение
Пол:Муж 13-ый
Администратор


Возраст: 36
Знак зодиака: Близнецы
Зарегистрирован: 28.04.2002
Сообщения: 3551
Откуда: Москва
СообщениеВс, 19-Окт-2003 16:16 
Цитата

to DrPass

написал бы примерчик с комментариями - получилась бы целая статья - стал бы... да и вообще - тебе уже пора книгу писать и издавать - премудрости программирования на дельфи :)
Имхо - прибыльное дело. Запиши меня на 2ый экз (1-ый автору) с автографом :)

_________________


http://fotki.yandex.ru/users/vladimir13

С уважением, 13-ый Wink
В начало
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
DrPass
Знающий :)
/Почетный Модератор/


Возраст: 31
Знак зодиака: Лев
Зарегистрирован: 02.05.2002
Сообщения: 5709
Откуда: Донецк
СообщениеПн, 20-Окт-2003 1:29 
Цитата

Ну вот такую фишку я набросал на скорую руку. Даже не пришлось использовать список процессов (его я для красоты оставил)
:)
Вернее, я сначала считал по времени процессов, но почему-то тогда на пару-тройку процентов возникало несоответствие с показаниями оригинального Task Manager. Ну а так, как сейчас - все тип-топ

_________________
Да пребудет с вами Сила!
В начало
Посмотреть профиль Отправить личное сообщение
DrPass
Знающий :)
/Почетный Модератор/


Возраст: 31
Знак зодиака: Лев
Зарегистрирован: 02.05.2002
Сообщения: 5709
Откуда: Донецк
СообщениеПн, 20-Окт-2003 1:30 
Цитата

P.S. Ну а статью могет быть и напишу - времени-то сейчас имеется :)
_________________
Да пребудет с вами Сила!
В начало
Посмотреть профиль Отправить личное сообщение
Пол:Муж Ugrum
Бичара Сахалинский


Возраст: 49
Знак зодиака: Лев
Зарегистрирован: 15.07.2002
Сообщения: 872
Откуда: Холмск
СообщениеПн, 20-Окт-2003 2:16 
Цитата

А аткудава время вдруг появилось?
_________________
ЛЕНЬ - двигатель прогресу !
В начало
Посмотреть профиль Отправить личное сообщение Отправить e-mail
DrPass
Знающий :)
/Почетный Модератор/


Возраст: 31
Знак зодиака: Лев
Зарегистрирован: 02.05.2002
Сообщения: 5709
Откуда: Донецк
СообщениеПн, 20-Окт-2003 11:28 
Цитата

Дык отпуск :)
_________________
Да пребудет с вами Сила!
В начало
Посмотреть профиль Отправить личное сообщение
Пол:Муж 13-ый
Администратор


Возраст: 36
Знак зодиака: Близнецы
Зарегистрирован: 28.04.2002
Сообщения: 3551
Откуда: Москва
СообщениеПн, 20-Окт-2003 13:16 
Цитата

чет у меня глючит....

win2000 sp4

exe оригинальный...

зы: эт может у меня система глючит - 2й день не могу поставить ms sql server 2000 - в конце инсталяции грит что dll кернел32 ... произвела недопустимое перемещение в памяти Shocked

_________________


http://fotki.yandex.ru/users/vladimir13

С уважением, 13-ый Wink
В начало
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
DrPass
Знающий :)
/Почетный Модератор/


Возраст: 31
Знак зодиака: Лев
Зарегистрирован: 02.05.2002
Сообщения: 5709
Откуда: Донецк
СообщениеПн, 20-Окт-2003 19:11 
Цитата

А, это просто у кое-кого дохрена процессов и их потоков. Увеличь размер выделяемого буфера, тогда все будет нормально
_________________
Да пребудет с вами Сила!
В начало
Посмотреть профиль Отправить личное сообщение
DrPass
Знающий :)
/Почетный Модератор/


Возраст: 31
Знак зодиака: Лев
Зарегистрирован: 02.05.2002
Сообщения: 5709
Откуда: Донецк
СообщениеПн, 20-Окт-2003 19:14 
Цитата

P.S. Только MS SQL там еще не хватало... :)
_________________
Да пребудет с вами Сила!
В начало
Посмотреть профиль Отправить личное сообщение
Пол:Муж 13-ый
Администратор


Возраст: 36
Знак зодиака: Близнецы
Зарегистрирован: 28.04.2002
Сообщения: 3551
Откуда: Москва
СообщениеВт, 21-Окт-2003 19:40 
Цитата

а ms sql я уже поставил :)
_________________


http://fotki.yandex.ru/users/vladimir13

С уважением, 13-ый Wink
В начало
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Страница 1 из 1
Перейти:  
Новая тема  Ответить  Печать

Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете присоединять файлы в этом форуме
Вы можете скачивать файлы в этом форуме
хостинг от .masterhost 
Rambler's Top100