操作系统
-
配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。
主要作用:
-
管理硬件设备,提高它们的利用率和系统吞吐量。
-
为用户和应用程序提供一个简单的接口,以便于用户和应用程序使用硬件设备。
补充:
-
OS是现代计算机系统中最基本和最重要的系统软件。
-
其他的系统软件和应用软件,都直接依赖于OS的支持,并须取得OS所提供的服务。
-
事实上,OS已成为现代计算机系统、多处理机系统、计算机网络等都必须配置的系统软件。
【个人理解】:OS就像是大户人家的管家,硬件就像是大户人家的资产,管家负责资产的分配和使用,尽可能的获得最大的收益。
-
操作系统的目标和作用
操作系统的目标
①方便性
- 在未配置OS的计算机上运行程序,程序猿需要用机器语言编写程序。【计算机只能理解机器语言】
- 在配置OS的计算机上运行程序,程序猿可以使用高级语言编写程序,然后使用OS提供的编译命令将高级语言——>机器语言。
- 在方便用户的同时,也使计算机变得易学、易用。
②有效性
【提高系统资源利用率】:早期的计算机系统没有配置OS,CPU、I/O设备等经常处于空闲状态,各种资源的利用率低 ——> 提高系统资源利用率是推动OS发展的最主要动力。
【提高系统吞吐量】:OS ——> 合理组织计算机的工作流程 ——> 加速程序的运行,缩短程序的运行周期 ——> 提高系统吞吐量
补充:
- 过去很长一段时间,由于计算机系统十分昂贵——>有效性十分重要。
- 近十几年,硬件越来越便宜——>更加重视如何提高用户使用计算机的方便性——>图形化界面。
③可扩充性
- 适应计算机硬件、体系结构以及应用发展的要求——>OS必须具有很好的可扩充性。
- 可扩充性的好坏与OS的结构有十分紧密的联系——>推动OS的不断发展。
- OS发展:无结构——>模块化结构——>分层式结构——>微内核结构。
- 微内核结构:可以方便地添加新的功能和模块,以及对原有功能和模块进行修改,具有良好的可扩充性。
④开放性
- 所谓开放性,就是软件和硬件彼此兼容;【系统能够遵循国际标准,特别是遵循**开放互连(OSI)**参考模型】。
- 国家——>国际
- 遵循国际标准开发的硬件和软件都能彼此兼容,并方便地实现互连。
- 是20世纪90年代以后计算机技术的一个核心问题,也是衡量一个新推出的系统或软件能否被广泛应用的重要因素。
操作系统的作用
①OS作为用户与计算机硬件之间的接口
OS处于用户与计算机硬件系统之间,用户在OS的帮助下,可以方便、快捷、可靠的操纵计算机硬件和运行自己的程序。
使用方式:
①命令方式
②系统调用方式
③图形/窗口方式
②OS作为计算机系统资源的管理者
计算机系统资源分类:①CPU;②存储器;③I/O设备;④文件(数据和程序)
OS管理者:
①CPU管理:负责CPU的分配与控制
②存储器管理:负责内存的分配与回收
③I/O设备管理:负责I/O设备的分配与操纵
④文件管理:负责文件的存取、共享与保护
▲:当一台计算机系统同时供多个用户使用时,用户对系统中的共享资源的需求有可能会发生冲突 ——> OS必须对共享资源的使用请求进行授权,以协调诸多用户对共享资源的使用。
③OS实现了对计算机资源的抽象
无OS的计算机系统仅提供给用户硬件接口——>用户必须对物理接口的实现有充分的了解——>难以被用户方便使用
为方便用户使用I/O设备——>覆盖一层I/O设备管理软件 <属于OS>——>方便用户使用【不用考虑是怎样实现的】
【个人理解】:用户就像是主人,OS是管家,主人给管家下达命令,而不用关心管家怎样做到,只要最终实现就可以了。
为方便用户使用文件系统——>在I/O软件之上覆盖一层用于管理文件的软件——>实现对文件操作的细节,并向上层提供一组实现对文件进行存取操作的数据结构及命令——>方便用户使用
▲:OS是铺设在计算机硬件上的多层软件的集合,它们不仅增强了系统的功能,还隐藏了对硬件操作的具体细节,实现了对计算机硬件操作的多个层次的抽象模型。
推动操作系统发展的主要动力
- 不断提高计算机系统的利用率
- 方便用户
- 器件不断更新迭代
- 计算机体系结构不断发展
- 不断提出新的应用需求