操作系统基础
什么是操作系统
管理计算机硬件和软件资源的计算机程序,操作系统不局限于计算机,手机,平板,电脑,管理硬件,提供用户交互的软件系统
操作系统的相关功能
- 操作系统统一管理着计算机资源
- 实现了对计算机资源的抽象
相关概念
并发性: 并行是指两个或者多个事件在同一时刻发生。并发是只两个或者多个事件在同一个时间间隔发生
共享性: 互斥共享形式 例如打印机 只能A打印完之后,b才能打印。同时访问形式 例如硬盘
虚拟性: 时分复用技术。空分复用技术
异步性
进程管理
概述: 一个进程有多个线程 一对多关系
进程状态
- 就绪状态:除了cpu之外,所有东西已经准备就绪
- 执行状态:获得了cpu的使用权
- 阻塞状态,其他设备未就绪而无法进行,从而放弃cpu的状态
进程间同步:
根源问题: 彼此之间没有通信
解决问题: 对竞争资源在多进程间进行使用次序的协调
四个原则
- 空闲让步:资源无占用,允许使用
- 忙则等待:资源有占用,请求进程等待
- 有限等待:保证有限等待时间能够使用资源
- 让权等待;等待时,进程需要让出cpu
linux的进程管理:
类型
- 前台进程: 具有终端,可以和用户交互的进程
- 后台进程: 没有占用终端,并且优先级比前台进程低
- 特殊的后台进(守护进程): 守护进程很多都是在系统引导的时候启动,一直运行到系统结束
linux进程标记
死锁
死锁产生的原因:
- 竞争资源
- 进程调度顺序不当
预防死锁的方法:
- 系统规定进程运行之前,一次性申请所有需要的资源
- 当一个进程请求新的资源得不到满足时,必须释放占有的资源
- 可用资源线性排序,申请必须按照需要递增申请 一步一步来
虚拟内存的概述
- 有些进程实质需要的内存很大,超过物理内存的容量
- 多到程序设计,使得每个进程可用物理内存更加稀缺
- 不可能无限增加物理内存,物理内存总有不够的时候
虚拟内存置换算法
- 先进先出算法(FIFO)
- 最不经常使用算法(LFU)
- 最近最少使用算法(LRU)
linux的存储管理
BUddy内存管理算法
内存分配原则
内存分配原则
linux交换空间
Linux文件
文件类型
io设备