山东大学操作系统考点.pdf
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
### 山东大学操作系统考点知识点总结 #### 第一章:TLB、OS、页表、硬件的关系,中断在OS的地位,分布式概念 - **TLB(Translation Lookaside Buffer)**: - TLB是用于加快虚拟地址到物理地址转换速度的一种高速缓存。 - 它保存了最近使用的页表项,从而减少了访问主存获取页表项的次数。 - TLB通过硬件实现,当处理器执行地址转换时自动查询。 - **OS与页表**: - 操作系统通过页表管理内存。 - 页表记录了虚拟地址空间中每一页对应的物理地址。 - OS负责更新页表,确保虚拟地址映射正确。 - **OS与硬件**: - 操作系统作为软件与硬件之间的桥梁。 - 它直接控制硬件资源,如处理器、内存等,并为用户提供统一的界面。 - 操作系统通过设备驱动程序与特定硬件交互。 - **中断在OS中的作用**: - 中断是硬件向处理器发出的信号,用于通知处理器发生了某些事件或条件。 - 在操作系统中,中断是处理外部事件的基础。 - 中断处理程序通常由操作系统提供,用于响应各种硬件事件,如输入/输出完成、定时器到期等。 - **分布式系统概念**: - 分布式系统是由多台计算机组成的网络系统,这些计算机通过网络相互连接并共享资源。 - 特征包括透明性、并发性、容错性等。 - 操作系统需要支持分布式环境下的通信和服务。 #### 第二章:OS服务与功能的区别,用户OS接口,OS应用程序接口,OS硬件程序接口,系统调用与API区别,策略与机制分离原则,分层式操作系统、微内核操作系统主要优缺点,虚拟机、进程、JVM关系,系统启动引导过程 - **OS服务与功能的区别**: - 功能指操作系统的具体能力,如文件管理、进程管理等。 - 服务则是操作系统为应用程序提供的抽象层,使开发者可以更简单地使用这些功能。 - **用户OS接口**: - 用户界面是操作系统为最终用户提供的交互手段,包括命令行界面和图形用户界面。 - 用户可以通过这些界面启动程序、管理文件等。 - **OS应用程序接口(API)**: - API定义了应用程序如何请求操作系统的服务。 - 它是一组函数和过程,应用程序通过它们调用操作系统功能。 - **OS硬件程序接口**: - 指操作系统与硬件之间交互的接口。 - 包括设备驱动程序等,用于控制硬件设备。 - **系统调用与API区别**: - 系统调用是操作系统提供的低级接口,直接与内核交互。 - API是更高层次的接口,通常包含一系列系统调用的封装,简化了应用开发。 - **策略与机制分离原则**: - 策略是指如何做决策,而机制是指执行决策的具体方法。 - 分离原则强调将决策制定与实际执行分开,提高系统的灵活性和可维护性。 - **分层式操作系统与微内核操作系统**: - **分层式操作系统**: - 通过多个层次构建,每一层建立在下一层之上。 - 优点是结构清晰,易于理解和维护。 - 缺点是效率较低,因为每一层之间的通信开销较大。 - **微内核操作系统**: - 只保留最核心的功能在内核中,其他服务运行在用户空间。 - 优点是模块化强,易于扩展。 - 缺点是对性能有一定影响,因为用户空间与内核空间的切换开销较大。 - **虚拟机、进程、JVM关系**: - **虚拟机**是一种模拟真实机器的软件,可以在其上运行操作系统或应用程序。 - **进程**是正在运行的程序实例,拥有独立的地址空间。 - **JVM(Java Virtual Machine)**是一种特定类型的虚拟机,用于执行Java字节码。 - 这三者之间存在层次关系:进程可以包含多个JVM,每个JVM可以运行多个虚拟机实例。 - **系统启动引导过程**: - 开机后,首先执行BIOS固件程序。 - BIOS加载启动引导程序(如GRUB)。 - 启动引导程序加载操作系统内核。 - 内核初始化,加载必要的驱动程序和服务。 - 最终呈现给用户的是操作系统桌面环境或命令行界面。 #### 第三章:进程与线程的概念、地位;进程间通信 - **进程与线程的概念**: - **进程**:一个正在执行的应用程序实例,拥有独立的内存空间。 - **线程**:进程内的执行单元,共享进程的资源,但有自己的栈和寄存器状态。 - **地位**:进程是系统资源分配的基本单位,而线程是CPU调度的基本单位。 - **进程间通信(IPC)**: - IPC允许不同进程之间交换数据和同步执行。 - 方法包括管道、消息队列、信号量、共享内存等。 - 有效实现IPC对于构建高效、可扩展的应用程序至关重要。 #### 第四章:为什么一个进程有多个线程,这样做有什么好处?用户级线程与内核级线程的区别与联系 - **为什么一个进程有多个线程**: - 提高并发性:允许多个线程同时执行。 - 资源共享:线程共享同一进程的内存空间,减少资源消耗。 - 代码重用:可以更容易地重用代码逻辑。 - **用户级线程与内核级线程的区别**: - **用户级线程**: - 由应用程序或库管理,不涉及内核。 - 切换速度快,但缺乏内核支持可能导致性能瓶颈。 - **内核级线程**: - 由操作系统内核管理。 - 支持更复杂的调度策略,但切换速度较慢。 - **联系**: - 都是为了提高程序的并发执行能力。 - 可以混合使用,即一个进程中既有用户级线程也有内核级线程。 #### 第五章:CPU调度策略,bursttime,调度原则,调度算法(7种)特点,优缺点,Gantt图 - **CPU调度策略**: - 选择合适的算法来决定哪个进程(或线程)获得CPU时间。 - 目标是最大化CPU利用率,公平分配资源。 - **bursttime**: - CPU执行一个任务所需的时间。 - 用于衡量进程执行的速度和效率。 - **调度原则**: - 公平性:确保所有进程都能得到合理分配的CPU时间。 - 响应时间:最小化用户的等待时间。 - 吞吐量:单位时间内完成的任务数量。 - 资源利用率:最大化硬件资源的使用率。 - **调度算法**: - **先来先服务(FCFS)**:按到达顺序调度进程。 - **短作业优先(SJF)**:优先调度执行时间短的进程。 - **时间片轮转(RR)**:为每个进程分配固定时间片。 - **优先级调度**:根据优先级高低调度进程。 - **最短剩余时间优先(SRTF)**:动态调整优先级,剩余时间最短的优先执行。 - **多级反馈队列(MFQ)**:不同队列有不同的调度策略。 - **多级队列(MQ)**:按照进程类型分配队列。 - **Gantt图**: - 一种图表形式,显示进程在时间轴上的执行情况。 - 用于可视化调度策略的效果。 #### 第六章:同步的原因,硬件实现同步的方式Swap,TestAndSet指令,会编程(如何使用上述指令进行同步),关中断的问题,会使用信号量(wait/signal)编程序,原语为什么关中断没有问题,临界区与原语的区别,事务与原语区别,编程:同步问题,管程实现哲学家就餐问题 - **同步的原因**: - 保护共享资源不被同时修改。 - 保证数据一致性。 - 避免竞态条件。 - **硬件实现同步**: - **Swap指令**:用于原子地交换内存中的值。 - **TestAndSet指令**:测试并设置变量值,用于实现互斥。 - **关中断的问题**: - 关闭中断可以防止中断发生时改变处理器的状态,但在长时间关中断时可能导致其他任务无法及时响应。 - **使用信号量(wait/signal)编程**: - 信号量是用于协调进程间的同步机制。 - wait操作减少信号量计数器,signal操作增加信号量计数器。 - **原语**: - 不可分割的操作。 - 在执行过程中不允许被打断。 - **临界区与原语的区别**: - **临界区**:一段代码,在执行时不允许其他进程或线程干扰。 - **原语**:操作系统中不可中断的操作。 - **事务与原理的区别**: - **事务**:一组必须作为一个整体成功或失败的操作。 - **原语**:操作系统级别的不可中断的操作。 - **管程实现哲学家就餐问题**: - 管程是一种高级同步机制,用于封装共享资源和相关的方法。 - 在解决哲学家就餐问题时,可以使用管程来管理餐叉的访问权,确保不会发生死锁。 #### 第七章:死锁概念,特征(4),解决方案(3),预防机制与避免机制的区别,银行家算法,死锁检测算法与避免算法的区别,恢复死锁的方式(2) - **死锁概念**: - 多个进程互相等待对方持有的资源,导致无限等待的状态。 - 特征包括:互斥条件、保持并等待条件、非抢占条件、循环等待条件。 - **解决方案**: - **预防**:通过设计规则阻止至少一个必要条件成立。 - **避免**:在资源分配前检查是否会导致死锁。 - **检测与恢复**:定期检查系统状态,一旦发现死锁则采取措施恢复。 - **预防机制与避免机制的区别**: - **预防**:完全避免死锁的发生,可能过于保守。 - **避免**:允许暂时进入可能的状态,通过算法确保系统安全。 - **银行家算法**: - 一种避免死锁的算法。 - 根据当前资源分配和进程需求预测未来状态,确保不会进入不安全状态。 - **死锁检测算法与避免算法的区别**: - **检测**:定期检测系统状态,找出死锁状态。 - **避免**:在资源分配前就判断是否会进入死锁状态,提前阻止。 - **恢复死锁的方式**: - **资源剥夺**:从某个或某些进程中剥夺资源,使其释放已占有的资源。 - **撤销进程**:终止一个或多个进程,以解除死锁状态。 #### 第八章:swapping,内存连续分配的优缺点,离散分配的优缺点,分页分段的概念区别优缺点。地址变换过程 - **swapping**: - 将内存中的进程页面交换到磁盘上,以腾出内存空间。 - 用于管理内存不足的情况。 - **内存连续分配的优缺点**: - **优点**:实现简单,便于地址转换。 - **缺点**:容易产生碎片,内存利用率不高。 - **离散分配的优缺点**: - **优点**:减少内存碎片,提高内存利用率。 - **缺点**:地址转换复杂,需要额外的硬件支持。 - **分页与分段**: - **分页**:将内存划分为固定大小的页面。 - **分段**:根据逻辑结构将内存划分为可变大小的段。 - **区别**: - 分页侧重于内存管理,而分段侧重于程序的逻辑结构。 - 分页提供更好的内存利用,分段提供更好的编程模型。 - **地址变换过程**: - 逻辑地址通过页表转换为物理地址。 - 如果使用段式管理,则先将逻辑地址转换为段地址,再转换为物理地址。 #### 第九章:虚拟存储器意义及其实现方式,请求式分页系统与分页式系统区别,CPU与请求分页系统,写时复制,置换策略及其优缺点,颠簸的原因 - **虚拟存储器的意义**: - 扩展物理内存容量。 - 允许进程使用比实际物理内存更多的内存。 - 提高内存利用率和程序的执行效率。 - **请求式分页系统与分页式系统区别**: - **请求式分页**:只在需要时才将页面加载到内存中。 - **分页式系统**:所有页面都预先加载到内存中。 - **CPU与请求分页系统**: - CPU在执行指令时检查页表,如果发现页面不在内存中,则触发缺页中断。 - 操作系统负责将所需的页面从磁盘加载到内存中。 - **写时复制**: - 一种优化技术,仅在修改页面时才创建该页面的副本。 - 减少不必要的复制操作,提高效率。 - **置换策略**: - 选择哪些页面从内存中移除,以便为新页面腾出空间。 - 常见策略包括LRU(最近最少使用)、FIFO(先进先出)等。 - **颠簸的原因**: - 内存使用不当,频繁地替换页面进进出出。 - 常见于内存不足的情况下,导致系统性能大幅下降。
- ocarina11112024-07-07支持这个资源,内容详细,主要是能解决当下的问题,感谢大佬分享~
- 粉丝: 895
- 资源: 4166
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于java的学生信息管理系统(含学生成绩管理系统)源码.zip
- 秋招笔试和面试,你准备好了吗?
- Java项目设计资源指南
- C#项目设计资源基础指南
- 全桥LLC开关电源,单片机TMS320F28034 硬件原理图,开环仿真模型,控制源代码,主拓扑硬件计算
- 智航24级51单片机学习.zip
- 基于ISWT的OFDM系统设计仿真案例 matlab源代码 代码有详细注释,完美运行
- 主动道避撞控制:基于五次多项式的道轨迹规划方法 首先,通过计算紧急转向避撞的临界纵向安全距离,确定五次多项式起点 基于此,建
- Python项目设计资源指南
- OFDM UWB系统基于训练序列的同步算法 matlab源代码 代码有详细注释,完美运行