【UNIX】什么是操作系统中的接口

         接口这个名词在计算机中并不少见,在生活着我们也会听到接口的词语,模糊的概念就是封装好了一定功能的盒子,当你用充电宝给手机充电的时候,你只要把数据线连接到USB接口就可以对你的手机进行充电,这是你不会考虑到充电宝内部是怎么把电量传到手机里的,这里就是一种生活中的接口,我们可以看得见的,但是在计算机中,当你编写一个程序时,为了简化编程,在已有的编程库里面,调用一种已经统一封装好的函数库,我们这要通过调用就可以使用了,方便了编程的效率和灵活性。

       接口在计算机中为port,通常有视频接口,序列接口,通讯接口等等,甚至在后面的网络间通讯中会涉及到一个主机的端口号,就是表示一条信息通过网络通信寻找唯一的IP找到一台计算机,在通过端口号来寻找一个计算机进程中哪个请求的通信。


在一种专业的术语:

接口泛指实体把自己提供给外界的一种抽象化物(可以为另一实体),用以由内部操作分离出外部沟通方法,使其能被修改内部而不影响外界其他实体与其交互的方式,就如面向对象程序设计提供的多重抽象化。接口可能也提供某种意义上的在讲不同语言的实体之间的翻译,诸如人类与电脑之间。因为接口是一种间接手段,所以相比起直接沟通,会引致些额外负担。 人类与电脑等信息机器或人类与程序之间的接口称为用户界面。电脑等信息机器硬件组件间的接口叫硬件接口。电脑等信息机器软件组件间的接口叫软件接口。


【在计算机中】(对于计算机不同语言有不同的接口,这里主要说明一般C中的接口)

【可移植操作系统接口(POSIX)】

POSIX是IEEE为要在各种UNIX操作系统上运行的软件而定义API的一系列互相关联的标准的总称,其正式称呼为IEEE1003,而国际标准名称为ISO/IEC9945。
此标准源于一个大约开始于1985年的项目。POSIX这个名称是由RichardStallman应IEEE的要求而提议的一个易于记忆的名称。它基本上是PortableOperatingSystemInterface(可移植操作系统接口)的缩写,而X则表明其API的传承。

简介


PortableOperatingSystemforUNIX(TM)的缩写。一个标准,通过一组最小的需要被支持的功能定义了在UNIX操作系统和应用程序之间兼容的语言接口。
POSIX是可移植操作系统接口(PortableOperatingSystemInterface)的首字母缩写。POSIX是基于UNIX的,这一标准意在期望获得源代码级的软件可移植性。换句话说,为一个POSIX兼容的操作系统编写的程序,应该可以在任何其它的POSIX操作系统(即使是来自另一个厂商)上编译执行。POSIX标准定义了操作系统应该为应用程序提供的接口:系统调用集。
UNIX可移植操作系统接口"是对所有参照IEEE组织制定的“Unix软件接口标准”而开发的软件的统称,依这个标准而开发的软件可以运行在所有基于Unix的操作系统上,IEEE组织给这一标准的命名为IEEE1003,它的国际标准名称为ISO/IEC9945。这个标准(UNIX可移植操作系统接口)来自于大约1985年的一个开发项目。后来应IEEE组织的要求,该项目成员RichardStallman提议了一个好记的名字叫“POSIX",在那以前,它被称为IEEE-IX。POSIX实际上就是可移植(Portable)操作(Operating)系统(System)接口(Interface)的首字母简写,最后加上X表明它的Unix血统。


【应用程序编程接口  API】

API之主要目的是提供应用程序与开发人员以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。提供API所定义的功能的软件称作此API的实现。API是一种接口,故而是一种抽象。


目的
A reference implementation of an API is the implementation created by the designer of the API, or one which other implementations of the API are expected to be compared against.
例如,图形库中的一组API定义调用绘制图标函数的方式,以于屏幕上显示图标。程序中调用,编译时连接到这组API,执行时便调用API的实现(库)来显示图标。
操作系统的API可用来分配内存或访问文件。许多系统与应用程序提供API接口与实现,比如图形系统,数据库,网络,Web服务,甚至于某些游戏。
一组API经常是一套软件开发工具包(SDK)的一部分。SDK亦可包含其它工具亦或至于硬件,两个术语并不完全等同.
API有诸多不同设计。用于快速执行的接口通常包括函数,常量,变量与数据结构。也有其它方式,如通过解释器,或是提供抽象层以遮蔽同API实现相关的信息,确保使用API的代码无需更改而适应实现变化。
API 就是应用程序编程接口。它是能用来操作组件、应用程序或者操作系统的一组函数。典型的情况下,API 由一个或多个提供某种特殊功能的 DLL 组成。
DLL 是一个文件,其中包含了在 Microsoft® Windows® 下运行的任何应用程序都可调用的函数。运行时,DLL 中的函数动态地链接到调用它的应用程序中。无论有多少应用程序调用 DLL 中的某个函数,在磁盘上只有一个文件包含该函数,且只在它调入内存时才创建该 DLL。
您听到最多的 API 可能是 Windows API,它包括构成 Windows 操作系统的各种 DLL。每个 Windows 应用程序都直接或间接地与 Windows API 互动。Windows API 保证 Windows 下运行的所有应用程序的行为方式一致。
注意
随着 Windows 操作系统的发展,现已发布了几个版本的 Windows API。Windows 3.1 使用 Win16 API。Microsoft® Windows NT®、Windows 95 和 Windows 98 平台使用 Microsoft® Win32® API。
除 Windows API 外,其他一些 API 也已发布。例如,邮件应用程序编程接口 (MAPI) 是一组可用于编写电子邮件应用程序的 DLL。
API 传统上是为开发 Windows 应用程序的 C 和 C++ 程序员编写的,但其他的编程语言(包括VBA)也可以调用 DLL 中的函数。因为大部分 DLL 主要是为 C 和 C++ 程序员编写和整理说明的,所以调用 DLL 函数的方法与调用 VBA 函数会有所不同。在使用 API 时必须了解如何给 DLL 函数传递参数。
警告 调用 Windows API 和 其他 DLL 函数可能会给您的应用程序带来不良影响。从自己的代码中直接调用 DLL 函数时,您绕过了 VBA 通常提供的一些安全机制。如果在定义或调用 DLL 函数时出现错误(所有程序员都不可避免),可能会在应用程序中引起应用程序错误(也称为通用性保护错误,或 GPF)。最好的解决办法是在运行代码以前保存该项目,并确保了解 DLL函数调用的原理。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值