操作系统接口
一般来说,操作系统提供了两种接口来为程序和用户服务。一种是面向程序的接口,即提供一组广义指令供用户程序和其他系统程序使用。另一种是面向操作的接口,即提供一组控制操作方式或命令供用户去组织和控制自己作业的运行。
1. 程序接口
程序接口是操作系统提供给程序使用操作系统服务和功能的接口,通常通过系统调用和API来实现。
系统调用:
系统调用(system call)是为了扩充机器功能,增强系统能力,方便用户使用而建立的。
用户程序或者其他系统程序通过系统调用就可以访问系统资源,调用操作系统功能,而不必了解系统内部结构和细节。它是用户程序或其他系统程序获得操作系统服务的一种途径。有些计算机系统把系统调用称为广义指令。
用户在编写的程序中使用相应的系统调用就可以获得操作系统提供的底层服务,从而进一步使用或访问系统管理的各种软硬件资源。不同的操作系统提供的系统调用的种类数量名称也不尽相同。
API:
对于Windows系统,Microsoft并没有公布其系统调用,而是公布了相关的API。API是Windows操作系统提供的一种应用程序编程接口,它是在操作系统的系统调用基础上经过规范整理出来面向社会公布的唯一接口方式。
这种API接口为程序员开发基于Windows的应用程序带来了很大便利,但是由于不是直接的系统调用,因此其性能有所损失。另外Microsoft也没有公布全部的API。
Windows通过三个动态链接库(DLL)来支持API的使用。一是Kernel.dll。它包含了大多数操作系统函数。如内存管理和进程管理。二是User.dll,它集中了窗口管理的相关函数。三是GDI.dll,它提供画图函数、打印函数等。
2. 操作接口
操作接口是操作系统向用户提供的可以操控计算机的接口,随着计算机运算速度的加快,出现了多种接口。
a.命名界面:
用户通过输入命令使用计算机系统。如果仅通过键盘输入来传递命令给系统。称为字符用户界面(Character User Interface),也就是通常所说的命令行用户界面(Command Line User Interface)。
在命令行界面中,用户可以通过一个个命令控制计算机的操作。命令具有规定的词法、语法、语义,完整的命令集构成了命令语言,反映了系统提供给用户可使用的全部功能。
b.图形界面:
如果操作系统最主要的输入设备是鼠标等点击设备(point-and-click device),那么它采用的是图形用户界面(Graphics User Interface)。图形用户界面是克服命令行的不足而产生的,是近年来最流行的联机用户接口方式。
c.作业控制命令:
这种接口是专为批处理作业的用户提供的,所以也称为批处理用户接口。操作系统提供了一个作业控制语言(Job Control Language,JCL),它由一组作业控制语句、作业控制操作命令及相应语法规范组成。
(END)