生活不易,开始(复习)预习,在胆子大旷了大半个学期的OS,是时候跟着MOOC来赎罪了。
操作系统的功能
计算机系统的四个组成部分:硬件,操作系统,应用程序,用户。
操作系统的核心目标:运行用户程序。
操作系统多样化的原因:不同的用户,不同的应用场景,对操作系统有不同的要求。
从用户视角来看,主要目的是更方便地使用计算机,从系统的视角来看,可将操作系统看作资源分配器,主要目的是更高效地使用计算机。
操作系统并没有明确的定义,比较公认的定义是操作系统是一直运行在计算机上的程序(内核)。
计算机系统的组成
一个或多个CPU和若干设备控制器,通过公用总线相连而成,总线提高了共享内存的访问。
CPU与设备控制器可并发执行,并竞争访问内存。
每个设备控制器有一个本地缓冲,CPU在内存和本地缓冲之前传输数据,I/O控制器在设备和本地缓冲之间传输数据。
中断:当出现需要时,CPU暂时停止当前程序的执行,转而执行处理新情况的程序和执行过程。
中断服务程序是执行中断处理的代码,而中断向量是中断服务程序的入口地址。
操作系统是中断驱动。
系统启动流程:引导程序(如UNIX的init)在打开电源或重启时会被装载入内存并运行。
操作系统的结构
多道程序设计:在内存中同时存在多道作业,在管理程序控制下穿插进行。
多道程序设计的目的:提高CPU利用率,充分发挥计算机系统部件的并行性,
并行:两个或者多个作业在用一时刻运行。并发:两个或多个作业在同一时间间隔内依次运行。现已不严格区分。
分时系统是多道程序设计的自然延伸,要求计算机系统是可交互的。
分时系统是一种联机的多用户交互式的操作系统,一般采用时间片(将一段CPU时间按照固定单位分割)轮转方式使得一个计算机为多个用户服务,在单位时间能,每个用户获得一个时间片并运行,保证了用户获得极小的响应时间(通常小于1秒),并提供交互能力。
操作系统的类型
大型机(如IBM AIX,HP-Unix),桌面系统(如Windows,Linux),移动系统(如Apple IOS,Android)。
嵌入式系统:完全嵌入受控器件内部,为特定应用而设计的专用计算机系统,应用于工业控制,交通管理,信息家电等。
分布式系统(松耦合系统):通过网络通信,没有真正意义上的分布式系统,如P2P系统,客户机-服务器系统。
多处理器系统:有多个紧密通信的处理器的系统,属于并行系统,紧耦合系统。多个处理器共享计算机总线,时间,内存和外设,优点是增加吞吐量,节省资金,增加可靠性。
多处理器系统分有,对称多处理SMP,每个处理器运行操作系统的相同副本,许多程序可以立即运行而不会降低性能。非对称多处理ASMP,各个处理器不对等,一个主处理器,多个从处理器,一般用于特定场景,如游戏,通信等,不适合PC,适合手机等要求功耗的设备。
集群系统:通过专用网络连接一群计算机,把这些计算机虚拟化成一台超级计算机供用户使用。优点是高性能,低成本,高可扩展性,高可靠性。
神威太湖之光天下第一。
操作系统操作和功能
操作系统双重模式:用户模式(监视模式),内核模式(特权模式),由硬件特供模式位。用于解决程序运行中的问题,如除零,死循环等。
特权指令:可能引起系统崩溃的指令,只能运行在内核模式。用户程序通过系统调用的方式使用特权指令。
I/O保护:为了防止用户程序执行非法I/O操作,所有I/O指令都是特权指令。
内存保护:防止内存非法访问,采用存储保护机制,由硬件支持。例子:基址寄存器,限长寄存器。
定时器:在一定的时间后发生中断,CPU控制权返回操作系统,有固定时间和可变时间计时器,利用时钟和计数器实现,用于防止用户程序死循环或不调用系统服务,使得操作系统不能获得CPU控制权,无法管理系统。
进程管理:运行程序。进程是一个执行中的程序。具体内容:创建和删除用户进程和系统进程,暂停和恢复进程,提高进程同步,进程通信,死锁处理机制。
内存管理:程序运行必需的存储设备。CPU只能直接访问寄存器,高速缓存和内存。提供内存分配,内存回收,地址转换,共享和保护等功能。
文件管理:解决信息在计算机中存储问题。以文件为单位,以目录为组织方式创建文件系统。内容:文件逻辑结构,文件物理结构,目录,文件检索方法,文件操作等。
I/O设备管理:管理种类繁多的各种I/O设备,解决计算机中信息的输入和输出问题。关键是设备的无关性。所有物理设备按照物理特性抽象成逻辑设备,应用程序针对逻辑设备编程与物理设备无关。内容设备管理,设备驱动。
MOOC单元作业的一道题:
1、有两个进程P1和P2,它们执行的过程如下(假设CPU和I/O执行采用同步模式):
P1: 10秒CPU操作、20秒I/O操作(设备1)、5秒CPU操作、10秒I/O操作(设备2)、5秒CPU操作、结束
P2: 20秒I/O操作(设备1)、10秒CPU操作、15秒I/O操作(设备2)、10秒CPU操作、结束
(1)如果进程P1和P2顺序执行,请画出进程P1和P2执行情况图;
(2)如果进程P1和P2并发执行,请画出进程P1和P2执行情况图;
(3)分别计算在(1)和(2)情况下,CPU的利用率、设备1和设备2的利用率。
来源:https://www.cnblogs.com/LMCC1108/p/11935236.html