总结:操作系统相关知识

操作系统引论

操作系统是控制计算机硬软件资源,合理组织计算机工作流程, 以便更有效的利用这些资源为用户提供一个功能强大,使用方便的工作环境的程序模块的集合。
操作系统的作用
1.OS作为用户与计算机硬件系统之间的接口
2.OS作为计算机系统资源的管理者。
3.OS作为扩充机器
实时系统、分时系统
我们平常使用的都是分时系统,分时系统主要提高资源的利用率和吞吐量。
实时系统主要是系统能及时响应外部事件的请求,在规定时间内进行对时间的处理,并控制所有实时任务协调一致的进行。
常见的实时系统有:飞机或火车的订票系统,情报检索系统等。
==操作系统的基本特性==:
并发 共享 虚拟 异步性
==操作系统的主要功能==:
- 处理机管理功能:进程控制 进程同步 进程通信 调度
- 存储器管理功能:内存分配 内存保护 地址映射 内存扩充
- 缓冲管理:设备分配 设备处理
- 文件管理功能:文件存储空间的管理 目录管理 文件的读/写管理和保护
- 用户接口:命令接口 程序接口 图形接口

进程管理

进程==是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位==
引入进程的原因是为了能使多个程序能够并发执行,提高资源的利用率和吞吐量。

进程由程序段、相关数据段、和PCB组成。PCB就是进程控制模块,是操控进程的主要功能模块。

进程的三种基本状态:就绪状态、执行状态、阻塞状态。
==知识点== :进程转换之间,就绪态不能转换成阻塞态,阻塞态不能转换成就绪态
操作系统引入挂起状态的原因:
1.终端用户的请求
2.父进程的请求
3.负荷调节的需要
4.操作系统的需要
PCB是进程试题的一部分,是操作系统中最重要的纪录型数据结构。OS是根绝PCB来对并发执行的进程进行控制和管理的。
引入线程的目的是为了更好的实现操作系统的并发性,更好的减少程序在执行并发运行时所付出的开销。

处理机调度与死锁

==主要的调度算法==
1.先来先服务调度算法
先来先服务调度调度算法是最简单的调度算法,对于频繁进行I/O繁忙型进程作业不利
2.短作业(进程)优先调度算法
短作业算法就是对短作业或短进程优先的调度算法
缺点:对长作业算法不利;没有考虑到作业的紧迫程度,作业长短用户无法准确预估。
3.优先权调度算法
引入 优先权的概念,指导程序按照优先权进行调度处理
4.高相应比有限调度算法
优先权=(等待时间+要求服务时间)/要求服务时间
相应的响应比跟优先权一样。
缺点就是,计算优先权的时候,需要增加操作系统的消耗
5基于时间片的轮转调度算法
时间片轮转法、多级反馈队列调度算法
==死锁==
产生死锁的原因:(1)竞争资源(2)进程间推进顺序非法
产生死锁的必要条件:
(1)互斥条件(2)请求和保持条件(3)不剥夺条件(4)环路等待条件
预防死锁的方法:
预防死锁的条件就是要摒弃产生死锁的四个必要条件。
==利用银行家算法避免死锁==
死锁的检测与解除
检测:资源分配图
死锁的解除:剥夺资源、撤销进程。

存储器管理

基本分页存储管理方式:
地址结构 ==页号+偏移量==
基于页的存储管理方式,就是在地址的时候,牺牲一些字段,来记录页号,让进程能够更快的找到内容存放的地址,分页存储管理的方式也可以设计二级表,具体类似于子网划分的模式。
基本分段存储管理方式
引入分段存储管理方式的目的主要是为了满足用户在编程和使用上多方面的要求。
地址结构:==段号+段内地址==

分段存储的结构和分页分出结构的主要区别是分块的大小问题,比如一个存储的内容,如果按照分页存储的方法,可能最后的一页只有一点点的使用,但是由于程序的完整性,所以这个页面的利用率就超级低,这样的话,我们用分段存储的结构就好很多。

页面置换算法
在进程运行的过程中,如果我们要访问的页面不在内存中,我们就需要将访问的页面调入内存内,但是此时若内存没有空闲的空间,为了保证程序的正常运行,我们就需要从内存中调出一页的程序来满足需要。==置换算法的好坏,将直接影响一个系统的性能==
常用置换算法:
最佳置换算法:就是置换出来的页面是以后不会再使用到的页面,这个是高效的置换算法,但是在实际情况下,我们无法知晓程序以后的运行情况,因此这个置换算法是无法实现的。
先进先出页面置换算法:算法就是置换最先进入内存的页面。就是说在内存中滞留时间越久就越有可能被置换出来。
最近最久未使用置换算法: LRU置换算法是选择最近最久未使用的页面进行淘汰。这个算法需要额外的硬件支持。
Clock置换算法:最简单的Clock算法,只需将每页设置一个访问位,再将内存中的所有页面通过链接指针接成一个循环队列,当某页被访问时,其访问位被置1.置换算法在选择一页淘汰时,只需检查也的访问位,如果是0,就选择该页换出,若为1,则重新将它置0.
Clock置换算法改进算法:这个算法增加了修改位,在置换的过程中,选择没有访问且没有修改的页面,保留被访问且被修改的页面。
其他置换算法:最少使用置换算法 页面缓冲算法

设备管理

==明确一个事情就是,设备并不直接用CPU通信,而是与设备控制器通信==
SPOOLing技术:理解起来就是通过这个技术,将物理的i/o设备虚拟成多个逻辑I/O设备,允许多个用户共享一台I/O设备。
磁盘调度算法
先来先服务FCFS,根据进程请求访问磁盘的先后次序进行调度。
最短寻道时间优先SSTF:访问的磁道距离最近,时间最短==这个算法可以产生“饥饿”问题
SCAN算法电梯算法,电梯的方向只有一个方向,所以调度即距离最近且移动方向一致的位置。
CSCAN算法电梯算法的改进算法,只是这个算法保证了方向能有一个方向,也就是方向是一个循环,这个方法主要是改进了 分布在两段的页面调度优势低的问题。
==提高磁盘I/O速度的方法==
1.提前读;2.延迟写;3.优化物理块的分布;4.虚拟盘

文件管理

感觉能考的东西不是很多,其他的好多技术都没有实现,只是会考一个点UNIX、LINUX平台的连接数问题:
在UNIX系统中,共享文件会有一个连接数count值,这个链接计数决定了,一些文档不能直接删除,若文件的连接数不为0,那么用户在删除文件的时候,只是删除了该用户指向文件的连接,并不能删除文件系统中的文件,只有到count数量为0时,文件才被删除。

操作系统接口

系统接口就是用户控制操作系统的接口。
PS:操作系统控制硬件的接口是“进程线程”

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值