概念问题(native api,服务函数,驱动里使用的函数)

果果女   2009-9-1 15:44 楼主
rt,是什么区别?

回复评论 (10)

native api 被win32 api调用,之后通过软件中断从应用层进入到内核。我的理解是就像一扇进入内核的门,据说出现的目的是为了保持win32 api 的接口稳定。
服务函数:被native api在内核调用,与native api有相同的名字,属于内核层。
驱动里使用的函数:不懂楼主是要问什么,如果是指的内核api的话,我的理解就是类似win32 api在内核层开放给编程人员的操作系统接口。
点赞  2009-9-1 16:27
引用: 引用 1 楼 wangbinds 的回复:
native api 被win32 api调用,之后通过软件中断从应用层进入到内核。我的理解是就像一扇进入内核的门,据说出现的目的是为了保持win32 api 的接口稳定。
服务函数:被native api在内核调用,与native api有相同的名字,属于内核层。
驱动里使用的函数:不懂楼主是要问什么,如果是指的内核api的话,我的理解就是类似win32 api在内核层开放给编程人员的操作系统接口。

前面和我目前认知是相同的。
最后一点补充就是:内核函数(内核api?)和服务函数有什么关系。
点赞  2009-9-1 16:39
不是很清楚,暂时理解为:服务函数会调用内核函数实现。比如win32 api中的CreateFile ->ntCreateFile(native api) -> ntCreateFile(服务函数) ->ZwCreateFile(内核api).
点赞  2009-9-2 10:14
引用: 引用 3 楼 wangbinds 的回复:
不是很清楚,暂时理解为:服务函数会调用内核函数实现。比如win32 api中的CreateFile ->ntCreateFile(native api) -> ntCreateFile(服务函数) ->ZwCreateFile(内核api).


后面两个应该是ZwCreateFile->NtCreateFile,反汇编一下就知道。
点赞  2009-9-2 11:42
引用: 引用 4 楼 jingzhongrong 的回复:
引用 3 楼 wangbinds 的回复:
不是很清楚,暂时理解为:服务函数会调用内核函数实现。比如win32 api中的CreateFile ->ntCreateFile(native api) -> ntCreateFile(服务函数) ->ZwCreateFile(内核api).


后面两个应该是ZwCreateFile->NtCreateFile,反汇编一下就知道。

你意思是 NtCreateFile是内核api?
点赞  2009-9-2 11:47
汗!
楼主怎么会这么问?
NtCreateFile有两个,一个被win32 api调用,叫native api。
另一个,按四楼意思是在内核层,被native api中的NtCreateFile调用或者内核 api中的ZwCreateFile调用。叫做服务函数。
ZwCreateFile是内核api。
是不是我表达不清楚?如果是认为我说错了也请指出,我也是刚学,一起进步。
点赞  2009-9-3 10:21
引用: 引用 6 楼 wangbinds 的回复:
汗!
楼主怎么会这么问?
NtCreateFile有两个,一个被win32 api调用,叫native api。
另一个,按四楼意思是在内核层,被native api中的NtCreateFile调用或者内核 api中的ZwCreateFile调用。叫做服务函数。
ZwCreateFile是内核api。
是不是我表达不清楚?如果是认为我说错了也请指出,我也是刚学,一起进步。

你是说服务函数也是被内核函数调用的?
点赞  2009-9-3 12:44
好像是吧,不太清楚。
点赞  2009-9-4 10:11
Mark
点赞  2009-11-18 22:27
native api 没有相应的文档可以查询,但为整体框架的一部分,我们编写驱动的人应该了解WIN32API调用呢底层的Native api , native api是从用户模式进入内核模式的大门,他通过软件中断方式进入到内核模式,并调用内核的系统;
微软不鼓励程序员直接使用native api,而是鼓励程序员使用固定那个的接口WIN32 API,。这个是因为native api在各个版本的windows'中会有所不同,然而从效率考虑,程序员可以根据自己的需要,在必要的时候直接调用NATIVE API
点赞  2010-2-15 14:27
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复