Linux中system V 标准 与 Psix标准

一.  简介

本文简单了解一下, Linux下 的两种标准: system V标准与 Psix标准。

二. Linux中system V 标准 与 Psix标准

1.  Linux中system V 标准 与 Psix标准

System V 和 POSIX 是指定操作系统如何实现标准化API的两大标准。

System V 是一套标准,定义了操作系统的API,用于进程间通信,内存管理,文件系统等。

POSIX 标准,定义了操作系统应该为C语言和其他编程语言提供的功能的标准接口。

注意:在Linux下,你可以通过查看man手册来查看System V和POSIX API的使用方法。例如,使用man 2 syscalls来查看System V的系统调用,使用man 3 functions来查看POSIX的C库函数。

2.  system V与Posix两个协议的区别

(1)  效率性能

    System V: System V在同步互斥手段方面的无竞争条件下,是无论何时都会陷入内核,性能稍低。

POSIX:POSIX在同步互斥手段方面的无竞争条件下,是不会陷入内核的,性能稍差较高。

(2)  冗余可靠性

    System V:System V提供了SEM_UNDO选项可以解决成功获取信号量后,进程如果意外终止,将无法释放信号量个问题。可靠性高。

    POSIX:POSIX的sem_wait函数成功获取信号量后,进程如果意外终止,将无法释放信号量。可靠性差。

(3)  操作系统

    System V:System V操作系统实现相当广泛。

    POSIX:可能有小部分操作系统没有实现POSIX标准。

(4)  移植性

    System V:不同操作系统System V存在一些差异。

    POSIX:可移植性POSIX必然是一个趋势。

(5)  进程间&线程间通信同步

    System V:System V更多用于进程间通信,线程间使用较少。线程相对于进程是轻量级的,例如调度的策略开销,如果使用System V这种每次调用都会陷入内核的接口,会丧失线程的轻量优势。所以,多线程之间的通信不使用System V的接口函数

POSIX:POSIX进程间&线程间通信同步更优。

总结:

System V: System V进程间通信存在的时间比较早,接口复杂,并且可能各平台上实现略有区别。

POSIX:  POSIX是新标准,现在多数UNIX也已实现,语法简单,并且各平台上实现都一样。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值