《Unix环境高级编程》学习之Unix标准
常见的标准共有三个:ISO C、POSIX、SUS。
ISO C:是C语言标准,是开发语言标准,与任何系统均无关。
POSIX:全写是Portable Operating System Interface。是操作系统的接口标准,在后期有包括ISO C这个C语言标准。
SUS:全写是Single Unix Specification。是POSIX.1的超集,定义了一些附加接口,扩展了POSIX.1这个标准。
POSIX.1中包含X/Open系统接口,是可选项。
X/Open系统接口可选项(X/Open System Interface),属于POSIX.1标准的一部分。描述了可选的接口,以及规定了遵循XSI(XSI Confirming)的实现,必须支持的POSIX.1的哪些可选部分。
只有遵循了XSI的实现才可以成为Unix。
Unix商标为Open Group所拥有。
由上标准可以看出:学习编程分为两部分,一个是语言级的编程,一个是系统级的编程。
语言级的编程就是指ISO C的标准。这个标准中的内容没有涉及任何系统相关的东西。只局限于语言层面。
系统级的编程指的就是POSIX中涉及的内容,这个标准主要是以系统级的接口和标准为主的,只是融合了ISO C,将C语言标准融合了进来,成为了系统标准的一部分。
Unix有一个很特殊的地方,这个系统属于一个单独的机构。所以它又有了一个这个机构单独定制的SUS标准。同时它也融合了POSIX标准,所以还好不算太乱。
只是有个XSI这个可选项,让人看着很糊涂。
《Unix环境高级编程》学习之Unix标准相关推荐
- Unix环境高级编程学习笔记(七) 多线程
线程概述 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者.传统的Unix也支持线程的概念,但是在一个进程(process ...
- Unix环境高级编程学习笔记(一)
第二章 文件I/O 1.文件描述符 对于内核而言,所有打开的文件都通过文件描述符引用,文件描述符是一个非负整数. Unix shell使用文件描述符0表示标准输入,1表示标准输出,2表示标准出 ...
- UNIX环境高级编程 学习笔记 第十六章 网络IPC:套接字
socket的设计目标之一:同样的接口既可以用于计算机间通信,也可以用于计算机内通信.socket接口可采用许多不同的网络协议进行通信,本章讨论限制在因特网事实上的通信标准:TCP/IP协议栈. 套接 ...
- 《Unix环境高级编程》chapter02 UNIX标准及实现
chapter02 UNIX标准及实现 限制ISO C ISO C标准的意图是提供C程序的可移植性,ISO C标准现在由ISO/IEC的C程序设计语言国际标准工作组维护和开发. IEEE POSIX ...
- Unix环境高级编程学习笔记(五)
第七章 进程环境 1.main函数:int main(int argc, char *argv[]) 2.进程中止: 正常中止:(1)从main返回;(2)调用exit;(3)调用_exit或_Exi ...
- Unix环境高级编程学习笔记(二)
第四章 文件和目录 本章将描述文件系统特征和文件性质 1.stat.fstat和lstat函数 原型:#include<sys/stat.h> int stat(const char* r ...
- 《UNIX 环境高级编程》学习笔记—— 标准I/O库
UNIX环境高级编程--标准I/O库 流和 FILE 对象 标准输入.标准输出和标准错误 缓冲 打开流 读和写流 每次一行 I/O 二进制 I/O 定位流 格式化 I/O 临时文件 内存流 流和 FI ...
- 《Unix环境高级编程》学习笔记:从点到面
以前在课堂上学习过<Unix初级教程(第四版)>,对于Unix有了一点了解.由于以后使用的需要,要对它进行比较深入的学习,为此需要阅读不少的书籍,这本<Unix环境高级编程>便 ...
- 5w字总结 Unix系统编程学习笔记(面试向)(Unix环境高级编程/Unix环境程序设计)
文章目录 一.计算 C语言的数据表示与处理 计算 C语言的基本运算操作 内存表和符号表 类型转换 函数类型的分析 指令 复合指令 句法 函数 函数激活(Activation Record) 函数激活定 ...
- 《UNIX 环境高级编程》学习笔记——UNIX 基础知识
UNIX环境高级编程--UNIX 基础知识 引言 UNIX 体系结构 登录 文件和目录 输入和输出 程序和进程 出错处理 用户标识 信号 时间值 系统调用和库函数 引言 所有操作系统都为它们所允许的程 ...
最新文章
- 2018-4-5 丘成桐---现代几何学与计算机科学---自我总结
- 如何在 Centos8 中安装 Lynis审计工具
- 《面向对象分析与设计》一2.1 分析面临的主要问题
- 【直播课】有三AI直播答疑服务上线,如何学习计算机视觉与准备面试直播限时免费...
- 简单程序跟踪调试方式
- 机器学习基础(1)——绪论
- vue中展示列表,类似formatter方法及在vue中点击页面信息事件
- php模拟登录qq邮箱_PHP 利用QQ邮箱发送邮件的实现
- 【工具】Win 7/8/10 下使用 VC++6.0
- ORACLE查询不可用状态索引
- 一起来读you don't know javascript(一)
- Docker下载太慢
- Html5变量游戏,第三章语法、关键保留字及变量
- Java程序员集合框架面试题
- 读赵凯华之《新概念物理教程.热学》
- 什么是运放的虚短和虚断
- 我的2012北京LAMP兄弟连
- 计量论文stata代码大全
- RecyclerView+Retrofit+OkHttp+RxJava
- PymuPDF实现PDF文字和图片的修改