欢迎来到天天文库
浏览记录
ID:34498245
大小:108.93 KB
页数:25页
时间:2019-03-07
《详细叙述posix标准》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、POSIX标准总体分析POSIX,全称为可移植性操作系统接口,是一种关于信息技术的IEEE标准。它包括了系统应用程序接口(简称API),以及实时扩展[C语言]。该标准的目的是定义了标准的基于UNIX操作系统的系统接口和环境来支持源代码级的可移植性。现在,标准主要提供了依赖C语言的一系列标准服务,再将来的版本中,标准将致力于提供基于不同语言的规范。该标准对核心需求部分定义了一系列任何编程语言都通用的服务,这一部分服务主要从其功能需求方面阐述,而非定义依赖于编程语言的接口。语言规范主要有两部分组成。一部分包括了访问核心服务的编程语言的标准接口,这些核心服务为标准中基于编程语言的核心需求部
2、分所定义;另一部分包含了一个特殊语言服务的标准接口。基于任何语言,与该标准一致的执行都必须遵循语言规范的任何章节。该标准一共被分为四个部分:(1)陈述的范围和一系列标准参考(第一章);(2)定义和总概念;(第二章)(3)各种接口设备;(第三章到第九章,第十一章到第十五章)(4)数据交换格式;(第十章)该标准的主要目的有:(1)面向应用(2)定义接口,而不是它的具体实现;(3)涉及资源和可移植性,而非对象;(4)基于c语言;(5)无超级用户,无系统管理;(6)最小限度的接口,最小限度的定义;(7)应用领域广泛;(8)对以前的实现进行最小限度改变;(9)对原有程序代码做最小的修改;(10
3、)实时扩展;以下就对各个章节做简要分析。第一章概述1.1范围定义范围的关键要素有:(1)定义足够的一套功能适用于实时应用程序领域的重要部分;(2)定义足够的实现规范和性能相关的函数,以便允许实时应用程序完成系统的确定性的响应;1.2一致性系统须支持标准中定义的接口,系统能够提供标准中没有要求到的函数和工具。在遵循于该标准的实现中,一种一致性文档是需要用到的,它必须具有与该标准相同的结构,包含有全名,数字,和标准所指示的日期,以及头文件和中的界限值等等。该一致性文档详细说明了标准中定义的执行行为。该标准要求了应用程序的一致性,所有遵循标准的应用程
4、序都使用基于c语言的服务。第二章术语和基本需求2.1定义(1)术语该标准中定义了一系列术语,如一致性文档,被定义的实现,可能性,无用的特性等,还定义了一些通用名词,如绝对路径,存取模式,地址空间,适当权限,定时器,异步I/O操作,后台进程,后台进程组,块文件,阻塞进程,等等。(2)基本概念扩展安全控制;文件存取允许;文件级别;文件名可移植性;路径名的决定;(3)错误号大部分函数都在外部变量errno中提供了错误号,定义如下:externinterrno;(4)简单系统的数据类型这些数据类型在头文件中定义,它包含了至少以下类型:dev_t:用于设备号;gid_
5、t:用于进程标志符;ino_t:用于文件序列号;inode_t:用于一些文件参数;nlink_t:用于连接内容;off_t:用于文件大小;pid_t:用于进程或进程组标志符;size_t:在c标准(2)中定义;ssize_t:用于返回字节数和错误标志的函数;uid_t:用于用户标志符;(4)环境描述当一个进程开始执行时,将调用一个表示环境的字符串数组,这个数组为外部变量environ所指向,其定义如下:externchar**environ;(5)其他在该章中,标准还总体介绍了c语言定义的一些标志符,数字方面的限制,以及一些符号常量,这些在以后的章节中都会一一出现。以下是OSE服务的
6、简要设计描述的一个清单。这些要求详细叙述在POSIX规范书中。l进程源语进程源语所涉及的函数完成了大多数简单的操作系统服务,如进程处理,进程信号,以及定时器。一般情况下,该标准所确定的进程的所有属性都不能被一个进程源语改变,除非描述符特别指明。l进程环境l目录与文件目录与文件所涉及的函数执行了一系列操作系统服务,例如文件的创建和删除,检测,修改特性。它们提供了主要的方法,进程因为一系列I/O操作使用他们来存取文件和目录。l输入输出原语这些子文件和管道函数处理输入和输出。功能被指定为进行文件描述符管理和I/O活动之间得平衡调节。l设备驱动和分类函数该章节描述了一个基本的终端接口和一些基
7、本的终端控制函数,如果执行时被提供,所有的异步通信端口都应该支持它,接口是支持网络连接还是异步端口或者两者都支持由完成者定义,一致性文档应该描述那些设备类型被这些接口所支持。本章的一些函数主要应用与进程的控制终端l基于c语言得服务l系统数据库l数据交换格式l异步l内存管理l执行调度l时钟和定时器l消息传递第三章进程原语3.1进程的创建和执行1.进程创建函数原型:pid_tfork(void)函数功能:调用时需要引用的头文件是,fo
此文档下载收益归作者所有