首页
社区
课程
招聘
[求助]如何HOOK进程降低cpu占用率?
发表于: 2013-10-16 03:17 24493

[求助]如何HOOK进程降低cpu占用率?

2013-10-16 03:17
24493
最近在学习hook……记得几个月之前看过某个教程,说是在哪加sleep可以降低cpu占用率。现在有用了,,,实在找不到那教程了。也忘记得7788刚好又没做笔记……好纠结。求看雪的大神给个范例,如何hook了进程之后,降低这个进程的cpu占用率。

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (20)
雪    币: 40
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
hook dx的present加sleep?
2013-10-16 08:11
0
雪    币: 89
活跃值: (53)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
是Getmessage那吗?
2013-10-16 11:03
0
雪    币: 81
活跃值: (40)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
HOOK SLEEP 或者 GETTICK 。
2013-10-16 13:21
0
雪    币: 9
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
试过了,一顿一顿的卡,不稳定的。影响游戏性啊
2013-10-16 19:42
0
雪    币: 9
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
hook这两个?什么原理……
2013-10-16 19:48
0
雪    币: 9
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
这个确实可行……我亲测了。听说有另一个方法
2013-10-16 20:39
0
雪    币: 81
活跃值: (40)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
8
降低线程的运行次数
2013-10-17 22:26
0
雪    币: 81
活跃值: (40)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
9
HOOK的时候注意分辨是否主线程 如果让主线程SLEEP了 程序会停顿
2013-10-17 23:25
0
雪    币: 9
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
具体思路是?
2013-10-18 04:35
0
雪    币: 155
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
将程序放入job中(assignprocesstojobobject / setinformationjobobject等),可以精确控制和设定程序所能使用的CPU比率
2013-10-18 18:34
0
雪    币: 228
活跃值: (115)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
12
非常不错的思路
2013-10-19 10:07
0
雪    币: 9
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
感谢分享思路。思路确实非常只好。但是唯一不足是,这方法是直接杀了进程……我只是想限制进程而已。。。
2013-10-21 00:59
0
雪    币: 218
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
我的看法是不要用hook来降低占用率,因为这会导致很多莫名其妙的错误
用进线程优先级
2013-10-21 01:11
0
雪    币: 113
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
优先级无法改变占用率啊

我想楼主的意思是 降低CPU运算量,而不是占用率或优先度
2013-10-21 04:26
0
雪    币: 433
活跃值: (1910)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
16
hook掉画图dll
很多游戏最小化后直接取消画图 不知道你的是怎样的
2013-10-21 04:40
0
雪    币: 155
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
JobObjectCpuRateControlInformation不会杀进程
2013-10-21 16:29
0
雪    币: 239
活跃值: (190)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
18
hook,还会增加cpu占用率吗?
还是软件本身占用率高,你想通过hook来减少占用率?
没搞明白
sleep能降低占用率?真能吗?
那服务器软件,全sleep,将占用率降到最低吧
软件全都sleep吧,cpu不用升级了

我咋从来没有听说过这个事情呢?
2013-10-21 16:33
0
雪    币: 359
活跃值: (41)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
19
这个事情我以前干过,Falcom的游戏它的伪代码流程是这样的:
while (1)
{
	if (PeekMessage(...))
	{
		TranslateMessage(...);
		DispatchMessage(...);
	}
}

结果很多时候Peek不到消息,就在傻傻的死循环,于是OD给它改了下,改成
while (1)
{
	if (PeekMessage(...))
	{
		TranslateMessage(...);
		DispatchMessage(...);
	}
	else
	{
		Sleep(1);
	}
}

不过这方法要根据实际情况对症下药,如果不是这个原因,那就另当别论了
2013-10-23 15:56
0
雪    币: 10
活跃值: (64)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
这思路不错
2013-10-24 02:36
0
雪    币: 257
活跃值: (67)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
21
看到这么多方式,准备试试
2013-10-24 03:10
0
游客
登录 | 注册 方可回帖
返回
//