UNIX标准化及实现之UNIX标准化、UNIX系统实现、标准和实现的关系以及ISO C标准头文件

时间:2021-12-05 04:37:53

一、UNIX标准化

  1、ISO C

  (International Organization for Standardization)

  2、IEEE POSIX

  (Institue of Electrical and Electronics Engineers,Portable Operating System Interface)

  3、Single UNIX Specification(单一UNIX规范)  

  POSIX.1标准的一个超集,定义了一些附加的接口,这些接口扩展了基本的POSIX.1规范提供的功能。相应的系统接口全集被称为X/Open系统接口(XSI, X/Open System Interface)。__XOPEN_UNIX符号常量标识了(相对于基本POSIX.1接口而言)XSI扩展的接口。

  只有遵循XSI的实现才能称为UNIX系统。

二、UNIX系统实现

  1、SVR4(UNIX System V Release 4,UNIX系统V第4版)——AT&T的UNIX系统实验室的产品。

  2、4.4BSD(Berkeley Software Distribution)——加州大学伯克利分校的计算机系统研究组(CSRG)研究开发和分发的。

  3、FreeBSD——其基础是4.4BSD-Lite

  4、Linux——Linus Torvalds在1991年为替代MINIX而研发的。

  5、Mac OS X——基于Mach内核和FreeBSD操作系统的组合。类似于FreeBSD和Linux。

  6、Solaris——Sun公司开发的UNIX系统版本。基于SVR4。

  ...

三、标准和实现的关系

  各个标准定义了任一实现系统的子集。

四、ISO C标准定义的头文件

ISO C标准定义的头文件(POSIX.1标准包括这些头文件以及另外一些头文件)

头文件

说明

<assert.h>

验证程序断言

<complex.h>

支持复数算数运算

<ctype.h>

字符类型

<errno.h>

出错码

<fenv.h>

浮点环境

<float.h>

浮点常量

<inttypes.h>

整型格式转换

<iso646.h>

替代关系操作符宏

<limits.h>

实现常量

<locale.h>

局部类别

<math.h>

数学常量

<setjmp.h>

非局部goto

<signal.h>

信号

<stdarg.h>

可变参数表

<stdbool.h>

布尔类型和值

<stddef.h>

标准定义

<stdint.h>

整型

<stdio.h>

标准I/O库

<stdlib.h>

实用程序函数

<string.h>

字符串操作

<tgmath.h>

通用类型数学宏

<time.h>

时间和日期

<wchar.h>

扩展到多字节和宽字符支持

<wctype.h>

宽字符分类和映射支持

UNIX标准化及实现之UNIX标准化、UNIX系统实现、标准和实现的关系以及ISO C标准头文件的更多相关文章

  1. UNIX标准化及实现之POSIX标准必需头文件

    POSIX标准定义的必需头文件 头文件 说明 <dirent.h> 目录项 <fcntl.h> 文件控制 <fnmatch.h> 文件名匹配类型 <glob. ...

  2. UNIX环境高级编程 第2章 UNIX标准及实现

    在过去的将近25年时间,人们为了UNIX的标准化做出了种种努力,这使得程序在不同版本的UNIX系统之间的移植相当容易. ISO C 1989年,C语言首个标准得到批准,其为C89.次年,一个带有小改动 ...

  3. 【转】【Raspberry Pi】Unix NetWork Programming:配置unp&period;h头文件环境

    一.初衷 近期正在做网络计算编程的作业.要求平台为unix/linux,想着Raspberry Pi装的Debian系统也是Linux改的,也应该能够勉强用着,所以就用它来做作业了! 二.说明 先把环 ...

  4. apue&period;h头文件(UNIX环境高级编程)

    在看UNIX环境高级编程是,碰到一个头文件"apue.h",搜一下别人的帖子,其实apue.h是作者自己写的一个文件,包含了常用的头文件,系统不自带.其中包含了常用的头文件,以及出 ...

  5. UNIX网络编程之旅-配置unp&period;h头文件环境

    最近在学习Unix网络编程(UNP),书中steven在处理网络编程时只用了一个#include “unp.h”  相当有个性并且也很便捷 于是我把第三版的源代码编译实现了这个过程,算是一种个性化的开 ...

  6. UNIX环境高级编程 第1章 UNIX基础知识

    所有操作系统都为运行在它之上的程序提供各种服务,典型的服务包括:执行新程序.打开文件.读写文件.分配存储空间.提供时间等. UNIX体系结构 严格来说,操作系统是一种软件,它控制计算机硬件资源,提供程 ...

  7. Unix网络编程 — 头文件解析

    1.1. < sys/types.h > primitive system data types(包含很多类型重定义,如pid_t.int8_t等) 1.2. < sys/socke ...

  8. UNIX标准化及实现之POSIX标准可选头文件

    POSIX标准定义的可选头文件 头文件 说明 <aio.h> 异步I/O <mqueue.h> 消息队列 <pthread.h> 线程 <sched.h&gt ...

  9. UNIX标准化及实现之POSIX标准扩展头文件

    POSIX标准定义的XSI(X/Open System Interface)扩展头文件 头文件 说明 <cpio.h> cpio归档值 <dlfcn.h> 动态链接 <f ...

随机推荐

  1. 通过端口 8080 连接到主机 localhost 的 TCP&sol;IP 连接失败

    错误:“connect timed out.请验证连接属性,并检查 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接.”这 ...

  2. Eclipse 使用maven创建Dynamic Web Project

    今天看到spring的官网首页已经没有下载连接了,建议使用maven构建spring项目.虽然maven已经不是新技术,但是这个我还没用过,谷歌走起! 通常创建项目都是用Eclipse,前几年还是My ...

  3. java 向上转型 向下转型

    //父类 四边形 class Quadrangle{ public static void draw (Quadrangle q){ } } //子类  public class Parallelog ...

  4. 动态获取项加入到SQL中去统计

    public static List<CustomerAppraisalInfo> ListCustomerAppraisal(int pageIndex, int pageSize, s ...

  5. &OpenCurlyDoubleQuote;Compiled” Python files

    To speed up loading modules, Python caches the compiled version of each module in the __pycache__ di ...

  6. POI使用汇总

    POI它是apache下一步行为office有关格源工具.我们近期在使用这个框架实现Excel格式数据的导入和导出功能.这里进行一个使用总结.POI提供两种读写API模型:事件模型(eventmode ...

  7. 浅析Entity Framework Core2&period;0的日志记录与动态查询条件

    前言 Entity Framework Core 2.0更新也已经有一段时间了,园子里也有不少的文章.. 本文主要是浅析一下Entity Framework Core2.0的日志记录与动态查询条件 去 ...

  8. 自己写编程语言-m语言

    一直对技术有很强的兴趣,终于,决定要写自己的语言(m语言).那就先从最简单的开始:解释执行器. 一套完整的语言包含的肯定不止解释执行器了,还要有编译器和IDE,也就还要有语法高亮.智能提示等,不过还没 ...

  9. 03SQLALchemy外键约束

    一,配置 1,SQLALchemy的配置单独使用config.py文件2,满足如下要求: #dialect+driver://username:password@host:port/database ...

  10. EF怎样实现ORM思想的(转载)

    EF简介 实体框架(Entity Framework)简称EF,是微软以ADO.NET为基础所发展出来的对象关系对应(O/R Mapping)解决方案.是ADO.NET中的一组支持开发面向数据的软件应 ...