1.系统服务函数为应用程序提供了访问计算机资源以及底层操作系统特性的手段,比如访问内存、文件系统、设备、进程和线程。应用程序使用系统服务函数来管理和监视它所需要的资源。例如,应用程序可使用内存管理函数来分配和释放内存,使用进程管理和同步函数来启动和调整多个应用程序或在一个应用程序中运行的多个线程的操作。
  2. 系统服务函数提供了访问文件、目录以及输入输出(I/O)设备的手段。应用程序使用文件I/O函数可以访问保存在指定计算机以及网络计算机上的磁盘和其他存储设备上的文件和目录。这些函数支持各种文件系统,从FAT文件系统,CD-ROM文件系统(CDFS),到NTFS。
    3.系统访问函数为应用程序提供了一些可以与其他应用程序共享代码或信息的方法。例如,可以将一些有用的过程放到DLL中,使它们对所有的应用程序都可用。应用程序只需使用DLL函数将动态链接库加载进来并获取各过程的地址,就可以使用这些过程了。通讯函数用于向通讯端口写入数据及从通讯端口读出数据,并控制这些端口的操作方式。有几种内部通讯(IPC)的方法,比如DDE、管道(Pipe)、邮槽(Mailslot)和文件映射。对于提供安全属性的操作系统来说,应用程序可使用安全函数来访问安全数据,并保护这些数据不会被有意或无意地访问或破坏。
    使用系统服务函数可以访问有关系统和其他应用程序的信息。应用程序可用系统信息函数来确定计算机的特别属性,比如是否出现鼠标、显示屏幕上的元素具有多大尺寸。注册和初始化函数用于将应用程序的特殊信息保存到系统文件中,以便于该应用程序的新实例对象,甚至其他应用程序都可以获取和使用这些信息。
    应用程序使用系统服务函数可以处理执行过程中的的一些特殊情况,比如错误处理、事件日志、异常处理。还有一些属性可用于调试和提高性能。例如,使用调试函数可对其他进程的执行过程进行单步控制,而性能监视函数则可对某个进程的执行路径进行跟踪。
    系统服务函数还提供了一些特性,可用于创建其他类型的应用程序,比如控制台应用程序和服务。
    系统服务函数包括以下几类:
    访问控制函数(Access Control)
    Microsoft Windows NT所提供的安全功能对Win32应用程序是自动使用的。在系统中运行的每个应用程序都受由Windows NT的特殊配置所提供的安全功能所影响。Windows NT是支
持Win32安全功能的唯一平台。
    Windows NT的安全功能对大多数Win32函数的影响都是最小的,不需要安全功能的Win32应用程序不必合并任何特殊代码。不过,你可使用Windows NT的安全属性向Win32应用程序提供一些服务。
    访问控制函数提供了一系列控制访问Win32对象(比如文件)、管理函数(比如设置系统时间或审核运行动作的函数)的Windows NT安全模型。
    原子函数(Atom)
    原子表格是一个系统定义的表格,用于保存字符串和相应的标识符。应用程序将一个字符串放到原子表格中,并接受一个16位的整数(称为一个原于),用于访问该字符串。放到原子表格中的字符串被称为原子名字。
    原子函数提供了一系列对原子进行添加、删除、初始化等的操作。
    客户服务器访问控制函数(Client/Server Access Control)
    客户/服务器访问控制函数包括三类:
        用于模拟客户机。
        用于检查和设置私有对象上的安全描述符。
        用于生成安全时间日志中的审核消息。
    剪贴板函数(Clipboard)
    剪贴板是由一系列函数和消息组成,Win32应用程序可使用它来传输数据。由于所有的应用程序都可以访问剪贴板,所以数据可以很容易地在应用程序之间或一个应用程序内部进行传输。
    通讯函数(Communication)
    通讯资源是一个物理或逻辑设备,用于提供双向的异步数据流。例如,串行端口、并行端口、传真机以及调制解调器都是通讯资源。对于每个通讯资源都有一个服务供应程序(包含一个库或驱动程序),使应用程序可以访问该资源。通讯函数是通讯设备所使用的函数。
    控制台函数(Console)
    Microsoft Windows和Windows NT提供了控制台函数,用于管理字符模式的应用程序(这种应用程序未提供自己的图形用户界面)的输入和输出(I/O)
    数据解压库函数(Data Decompression Library)
    数据解压库函数在LZEXPAND.DLL中声明,用于对压缩的文件进行解压。
    调试函数(Debugging)
    调试器是一个应用程序,开发人员可使用它来检查和改正编程错误。Win32 API的调试函数为用户提供了一系列的调试手段。
关机程序代码  设备输入和输出函数(Device Input and OutPut)
    Win32应用程序使用设备输入和输出控制与设备驱动程序进行通讯。被访问的设备由设备句柄标识;而设备驱动程序要完成的动作则由控制代码来指定。
    动态数据交换函数(Dynamic Data Exchange)
    Win32 API为不能使用“动态数据交换管理库(DDEML)”的应用程序提供了一系列实现动态数据交换的函数。
    动态数据交换管理函数(Dynamic Data Exchange Management)
    动态数据交换(DDE)是一种内部通讯方式,即使用共享内存在应用程序之间交换数据。应用程序可以使用DDE进行一次性的数据传输,以及数据的即时交换和更新。
    动态数据交换管理函数为用户提供了一系列管理动态数据交换的手段。
    动态链接库函数(Dynamic-Link Library)
    动态连接库(DLL)是由函数和数据组成的一些模块。一个DLL是由它的调用模块(.EXE或.DLL)在运行时加载的。当一个DLL被加载后,它就被映射到其调用进程的地址空间中。
    DLL可以定义两种函数:外部的和内部的。外部函数可以被其他模块调用,内部函数只能在声明它的OLL内部被调用。尽管DLL可以输出数据,但它的数据通常只能由它的函数使用。
    DLL提供了一种使应用程序模块化的方法,这样就可以更容易地更新和重用程序的功能。DLL也有助于在几个应用程序同时使用相同的功能时减少内存开销,因为虽然每个应用程序都拥有一份数据的备份,但它们可以共享代码。
    错误函数(Error)
    写得好的应用程序应包括一些能够处理意外错误并可从错误中顺利恢复的代码。当发生错误时,应用程序可能需要用户进行干预,或自己恢复。在一些极端情况下,应用程序对能会将用户从系统中退出或关机。错误函数为用户痰腛LL内部被调用。尽管DLL可以输出数据,但它的数据通常只能由它的函数使用。
    DLL提供了一种使应用程序模块化的方法,这样就可以更容易地更新和重用程序的功能。DLL也有助于在几个应用程序同时使用相同的功能时减少内存开销,因为虽然每个应用程序都拥有一份数据的备份,但它们可以共享代码。
    错误函数(Error)
    写得好的应用程序应包括一些能够处理意外错误并可从错误中顺利恢复的代码。当发生错
误时,应用程序可能需要用户进行干预,或自己恢复。在一些极端情况下,应用程序对能会将用户从系统中退出或关机。错误函数为用户提供了一些进行错误处理的方法。
    事件日志函数(Event Logging)
    很多应用程序都在不同的属性错误日志中记录错误和事件。这些属性错误日志具有不同的格式,并显示不同的用户界面,而且无法将数据合并起来得到一个完整的报告。因此,用户必须要检查各种数据来诊断问题。Windows NT的事件日志为应用程序(和操作系统)提供了一种标准、集中的方法,来记录重要的软件和硬件事件。事件日志服务将事件从不同的地方保存到一个称为“事件日志”的集合中。Windows NT还提供了一个事件浏览器和编程接口,用于查看日志和检查日志。事件日志函数提供了一系列编写和检查事件日志的方法。
    文件函数(File)
    文件是计算机存储信息的基本单位,不同的信息可分别存放在不同的文件中。应用程序可使用文件函数对文件进行输入和输出(I/O)操作。
    文件安装库函数(File Installation Library)
    Win32 API包含一个文件安装库,应用程序使用它可以更容易地安装文件,使安装程序能分析当前已安装的文件。
    文件映射函数(File Mapping)
    文件映射函数用于对文件映射对象进行操作。
    文件系统函数(File System)
    Win32应用程序依赖文件系统来保存和获取存储设备上的信息。文件系统提供了应用程序在与存储设备相关的个别卷上创建和访问文件及目录时所需的底层支持。
    每个文件系统都由一个或多个驱动程序和所支持的动态链接库(定义文件系统的数据格式和特性)组成。它们确定了文件名的约定、安全性及可恢复性的级别,以及输入输出(I/O)操作的一般性能。文件系统函数用于对文件系统进行操作。
    句柄和对象函数(Handle and Object)
    对象是一个表示系统资源的数据结构,比如表示一个文件、线程或图像。应用程序不能直
接访问对象所表示的对象数据或系统资源,而是必须使用对象句柄。对象句柄可用于检查和修改系统资源。每个句柄在一个内部维护的表中都有一项。在这些项中包含资源的地址以及标识资源类型的方法。句柄和对象函数用于对句柄和对象进行操作。
    Hook函数
    Hook是系统消息处理机制中的一部分。在系统消息处理机制中,应用程序可安装一个子程序来监视系统中的消息传送情况,并可处理某些类型的消息(在这些消息到达目的窗口过程之前)。Hook函数用于对Hook进行操作。
    lmageHlp函数
    lmageHlp函数由IMAGEHLP DLL提供。lmageHlp函数可用于PE格式的图像。PE图像由一个兼容的Win32连接程序提供,比如由Microsoft Developer Studio提供。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。