浅谈对操作系统的认识
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浅谈对操作系统的认识
何宇
操作系统是控制其他程序运行,管理系统资源并为用户提供操作界面的系统软件的集合,是计算机必不可少的一部分。从用户环境的角度看,操作系统为用户提供了使用计算机的接口,终端用户利用命令接口操作计算机,程序员利用程序接口编写程序;从资源管理的角度看,操作系统的任务是高效地管理整个系统的所有软硬件资源,实现资源的有效和高效利用;从虚拟机的观点看,操作系统的任务是为用户提供一台比物理计算机更易于使用的徐您计算机;从作业组织的观点看,操作系统是作业流程的组织者,控制批量作业进入计算机内存执行。计算机硬件的发展和新功能服务的要求等因素着操作系统的发展,操作系统的发展经历了单道批处理系统、多道批处理系统、分时系统和实时系统几个时期。操作系统包括分布式操作系统、网络操作系统和嵌入式操作系统等类型。
1.操作系统的目标
能够高效地控制和管理计算机硬件和软件资源、公平合理地对各类作业进行调度、使各用户能够灵活方便有效地使用计算机。有良好的开放性和可扩充性。
2.操作系统的作用
1)操作系统是在硬件基础上的第一层软件, 是用户及应用软件与计算机硬件系统之间的接口,用户通过OS来使用计算机系统。
2)高效合理地管理资源。计算机系统四类资源: 处理器、存储器、I/O设备、信息(程序和数据,作业和文件)。相应地,OS的主要功能也正是针对这四类资源进行有效的管理,即:处理机管理,用于分配和控制处理机;存储器管理,主要负责内存的分配与回收;I/O 设备管理,负责I/O设备的分配与操纵;文件管理,负责文件的存取、共享和保护。
3)操作系统作为仲裁者(协调者),使多个应用程序/用户高效,公平地一起工作,保护进程不互相干扰。
4)操作系统实现了对计算机资源的抽象。OS是铺设在计算机硬件上的多层系统软件,它们不仅增强了系统的功能,而且还隐藏了对硬件操作的细节,由它们实现了对计算机硬件操作的多个层次的抽象。
对于一个完全无软件的计算机系统(即裸机),它向用户提供的是实际硬件接口(物理接口),用户必须对物理接口的实现细节有充分的了解,并利用机器指令进行编程,因此该物理机器必定是难以使用的。为了方便用户使用I/O设备,人们在裸机上覆盖上一层I/O设备管理软件。由它来实现对I/O设备操作的细节,并向上提供一组I/O操作命令,如Read和Write命令,用户可利用它来进行数据输入或输出,而无需关心I/O是如何实现的。此时用户所看到的机器将是一台比裸机功能更强、使用更方便的机器。通常把覆盖了软件的机器称为扩充机器或虚机器。由该层软件实现了对计算机硬件操作的第一个层次的抽象。
如果在第一层软件上再覆盖上一层文件管理软件,则用户可利用该软件提供的文件存取
命令,来进行文件的存取。该层软件实现了对硬件资源操作的第二个层次的抽象。
如果又在文件管理软件上再覆盖一层面向用户的窗口软件后,用户便可在窗口环境下方便地使用计算机,形成一台功能更强的虚机器。
3.现代操作系统的基本特点
1)并发性(concurrence)
计算机内存中同时存在多个程序, 宏观上这些程序是同时在执行的, 但在微观上任何时刻只有一个程序在执行。即微观上这些程序在CPU上轮流执行。
2)共享性(sharing)
操作系统与多个用户的程序共同使用计算机系统中的资源(硬件和软件)。多个程序之间采用互斥和同步两种资源共享方式访问计算机系统中的资源。
3)虚拟性(Virtual)
把一个物理时体“虚拟”为多个逻辑体,如:虚拟处理机、虚拟内存、虚拟设备和虚拟信道。
4)异步性(asynchronism)(不确定性)
多个进程并发执行时, 各进程都是以走走停停的方式运行, 运行顺序无法预测, 即进程以异步方式运行。因此, 操作系统必须随时对以不可预测的不确定的次序随机发生的事件进行响应。
4.操作系统的功能
操作系统是用户与硬件之间的桥梁,它主要负责管理计算机系统中的所有资源,并负责它们的调度和使用,充分发挥这些资源的作用和方便用户使用计算机。从资源管理和方便用户使用的角度来看,操作系统的功能主要有:
1)处理机的管理
主要控制和管理CPU的工作,组织多个作业同时运行,解决对处理机分配调度策略,例如FCFS,SJF,分配实施和资源回收等。处理机管理分为①作业管理:对作业进行调度与控制;②进程管理:按某种原则为进程分配资源。
2)存储器的管理
提高内存利用率、提供足够的存储空间、方便进程并发运行。对内存进行分配、保护和扩充。
①内存分配:保证系统及各用户程序的存储区互不冲突。
②内存保护:保证各用户进程不会互相破坏,保证用户程序不会破坏系统程序。
③内存扩充:将内存和外存结合起来管理,为用户提供一个容量比实际大得多的虚拟存储器。
3)设备的管理
方便的设备使用、提高CPU与I/O设备利用率;对设备的管理就是对计算机输入输出系
统的管理。包括对通道、控制器、I/O设备的分配和管理,实现设备独立性。
4)文件系统的管理
负责对计算机文件的组织、存储、操作和保护等。包括对文件命令进行解释和加工,管理文件系统所用的资源。
5)用户的接口管理
操作系统的目标就是提供一个友好的用户接口访问计算机。操作系统为用户提供了两种方式的接口:
①程序级的接口(编程接口/系统调用)
提供系统调用,供用户程序和其他系统程序调用。系统调用是操作系统提供给编程人员的唯一接口。
②作业级的接口(命令接口/操作级接口)
提供控制操作系统命令,供用户去组织和控制作业的运行。
总之,操作系统是一组能够高效地控制和管理计算机硬件和软件资源、公平合理地对各类作业进行调度、以及方便用户使用计算机的程序集合,是计算机系统必不可少的一部分。