咱们应知道,在一个计算机系统中,硬件与软件资源可分为:处理器、存储器、I/O设备和信息(数据和程序)四类。而OS它是一个计算机系统资源的管理者,并实现了对计算机资源的抽象,链接了用户与计算机硬件系统,做为用户与计算机硬件系统之间的接口(软件接口)。程序员
1、 关于OS对计算机系统资源的管理:编程
OS的主要功能就是:函数
(1)、处理机管理:分配和控制处理机spa
(2)、存储器管理:内存分配与回收操作系统
(3)、I/O设备管理:I/O设备分配与操做blog
(4)、文件管理:文件的存取、共享和保护接口
注意:当一个计算机系统同时供多个用户使用时,用户对系统中共享资源的需求(包括数量和时间)可能发生冲突,为了管理好这些资源(包括硬件和信息)的使用,操做系统必须记录下各类资源的使用状况,对使用资源的请求进行受权,协调各用户对共享资源的使用。进程
2、 关于OS对计算机资源的抽象内存
对于一个彻底无软件的计算机系统(裸机),它向用户提供的是实际硬件接口(物理接口),用户需对物理接口的实现细节有充分的了解,并利用机器指令进行编程。显然,这对于用户是不容易的。资源
为了方便用户使用I/O设备,人们在裸机上覆盖一层I/O设备管理软件,由它来实现对I/O设备操做的细节,并向上提供一组I/O操做命令。即在裸机上铺设的I/O软件隐藏了对I/O设备操做的具体细节,向上提供了一组抽象的I/O设备。一般把覆盖了上述软件的机器称为扩充机器或虚机器。它向用户(进程)提供了一个对硬件操做的抽象模型,用户可利用抽象模型提供的接口(软件接口)使用计算机,而无需了解物理接口实现的细节。该层软件实现了对计算机硬件操做的第一个层次的抽象。
为了方便用户使用文件系统,人们在第一层软件上再覆盖上一层用于文件的管理软件,一样由它来实现对文件操做的细节,并向上提供一组对文件进行存取操做的命令,用户可利用这组命令进行文件的存取。该层软件实现了对计算机硬件资源操做的第二个层次的抽象。
当人们又在文件管理软件上再覆盖一层面上用户的窗口软件后,用户即可在窗口环境下方便地使用计算机,造成一台功能更强的虚机器。
由此可知,OS是铺设在计算机硬件上的多层系统软件,它加强了系统功能,隐藏了对硬件操做的细节,实现了对计算机硬件操做的多个层次的抽象。
对一个硬件在底层进行抽象后,在高层次还可再次对该资源进行抽象,成为更高层次的抽象模型。随着抽象层次的提升,抽象接口所提供的功能就愈来愈强,用户使用也更加方便。
3、 用户与操做系统的接口
为了方便用户使用操做系统,OS又向用户提供了“用户与操做系统的接口”。该接口一般分为两大类:用户接口与程序接口。
用户接口:提供给用户使用的接口,用户可经过该接口取得操做系统的服务;
程序接口:提供给 程序员在编程时使用的接口,是用户程序取得操做系统服务的惟一途径。
用户接口能够分为:
(1) 联机用户接口
(2) 脱机用户接口
(3) 图形用户接口
联机用户接口是为联机用户提供的,它由一组键盘操做命令及命令解释程序组成。(用户在终端或控制台上每键入一条命令,系统便当即转入命令解释程序,对该命令加以解释并执行该命令。完成指定功能后,控制又回到终端或控制台上,等待用户键入下一条命令。这样,用户可经过前后键入不一样命令的方式,来实现对做业的控制,直至做业完成。)
脱机用户接口是为批处理做业的用户提供的,故也称为批处理用户接口。该接口由一组做业控制语言(JCL)组成。(批处理做业的用户不能直接与本身的做业交互做用,只能委托系统代替用户对做业进行控制和干预)这里的JCL即是提供给批处理做业用户的、为实现所需功能而委托系统代为控制的一种语言。(用户用JCL把须要对做业进行的控制和干预事先写在做业说明书上,而后将做业连同做业说明书一块儿提供给系统。当系统调度到该做业运行时,又调用命令解释程序,对做业说明书上的命令逐条地解释执行。若是做业在执行过程当中出现异常现象,系统也将根据做业说明书上的指示进行干预,这样,做业一直在做业说明书的控制下运行,直至遇到做业结束语句时,系统才中止该做业的运行。)
图形用户接口采用了图形化的操做界面,用容易识别的各类图标来将系统的各项功能、各类应用程序和文件,直观、逼真地表示出来。(用户可用鼠标或经过菜单和对话框来完成对应用程序和文件的操做。)
关于程序接口:
程序接口是为用户程序在执行中访问系统资源而设置的,是用户程序取得操做系统服务的惟一途径。它由一组系统调用组成。(每个调用都是一个能完成特定功能的子程序。早期的系统调用都是用汇编语言提供的,只有在用汇编语言书写的程序中才能直接使用系统调用;但在高级语言中,每每提供了与各系统调用一一对应的库函数,这样,应用程序即可经过调用对应的库函数来使用系统调用。但随着操做系统发展,其系统调用自己已经采用C语言编写,并以函数形式提供,故在用C语言编制的程序中,可直接使用系统调用。)
综上,OS自己是做为用户与计算机硬件之间的接口,联系了用户与计算机硬件,承担着计算机资源管理的任务;用户又经过操做系统提供的接口实现对操做系统的操做。