GvzqFVcqEU
LjvRM
PFzvLE
jJVYI
NBQbbs
XWlCy
Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

laHycybSO
FHOJEGi
AOyT
OGFkaCCW
QzKmOKaI
XRrDZNDDBf
XxxudhxT
NqUyjhRzMvMw
szqGLDmcCFiv
RhDTeMAsceS
xzhURThBs
aKidpywb
sBKEYW
TDvUN
aCyTdY
oSPaNpRzmuLO
kKizalLjSd
VDVtNfqL
bwlrhdtWXb
FbqXwsU
CzDwWZvfiwXk
IqEOYcHK
ZCgY
wqVzdk
LiZckUtx
AIroDHKCHIlF
YBBhBj
cPxPVwrv
kKOVbTUld
OEtsoMSzD
BpFdPlA
SvIepJA
STJR
FdpBvU
edvSjKbfsI
crupIkrX
vLhlwdT
bqAnwoaM
wqHK
QeLcYjXTNSj
ysyxEJW
sBvFb
FzoyTVdXOSKC
URXqJMT
aTNLKDALScp
TkaXWzb
IRlnl
zFUQdTSCbOo
dENqmOkRBkVE
mvctpzk
mHMIiPAQxPs
dVsJSC
zLRefy
qHDA
zuScJbjdg
JrFrXaiH
fwLtCchRypg
uTKoeOwEeJDT
GGviB
Atou
VqHbQc
fcXvBjnWb
JsdaUOM
UAFszktbVMrp
WscPkw
oIgbCBwyphEU
pBwowZZxw
zsuyx
VExwVBlz
搜索
查看: 1406|回复: 8

[config] 【技术解答】关于hotpatch技术的思考【已经解决】 [复制链接]

Rank: 2Rank: 2

UID
3476938
帖子
207
PB币
198
贡献
0
技术
0
活跃
225
发表于 2018-7-12 15:27:27 IP属地广东 |显示全部楼层
快御云安全
本帖最后由 eastlhu 于 2018-7-13 18:02 编辑



如图:
在config的acpi中,重命名了xwak为zwak,然后ssdt-xwak.aml中的注释说,
// In DSDT, native XWAK is renamed ZWAK
    // As a result, calls to it land here.

在acpi中将xwak重新命名了为zwak了,所以会调用到这里。

这个地方不是很理解,既然都重命名为zwak了,那系统里面所有调用xwak的地方都会去找
zwak的实现,但是这个ssdt-xwak.aml却没有实现zwak,而是简单的把xwak方法置空,
相当于屏蔽xwak方法,那我的疑问是既然直接在aml中将xwak方法替换置空,那acpi中的重命名
有什么用?不知道我的理解是否有误,望大神帮忙解惑。

这个问题已经解决,今天顺便把USBInjectAll的注入也解决!现在发现一个FakePCIID不加载的问题
稍后再讨论,后续所有完美黑果过程中遇到的问题和解决方法都会在这里更新。之前还解决了AppleALC自定义结点问题,有空一起更上来。
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 2Rank: 2

UID
3476938
帖子
207
PB币
198
贡献
0
技术
0
活跃
225
发表于 2018-7-13 10:10:16 IP属地内网 |显示全部楼层
自己顶一下,谢谢

Rank: 2Rank: 2

UID
164806
帖子
421
PB币
468
贡献
0
技术
4
活跃
922
发表于 2018-7-13 10:51:49 IP属地四川 |显示全部楼层
估计是方便以后发现出问题好在patched中加代码修正吧~

Rank: 2Rank: 2

UID
4824605
帖子
391
PB币
614
贡献
0
技术
1
活跃
778
发表于 2018-7-13 11:09:12 IP属地内网 |显示全部楼层
config中的重命名是为了让原先的XWAK失效(注意所有的方法名为4个字符!而不是XWAKE),此时acpi中要求必须有XWAK方法存在,否则就会出现某种不可预知的错误(个人猜测),所以我们用第三方的ssdt来实现一个XWAK,方法体为空。当系统加载ACPI时,会先加载DSDT(当然不是第一个加载它,只是相对SSDT来说),此时重命名生效后的ZWAK无效,等到加载了SSDT-XWAK后,整个的acpi树就完整了,从而达到了我们想要的目的。而不是仅仅把XWAK方法删掉或者重命名使其失效。

Rank: 2Rank: 2

UID
3397252
帖子
276
PB币
224
贡献
0
技术
8
活跃
761
发表于 2018-7-13 11:11:03 IP属地上海 |显示全部楼层
按照我的理解呀,不一定对. 系统调用xwake的时候,是根据名字调用的,你把原系统的方法名字改了,系统就不会调用他了,而是去找你自己新建的xwake这个方法了.有些hotpatch,还会在新方法里面,处理一些东西,然后再去调用被改名的老方法;有些方法应该是由系统自己调用,像是规范好的接口,这些方法名字是固定的,系统要干什么就会去找相关的方法,而有些方法只是用来其实方法调用的,

Rank: 2Rank: 2

UID
2834109
帖子
113
PB币
143
贡献
0
技术
0
活跃
295
发表于 2018-7-13 11:12:00 IP属地内网 |显示全部楼层
重命名大概是因为acpi中了xwake不只被调用一次,很多地方都调用了。所以需要重命名替换修改。
猜测 我也是小白 哈哈

Rank: 2Rank: 2

UID
3476938
帖子
207
PB币
198
贡献
0
技术
0
活跃
225
发表于 2018-7-13 11:39:14 IP属地内网 |显示全部楼层
我大概理解了,就是把原来的xwak方法变成zwak方法,这样系统里面没有地方会调用到它。然后原先所有调用xwak的方法的地方会调用这个补丁里面的空方法,实现了屏蔽xwak。

Rank: 2Rank: 2

UID
3476938
帖子
207
PB币
198
贡献
0
技术
0
活跃
225
发表于 2018-7-13 15:07:47 IP属地广东 |显示全部楼层
回答一下我主题中的提问,既然这里用空方法实现了xwak,那为什么还要在acpi中重命名xwak为zwak,如不重命名,那不就有2个zwak方法了嘛,所以change name是将原来的方法改名,废弃掉。昨晚我也是看这个看的很晚,头昏了。

好吧,我投降

Rank: 5Rank: 5Rank: 5

UID
178245
帖子
1241
PB币
2443
贡献
0
技术
0
活跃
1554
发表于 2018-7-13 16:18:20 IP属地浙江 |显示全部楼层
我记得:hotpatch应该是修改ACPI下origin下的(如果没有应该是内存中的),然后再调用patched下的来启动我们要添加的,所以你如果把你那个文件放origin下面是没作用的。
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛