windows系统调用函数的简单介绍

windows 操作系统 下编程 有“系统调用”函数吗?win32下也有系统调用啊,一般称之为API函数,API是Application Programming Interface,应用程序编程接口的简写,是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节 。
系统调用和库函数及API的区别一.windows规定一切的应用程序优先级为3,而windows自己的为0 , (0最高 , 3最低) 。
windows不允许应用程序直接访问硬件,但会提供api函数让用户间接地访问 , 这样就会调用系统级api 。平时出现的“........非法操作”就是因为应用程序非法访问硬件造成的 。
api
一般分为两种
1.用户级api
有的也成为应用级api 。替用户写好的函数,方便调用,使用户可以将焦点放在设计程序逻辑上面,而不必再编写繁琐、重复的程序 。这些优秀可视化编程环境操作简单、界面友好(诸如vb、vc、delphi等),在这些工具中提供了大量的类库和各种控件,它们替代了api的神秘功能,事实上这些类库和控件都是构架在win32
api函数基础之上的,是封装了的api函数的集合 。它们把常用的api函数的组合在一起成为一个控件或类库,并赋予其方便的使用方法 , 所以极大的加速了windows应用程序开发的过程 。有了这些控件和类库 , 程序员便可以把主要精力放在程序整体功能的设计上,而不必过于关注技术细节 。
2.系统级api
想要和系统硬件交互,必须调用此类函数
二.dos系统中规定系统和应用程序的优先级一样,所以dos允许用户为所欲为 。引导型病毒就是这个性质
api与系统调用的区别:
程序员调用的是api(api函数),然后通过与系统调用共同完成函数的功能 。
因此 , api是一个提供给应用程序的接口,一组函数 , 是与程序员进行直接交互的 。
系统调用则不与程序员进行交互的,它根据api函数,通过一个软中断机制向内核提交请求 , 以获取内核服务的接口 。
并不是所有的api函数都一一对应一个系统调用,有时 , 一个api函数会需要几个系统调用来共同完成函数的功能,甚至还有一些api函数不需要调用相应的系统调用(因此它所完成的不是内核提供的服务) 。
系统回调就是由系统执行回调函数,这个回调函数可以是用户编写的,但是必须是由系统调用
Windows系统调用的A函数和W函数的关系未必一定要直接调用CreateProcessW啊,比如CreateProcessA调用了CreateProcessInternalA,然后CreateProcessInternalA调用了Basep8BitStringToDynamicUnicodeString,再然后调用CreateProcessInternalW.
而CreateProcessW是直接调用CreateProcessInternalW而已.
【windows系统调用函数的简单介绍】windows系统调用函数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、windows系统调用函数的信息别忘了在本站进行查找喔 。

    推荐阅读