part1 计算机系统概述

1.1操作系统的特征

1.并发:处理和调度多个程序同时执行的能力,操作系统的并发性是由分时实现的。
2.共享:资源可供内存多个并发执行的程序使用。互斥共享/同时访问,注意“同时”仅针对宏观上讲。微观上是“分时共享”的。既然如此,那么这两种有什么区别呢?(p3)。
3.虚拟:虚拟处理器:多道程序中,每个用户都感觉有一个CPU为其服务。虚拟内存:虚拟存储器。虚拟外设:每个用户占用一台逻辑上的IO设备。虚拟技术可归纳为:时分复用技术(处理分是共享);空分复用技术(虚拟存储器)。
4.异步:进程的执行是走走停停,不可预知的速度向前推进。

1.2 os的目标和功能

功能:
处理机管理:进程的管理,包括何时创建、何时撤销、如何管理、如何避免冲突合理共享,进程管理主要功能是进程控制、进程同步、进程通信、进程死锁、处理机调度等。
存储器管理:内存分配回收、地址映射、内存保护与共享、内存扩充等。
设备管理:缓冲管理、设备分配回收、设备处理、虚拟设备等。
文件管理:负责该部分的是文件系统,包括管理文件存储空间、目录管理、文件读写管理与保护等。
为用户提供接口命令接口:联机命令接口(交互式命令接口,适用于分时或实时)/脱机命令接口(批处理命令接口)。程序接口:一组系统调用命令组成。GUI
扩充机器:裸机+os或者其他软件就成为功能更强、更方便的扩充机器。

1.3操作系统的发展与分类
手工操作阶段
批处理阶段:
单道批处理(自动性、顺序性、单道性)。
多道批处理(多道、宏观并行、微观串行)。优点:共享资源;系统吞吐量大。缺点:响应时间长,无法人机交互。
分时操作系统:同时性、交互性、独立性、及时性。把处理机的运行时间分成很小的时间片,按照时间片轮流把处理器分配给各联机作业。
实时操作系统:在某个时间限制内完成某些紧急任务而不需要时间片等待。特点:及时性、可靠性。硬实时系统/软实时系统。
网络操作系统和分布式计算机系统:前者特点:资源的共享、计算机之间的通信。后者特点:分布性、并行性。两者本质不同在于:后者是若干计算机相互协同完成同一任务。
个人计算机操作系统:目前最广泛。

练习:
1.你能画出发展历程图吗?(p11)
2.会使用甘特图解题吗?(p13)

1.3操作系统的运行环境

1.在计算机系统中CPU执行两种程序:内核程序、用户自编程序/应用程序。前者是后者的管理者,能执行全部指令包括一些特权指令(IO指令、中断指令、置时钟、分配系统资源、修改虚存的页表或段表、修改用户访问权限、存取用于内存保护的寄存器、送程序状态字到程序状态字寄存器等指令)。
2.在具体实现中CPU状态分为:用户态(目态)和核心态(管态、内核态)。
3.操作系统内核:最低层(时钟管理、中断处理、设备驱动)。次高层(进程管理、存储器管理、设备管理等)。时钟管理:计时、进程切换(比如时间片轮转调度),中断处理:负责保护和恢复中断现场。原语(定义原语时关闭中断,使其不被打断)。
4.核心态用户态切换:发生中断(即外中断)或者异常(内中断、例外、陷入)时,允许用户态进入核心态,该过程会用到访管指令(不属特权)。中断返回指令(属于特权)可以核心转用户。
5.系统调用:在用户程序中,凡是与资源有关的操作,都需要通过系统调用方式向操作系统提出服务请求(用户不能直接执行对系统影响较大的操作),并让操作系统完成。系统调用功能大概为:设备管理、文件管理、内存管理、进程控制、进程通信。系统调用需要使用特权指令,必须运行在核心态。用户可以执行陷入指令来发起系统调用。

练习:
1.你能画出系统调用执行过程图吗?(p19)
2.你能举出一些用户态转核心态的例子吗?

1.4操作系统的体系结构

1.大内核:优点:主要功能模块都做一个整体运行在核心态,各模块之间共享信息。缺点:由于层次之间的交互关系复杂,定义清晰的层次间接口非常困难,层次之间的界限也很模糊,内核代码难以维护。
2.微内核:把基本功能保留在内核,其他功能移到用户态执行。有效分离了内核与服务、服务与服务,使得之间的接口更加清晰,操作系统的可靠性提升。注意:降低了系统的效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值