jdjsxf 发表于 2009-10-27 11:36:35

请问uCOS中hook的功能是什么,什么时候会用到

如何理解与hook相关的函数。
谢谢!

ceeback 发表于 2009-10-27 12:31:10

hook是使用者自定义供操作系统回调的函数,其作用由开发者的代码定义的

380121850 发表于 2009-10-27 14:27:32

好像作者说这个是给开发者用的,可以在进而加上自己的代码

qzf368 发表于 2009-11-5 23:52:27

就是操作系统会用到这些函数 用户可以利用这个特点实现自己需要的功能

lanselian 发表于 2009-11-7 11:15:14

用户编写自己的代码
可以实现特殊功能应用

zhanglf08 发表于 2009-11-12 09:29:17

就是系统函数内部引用的一个函数,这个函数可以由用户编写,这样,就可以在不修改系统函数的情况下,对该系统函数的功能进行特殊处理

比如

系统API函数
API(……)
{
……
API_Hook(……)
……
}

钩子函数
API_Hook(……)
{
//用户在此处添加自己的代码
}

uC/OS是开源的,内核都给你源代码,所以,对新手来说,在代码量很小的uC/OS上,感觉不到修改API_Hook()跟直接在API()中修改有什么太大区别。
实际上,这两个函数是放在两个文件里面的,Hook函数有自己专用的文件,移植的时候,你只要实现这个文件里面的Hook函数就行了,而包含API的文件你是不需要关心的。工程越复杂,这种钩子函数的优越性就越明显

在不开源的情况下,系统部分是被编译成目标文件的,比如.o文件,这时候就不能再直接改源代码了,而通过Hook函数是可以的
页: [1]
查看完整版本: 请问uCOS中hook的功能是什么,什么时候会用到