目录
操作系统复习
第1章 操作系统概论
第2章 处理器管理
第3章 同步、通信与死锁
信号量与PV操作:p134
死锁
第4章 存储管理
第5章 设备管理
参考书目:
首页 运维 linux运维 操作系统技巧总结

操作系统技巧总结

Jul 20, 2017 pm 05:48 PM
复习 操作系统 笔记

操作系统复习

第1章 操作系统概论

定义:管理系统资源、控制程序执行、改善人机界面、提供各种服务,并合理组织计算机工作流程和为用户方便有效的使用计算机提供良好运行环境的一种系统软件。
功能:处理器管理、存储管理、设备管理、文件管理、联网和通信管理
特性:并发性、共享性(1.透明资源共享 2.独占资源共享)、异步性
分类:批处理操作系统、分时操作系统、实时操作系统

第2章 处理器管理

进程定义:进程是具有独立功能的程序在某个数据集合上的一次运行活动,也是操作系统进行资源分配和保护的基本单位。
进程状态和转换:p73
三态模型:运行态、就绪态、等待态
五态模型:新建态、终止态提出的原因?
要求会画图,解释某些转换是不存在的。

引入多线程的动机:减少程序并发执行时所付出的时空开销,使得并发颗粒度更细、并发性更好。
线程的优点:快速线程切换、通信易于实现、减少管理开销、并发程度提高

PCB(Process Control Block)进程控制块:进程存在的唯一标识,是操作系统用来记录和刻画进程状态及环境信息的数据结构,是进程动态特征的汇集,也是操作系统掌握进程的唯一资料结构和管理进程的主要依据。p75

TCB的概念?
动态/静态 优先级?

处理器调度:p101 例题

  1. 先来先服务算法

  2. 最短作业优先算法(概念)

  3. 最短剩余时间优先算法

  4. 最高响应比优先算法(概念)

第3章 同步、通信与死锁

佰恩斯坦条件?Bernstein(简答)

死锁:一组进程因争夺资源陷入永远等待的状态。
饥饿:一个可运行进程由于其他进程总是优先于它,而被调度程序无限期的拖延而不能被执行。

进程同步:为完成共同任务的并发进程基于某个条件来协调其活动,因为需要在某些位置上排定执行的先后次序而等待、传递信号或消息所产生的协作制约关系。

临界区:并发进程中与共享变量有关的程序段。
临界资源:共享变量所代表的资源,即一次仅能供一个进程使用的资源。
临界区调度的三个原则(互斥使用,有空让进;忙则要等,有限等待;择一而入,算法可行。):

  1. 一次至多只有一个进程进入临界区内执行。

  2. 如果已有进程在临界区中,试图进入此临界区的其他进程应等待。

  3. 进入临界区内的进程应在有限时间内退出,以便让等待队列中的一个进程进入。

实现临界区管理的软件算法:
分析

  1. 是否会出问题?

  2. 何时出?

实现临界区管理的硬件设施:

  1. 关中断

  2. 测试并设置指令

  3. 对换指令

信号量与PV操作:p134

pv操作定义(一元、一般)?
综合题:

  1. 5位哲学家就餐问题 (无死锁解法) p139

  2. 生产者-消费者问题(多对多、多缓冲区)p140

  3. 读者-写者问题 p141

  4. 理发师问题 p142

  5. 和尚打水

死锁

定义:如果一个进程集合中的每个进程都在等待只能由此集合中的其他进程才能引发的事件,而无限期的陷入僵持的局面。
产生的条件:

  1. 互斥条件

  2. 占有和等待条件

  3. 不剥夺条件

  4. 循环等待条件

死锁避免:综合题15分
银行家算法的数据结构 p163
算法描述:

  1. T0时刻的安全序列

  2. 进程P1请求资源(能否满足?为什么?)

第4章 存储管理

程序的链接种类:(填空)

  1. 静态链接

  2. 动态链接

  3. 运行时链接

静态地址重定位:由装载程序实现装载代码的加载和地址转换,把它装入分配给进程的内存指定区域,其中的所有逻辑地址修改成内存物理地址。
动态地址重定位:由装载程序实现装载代码模块的加载,把它装入分配给进程的内存指定区域,但对链接程序处理过的应用程序的逻辑地址则不做任何修改,程序内存起始地址被置入硬件专用寄存器——重定位寄存器。程序执行过程中,每当cpu引用内存地址(访问程序和数据)时,由硬件截取此逻辑地址,并在它被发送到内存之前加上重定位寄存器的值,以便实现地址转换。

分页存储管理 p206
概念:

  1. 页面

  2. 页框

  3. 逻辑地址

  4. 内存页框表

  5. 页表

分页/分段 动态链接库的实现原理?(说明+画图)

综合题:

  1. 给出逻辑地址,求物理地址?(画图)

  2. 给出逻辑地址、页面大小,计算物理地址?

分段和分页的比较(简答):
分段是信息的逻辑单位,由源程序的逻辑结构及含义所决定,是用户可见的,段长由用户根据需要来确定,段起始地址可从任何内存地址开始。在分段方式中,源程序(短号、段内位移)经链接装配后仍保持二维(地址)结构,引入目的是满足用户模块化程序设计的需要。
分页是信息的物理单位,与源程序的逻辑结构无关,是用户不可见的,页长由系统(硬件)确定,页面只能从页大小的整数倍位置开始。在分页方式中,源程序(页号、页内位移)经链接装配后变成一维(地址)结构,引入目的是实现离散分配并提高内存利用率。

缺页中断率 p223
概念:不成功访问次数?
画图,求缺页中断率? p229

第5章 设备管理

I/O控制方式:(填空)

  1. 轮询方式

  2. 中断方式

  3. DMA方式

  4. 通道方式

缓冲技术:
单缓冲 p265
双缓冲 p266

搜查定位:(例题、简答)p270

  • 先来先服务算法

  • 最短查找时间优先算法

  • 扫描算法

  • 电梯调度算法

  • 循环扫描算法

参考书目:

-《操作系统教程(第五版)》费翔林、骆斌著 高等教育出版社

以上是操作系统技巧总结的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

无法从终端访问 mysql 无法从终端访问 mysql Apr 08, 2025 pm 04:57 PM

无法从终端访问 MySQL 可能是由于:MySQL 服务未运行;连接命令错误;权限不足;防火墙阻止连接;MySQL 配置文件错误。

无法以 root 身份登录 mysql 无法以 root 身份登录 mysql Apr 08, 2025 pm 04:54 PM

无法以 root 身份登录 MySQL 的原因主要在于权限问题、配置文件错误、密码不符、socket 文件问题或防火墙拦截。解决方法包括:检查配置文件中 bind-address 参数是否正确配置。查看 root 用户权限是否被修改或删除,并进行重置。验证密码是否准确无误,包括大小写和特殊字符。检查 socket 文件权限设置和路径。检查防火墙是否阻止了 MySQL 服务器的连接。

oracle数据库怎么创建 oracle数据库怎么建库 oracle数据库怎么创建 oracle数据库怎么建库 Apr 11, 2025 pm 02:36 PM

创建Oracle数据库,常用方法是使用dbca图形化工具,步骤如下:1. 使用dbca工具,设置dbName指定数据库名;2. 设置sysPassword和systemPassword为强密码;3. 设置characterSet和nationalCharacterSet为AL32UTF8;4. 设置memorySize和tablespaceSize根据实际需求调整;5. 指定logFile路径。 高级方法为使用SQL命令手动创建,但更复杂易错。 需要注意密码强度、字符集选择、表空间大小及内存

mysql 能处理多个连接吗 mysql 能处理多个连接吗 Apr 08, 2025 pm 03:51 PM

MySQL能处理多个并发连接,利用多线程/多进程为每个客户端请求分配独立执行环境,确保不受干扰。但并发连接数量受系统资源、MySQL配置、查询性能、存储引擎和网络环境影响。优化需要考虑代码层面(编写高效SQL)、配置层面(调整max_connections)、硬件层面(提升服务器配置)等多方面因素。

mysql 是否要付费 mysql 是否要付费 Apr 08, 2025 pm 05:36 PM

MySQL 有免费的社区版和收费的企业版。社区版可免费使用和修改,但支持有限,适合稳定性要求不高、技术能力强的应用。企业版提供全面商业支持,适合需要稳定可靠、高性能数据库且愿意为支持买单的应用。选择版本时考虑的因素包括应用关键性、预算和技术技能。没有完美的选项,只有最合适的方案,需根据具体情况谨慎选择。

可以在同一台服务器上安装 mysql 和 mariadb 吗 可以在同一台服务器上安装 mysql 和 mariadb 吗 Apr 08, 2025 pm 05:00 PM

可以在一台服务器上同时安装MySQL和MariaDB,以应对不同项目对特定数据库版本或功能的需求。需要注意以下细节:端口号不同;数据目录区分开;合理分配资源;监控版本兼容性。

mysql 可以在 android 上运行吗 mysql 可以在 android 上运行吗 Apr 08, 2025 pm 05:03 PM

MySQL无法直接在Android上运行,但可以通过以下方法间接实现:使用轻量级数据库SQLite,由Android系统自带,无需单独服务器,资源占用小,非常适合移动设备应用。远程连接MySQL服务器,通过网络连接到远程服务器上的MySQL数据库进行数据读写,但存在网络依赖性强、安全性问题和服务器成本等缺点。

Linux实际上有什么好处? Linux实际上有什么好处? Apr 12, 2025 am 12:20 AM

Linux适用于服务器、开发环境和嵌入式系统。1.作为服务器操作系统,Linux稳定高效,常用于部署高并发应用。2.作为开发环境,Linux提供高效的命令行工具和包管理系统,提升开发效率。3.在嵌入式系统中,Linux轻量且可定制,适合资源有限的环境。

See all articles