1.OS用户接口类型
(1)命令接口 - 用户利用这些操作命令来组织和控制作业的执行
@联机命令接口( 交互式命令接口 ) ,适用于分时或实时系统。
[用户输入一条命令,操作系统处理一条命令]
@脱机命令接口( 批处理命令接口 ) ,适用于批处理系统。
[用户输入一批命令,操作系统处理一批命令]
(2)程序接口 - 编程人员可以使用来请求操作系统服务
程序接口由一组系统调用命令组成。
系统调用命令又称系统调用、广义指令。
2.系统调用(System call)
Ps 由操作系统实现提供的所有系统调用所构成的集合即程序接口或应用编程接口(Application Programming Interface, API)。
Background Info
操作系统内核提供一系列具备预定功能的多内核函数,通过一组称为系统调用的接口呈现给用户。系统调用把应用程序的请求传给内核,调用相应的内核函数完成所需的处理,把处理结果返回给应用程序。
当前计算机基本都是多任务运行的,主要依靠多个进程之间的不断切换,从而形成宏观上的并发执行。在进程切换的过程中,为了避免发生进程A操作进程B的数据,在处理器中加入基址寄存器和界限寄存器。
为了防止用户程序修改基址寄存器和界限寄存器中的内容来达到访问其他内存空间的目的,这两个寄存器必须通过一些特殊的指令来访问,这些指令必须在内核模式/系统态/管态中执行。
两种状态
系统态/管态/核心态 - 操作系统在系统态运行
用户态/目态 - 应用程序只能在用户态运行
@特权指令:只能在核心态下运行而不能在用户态下运行的特殊指令。
@访管指令(Trap指令):本身是一条特殊的指令,但不是特权指令。能够引起访管异常,从而由用户态转向系统态。
不确定理解
So.(1) 系统调用是应用程序与操作系统之间的桥梁 。
(2)访管指令可以触发系统调用。
(3)系统调用是接口,属于系统的一部分。
(4)系统调用也是一种函数调用,只不过这种函数调用会让进程从用户态转向内核态,从而在内核态中由操作系统完成相应操作。