1.什么是操作系统?操作系统在计算机系统中有什么作用?
(1)操作系统是用户与计算机硬件之间的接口,是计算机资源的管理者
(2)内存管理功能
进程管理功能
设备管理功能
文件管理功能
2.单道批处理,多道批处理,分时系统的特点及优缺点,实时系统的特点
单道:
特点:自动性,顺序性,单道性
优点:减少等待人工操作的时间
缺点:(1)作业独占cpu (2)cpu等待I/O使得cpu利用率低
多道:
特点:无序性,多道性,调度性,复杂性
优点:cpu利用率高,内存、I/O利用率高,吞吐量高
缺点:平均周转时间长(相比于单道)
分时:
特点:多路性,独立性,及时性,交互性
优点:(1)提供人机交互 (2) 多终端共享主机
缺点:
(1).可靠性问题:由于多个用户共享系统资源,当一个用户发生错误或崩溃时,可能会影响其他用户的操作和系统的稳定性。
(2). 安全性问题:分时系统中存在多个用户同时访问系统资源的情况,这可能导致安全隐患,如数据泄露和非法访问等。实时:
特点:即时性,可靠性
3.内存管理有哪些主要功能?
内存分配回收; 内存保护; 地址映射; 内存扩充;
4.进程管理具有哪些主要功能?
进程控制 进程同步 进程通信 进程调度 死锁处理
5.设备管理具有哪些主要功能?
缓冲管理; 设备分配; 设备处理; 虚拟设备; 磁盘调度
6.文件管理有哪些主要功能?
文件的按名访问(目录管理) 文件存储空间(外存)的管理
读写管理 存取控制
7.说明指令执行的过程。
- 取指:根据PC内容,从内存中取出指令,存储到指令寄存器(IR)中。
- 指令译码:CPU将指令寄存器IR中的指令进行解析,确定执行当前指令所需的操作。
- 执行:根据指令寄存器IR中的操作码和操作数,进行相应运算和处理
9.什么是实时计算?什么是实时系统?(暂无答)
10.操作系统发展的过程是什么?发展的原因或者动力是什么?
第一代计算机(1945--1955):真空管与插件板
第二代计算机(1955--1965):晶体管和批处理系统
第三代计算机(1965--1980):集成电路芯片和多道程序系统
第四代计算机(1980-1990):微机操作系统 实时系统的出现
11.操作系统具有哪些特征?什么是并发?什么是共享?它们有什么关系?
(1)并发,共享,虚拟,异步
(2)并发:两个或多个事件在同一时间间隔内发生
(3)共享:系统中的资源可供内存中多个并发执行的进程共同使用
13.以printf的执行为例说明操作系统提供了应用程序开发的方便性、操作系统屏蔽了硬件细节的作用。(暂无答)
14.举例说明为什么多道程序系统与单道程序系统相比作业的平均周转时间变长而系统的吞吐量变大?(暂无答)
15.为什么编译器生成逻辑地址?为什么要进行地址映射?
答:
(1)(暂无答)
(2)地址映射是为了将逻辑地址转换成物理地址,使程序能正确访问内存中的数据
16.什么是物理地址?物理内存的编址单位是什么?如何定位一个内存单元?
答:
(1),物理地址是计算机中内存单元的实际地址,由硬件直接产生 / 内存中各物理存储单元的地址从统一的基地址进行的顺序编址
(2),字节,每个内存单元都有一个唯一的物理地址
(3),定位一个内存单元需要知道其物理地址,可通过内存地址映射表/直接访问内存控制器来实现
17.什么是逻辑地址?逻辑地址是怎么产生的?“CPU已知的是逻辑地址”是什么含义?
答:
(1),程序员在编写程序时使用的地址 / 用户程序经编译后,每个目标模块以0为基地址进行的顺序编址
(2),由程序员在编写程序时所定义
(3),CPU在执行指令时,首先处理的是逻辑地址。然后,通过内存管理单元(MMU)将逻辑地址转换为物理地址。
18.什么是逻辑地址空间?为什么链接器不能直接生成与物理地址一致的逻辑地址以避免地址变换?
答:
(1),逻辑地址空间是指:程序在运行时使用的地址空间
(2),因为程序在运行时可能会被加载到不同的物理地址上,如果链接器直接生成与物理地址一致的逻辑地址,那么程序就无法在不同的物理地址上运行。
19.请简要说明操作系统为应用程序的执行做了哪些工作?
20.程序顺序执行,并发执行的特点,进程特征
答:
(1)顺序性,封闭性,可再现性
(2)间断性 ,多个程序共享系统资源(失去封闭性) ,不可再现性
(3)并发性,动态性,独立性,异步性
失去封闭性:进程的执行速度不同改变它的执行结果。
21.进程定义
答:
(1)进程是允许并发执行的程序在某个数据集合上的执行过程
(2)进程是由用户数据、系统数据和程序构成的实体
cpu硬件上下文
内部CPU寄存器:
1,程序计数器(PC)----存指令地址
2,指令寄存器(IR) ----存正在执行的指令
3,累加器(AC) ----临时存储体和累加操作
逻辑地址:逻辑磁盘块号(簇号)
物理地址:柱面号(哪个磁道)、磁头号(哪个盘片)、扇区号
文件系统---根据文件名获得文件的逻辑磁盘块号。
设备驱动程序(或磁盘控制器)---将逻辑磁盘块号转化为柱面号、磁头号、扇区号。
磁盘的组织与文件的存放:2^n个连续的扇区构成一个逻辑磁盘块
进程控制块(PCB)特征:
常驻内存、只有内核程序可以访问、标识进程的存在。
操作系统如何利用进程控制块管理进程?
1,给进程控制块中设置进程优先权字段,存放进程优先权值,利用该字段比较进程的优先权,把cpu分配给优先权最高的进程
2,运行的进程在cpu上运行的剩余时间:
内核在进程控制块中设置time_slice字段记录进程在cpu上的剩余时间,
(1)进程开始运行时,内核为time_slice赋初值
(2)产生一次时钟中断时,当前运行进程的time_slice值减1
程序并发执行的方式:多个程序分 时使用多CPU或单CPU
进程组织方式
队列,结构数组
进程通信
通过“增加页表项/段表项”可将同一片共享内存区映射到各个进程的地址空间中
为避免出错,各个进程对共享空间的访问是互斥的
各个进程可使用操作系统内核提供的同步互斥工具(如P,V操作)
基于存储区的共享:操作系统在内存中划出一块共享存储区,数据的形式、存放位置都由通信进程控制,而不是操作系统。这种共享方到速度很快,是一种高级通信方式。
基于数据结构的共享:比如共享空间里只能放一个长度为10的数组。这种共享方式速度慢、限制多,是一种低级通信方式
进程阻塞过程
①暂停进程的执行,将进程的状态改为阻塞态(修改PCB中进程状态字段的值)
②将进程插入相应的阻塞队列 (将进程控制块PCB插入到阻塞队列中)
③执行进程调度程序 (安排被阻塞的进程释放出来的CPU给下一个进程使用)
系统引导过程
1,执行BIOS程序将BOOT程序加载入内存
2,执行BOOT程序,从外存找到Loader程序,将其加载入内存,并执行该程序
3,Loader程序将内核程序(操作系统OS)从外存加载入内存
4,内核开始执行-
允许有多个分区和引导不同的操作系统怎么办???
硬盘第一个扇区:存放主引导记录(包含磁盘引导程序和分区表)。
磁盘引导程序:用于选择要引导哪个分区的操作系统
分区表:记录硬盘上各分区的位置等描述信息。
硬盘被划分成若干个分区,每个分区的第一个扇区存放分区引导程序,用于引导该分区中的操作系统。
-
1,执行BIOS程序
2,执行主引导扇区中的磁盘引导程序
3,执行活动分区中的BOOT程序、内核加载程序
4,执行OS内核程序
中断:与CPU芯片内外部硬件电路产生的电信号相对应,本质是电信号(传送给CPU)
中断信号的产生和传输:由硬件完成
中断处理:由os完成
内部中断(同步中断或异常) 除法出错、调试、溢出、浮点出错、页故障 …
外部中断(异步中断) I . 外部可屏蔽中断(I/O设备产生的中断)
II. 外部不可屏蔽中断(紧急事件引起的中断,如硬件故障)
中断响应
响应外部中断的条件:开中断
响应外部中断的时机:CPU每执行完一条指令
内部中断(异常):产生中断时响应
中断机制中通过OS做的事情:
初始化中断向量表
初始化中断向量表寄存器
进行中断处理
操作系统的时钟机制
操作系统内核需要完成的定时测量功能:
1.保存当前的日期和时间;
2.维持定时器。
如何实现?
1.操作系统依靠时钟硬件(可编程间隔定时器)
2.时钟软件(时钟驱动程序)