|
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
|
|
Монитор Ресурсов26.02.2019, 18:03. Показов 7502. Ответов 58
Метки нет (Все метки)
Всем привет!
Будучи счастливым обладателем небольшого сервера задался вопросом, а что же грузит сервер ночью . Вашему вниманию программа монитор ресурсов: Изначально ReS_MoN задумывалась как программа, которая будет информировать о процессах, которые избыточно потребляют ресурсы на сервере. С возможностью отправки уведомлений на различные сервисы.Возможности: 1. Отправка отчетов на почту при превышения порогов потребления ресурсов; 2. Отправка отчетов на FTP при превышения порогов потребления ресурсов;; 3. Куча всего другого; 3. Поддержка оси Win 7/8/8.1/10 (для трех последних нужна права админа); 4. Авто обновление, отправка статистики на почту (FTP); 5. Логи, Ини и тд. Проект не закончен. Руки не доходят дописать для MEM и HDD. Если кто то желаем помочь, пожалуйста исходники в комплекте..На сегодня работает довольно таки стабильно. Отдельная благодарность за помощь Dragokas
0
|
|
| 26.02.2019, 18:03 | |
|
Ответы с готовыми решениями:
58
Графический монитор ресурсов поделитесь мыслями (монитор ресурсов) Поделитесь мыслями (монитор ресурсов) |
|
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
|
|
| 06.02.2020, 06:23 [ТС] | |
|
0
|
|
| 10.02.2020, 08:18 | |
|
Не по теме: The trick, Вы профессиональный программист или любитель?
0
|
|
|
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
|
|
| 11.02.2020, 17:05 [ТС] | |
|
0
|
|
| 12.02.2020, 08:34 | |
|
0
|
|
|
|
|
| 15.02.2020, 02:13 | |
Сообщение было отмечено kreotodr как решение
Решение
Если что, здесь пример чтения памяти 64-битных процессов: https://github.com/dragokas/hi... .bas#L1419
1
|
|
|
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
|
||
| 15.02.2020, 08:17 [ТС] | ||
|
Если не трудно выложи проект сюда... И второй вопрос, подобное решение с загрузкой CPU процессами для 64битных систем у Вас есть?
0
|
||
|
|
|
| 15.02.2020, 10:15 | |
|
Проект открыт и доступен для скачивания без регистрации, зеленая кнопка Download: https://github.com/dragokas/hijackthis
Для расчета нагрузки на CPU, если список процессов составлять функцией NtQuerySystemInformation с параметром SystemProcessInformation (есть в проекте выше), то нету необходимости открывать процесс, просто читайте поля SYSTEM_PROCESS_INFORMATION -> UserTime и KernelTime и вычисляйте по этой формуле: GetCPUUsage.
0
|
|
|
Модератор
|
||
| 15.02.2020, 12:54 | ||
|
В своем коде я решил не изменять принцип работы - я также получаю через счетчики как это делает GetProcessMemoryInfo через NtQueryInformationProcess c параметром ProcessVmCounters только для 64 битного режима вызывается 64-битная функция NtQueryInformationProcess посредством переключения в 64 битный режим из VB кода. Эта функция совместима с 64-битными приложениями поскольку мы не имеем прослойки WoW64. Я добавил удобный модуль для работы с 64-битной ntdll. Можно вызывать большинство функций из нее посредством функции CallX64. Стоит отметить что все указатели в 64 битном режиме 64 битные, поэтому их стоит передавать как Currency если кто-то захочет работать с другими 64-битными приложениями через нее. Если работа идет с 32-битными то можно передавать обычные указатели, т.к. они автоматически расширяются до 64-бит с занулением старшей части. GetModuleHandle64 позволяет получить хендл 64 битной библиотеки в текущем процессе по имени. GetProcAddress64 позволяет получить адрес функций из 64-битной DLL в текущем процессе (функционал неполный т.к. она не поддерживает редиректы, но я не могу представить ситуацию когда это может пригодится в таком режиме работы). Я не проверял, но я думаю можно даже загрузить внешние 64 битные DLL в текущий процесс, но они должны обращаться только к Native API. Код обновил в блоге. Там добавил еще сортировку.
0
|
||
| 15.02.2020, 14:01 | |
|
0
|
|
|
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
|
|
| 15.02.2020, 19:19 [ТС] | |
|
0
|
|
|
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
|
|
| 15.02.2020, 19:25 [ТС] | |
|
Пробовал на Win 2012 Server R2 все ок.
Под Win 10 пробовал запускать со среды/компиляция в P-Code. Увы пустые поля.
0
|
|
|
63 / 48 / 12
Регистрация: 28.12.2014
Сообщений: 273
|
|
| 16.02.2020, 04:48 | |
|
0
|
|
|
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
|
|
| 16.02.2020, 05:31 [ТС] | |
|
0
|
|
|
Модератор
|
|
| 16.02.2020, 12:10 | |
Сообщение было отмечено kreotodr как решение
Решение
Посмотрел. Причина была в WOW64 слое который в Win10 рассматривает хендлы как беззнаковые при конвертации из 32 в 64 бит. Поэтому команды NtWow64ReadVirtualMemory выдавали ошибку т.к. -1 преобразовывался в 4294967295 вместо -1. Win7:
Win10: Проект выложил не гитхабе для удобного обновления.
3
|
|
|
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
|
|
| 16.02.2020, 14:30 [ТС] | |
|
спасибо
0
|
|
|
63 / 48 / 12
Регистрация: 28.12.2014
Сообщений: 273
|
|
| 19.02.2020, 16:38 | |
|
The trick,
NtWow64QueryInformationProcess64, NtWow64ReadVirtualMemory – недокументированные функции, т.е. описания нет? NtWow64QueryInformationProcess64 при хэндле процесса = -1 возвращает указатель на PEB64 копии процесса в 64-битном режиме? Для копии загружаются 64-битные экземпляры dll оригинального проекта? Указатель, полученный из 64-битной копии процесса имеет значение в пределах wow? Или wow распознает адресное пространство, к которому принадлежит указатель?
0
|
|
|
Модератор
|
||||
| 19.02.2020, 22:57 | ||||
|
1
|
||||
| 19.02.2020, 22:57 | |
|
Монитор ресурсов показывает 100% максимальной частоты ЦП. Показывает ли Монитор ресурсов адекватное распределение памяти и загрузку ЦП Какой код нужен что-бы открыть монитор ресурсов в .bat файле Монитор ресурсов resmon.exe показывает малое, но бесконечное использование System жёсткого диска При включении ноутбука гаснет монитор. Но работает монитор в безопасном режиме Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . .
Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
|
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг.
Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует.
В процессе разработки. . .
|
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
|
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации:
1. Вернуть возможность использования знаков | 1 l I;. . .
|
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|