操作系统 知识点总结

进程管理

进程和线程

  • 进程是资源分配的单位。
  • 线程是独立调度的基本单位,是进程内部的一个执行序列。是进程划分的更小的运行单位。
  • 线程共享进程的堆和方法区(元空间),每个线程有自己的程序计数器、虚拟机栈和本地方法栈。

进程状态

5种状态:new, ready, running, waiting, terminated.

进程间通信

7种常见方式:管道/匿名管道(父子进程或兄弟进程间)、有名管道(实现本机任意两个进程通信)、信号、消息队列(消息的列表,存放在内核,克服了信号承载信息量少,管道只能承载无格式字节流以及缓冲区大小受限等缺陷)、信号量、共享内存、套接字(客户端和服务器之间)。

进程调度算法

  • 先到先服务
  • 短作业优先
  • 时间片轮转
  • 多级反馈队列调度
  • 优先级调度

进程同步

  • 概念:临界区、同步与互斥
  • 信号量解决同步问题
  • 管程:把同步互斥问题的代码独立出来
  • 经典问题:哲学家进餐、读者写者

其他

  1. 孤儿进程(父进程退出,子进程还在,没有危害),僵尸进程(子进程退出,父进程没有释放子进程信息,可能因为没有可用进程号导致不能产生新进程)
  2. 线程同步:互斥量、信号量、事件
  3. 实时系统(硬实时和软实时)

死锁

  • 必要条件:互斥、占有等待、不可抢占、环路等待

  • 处理方法

  1. 鸵鸟策略:Unix,Linux,Windows都采用
  2. 死锁检测和恢复
  3. 死多预防(破坏必要条件)
  4. 死锁避免:安全状态、银行家算法

内存管理

内存管理主要负责内存的分配和回收以及地址转换。

内存管理机制

  • 虚拟内存:让物理内存扩充成更大的逻辑内存,MMU管理地址空间和物理内存的转换

  • 连续:块式

  • 非连续

  1. 页式:页表(页和页框段映射表),页面号+偏移量。
  2. 段式:一个段构成一个独立地址空间,共享和保护。
  3. 段页式:先分成若干段,每段再分成若干页。
  • 快表TLB(加速虚拟地址到物理地址的转换)和多级页表(避免把全部页表一直放在内存中占用过多空间)。

  • 分页大小固定,分段大小不固定,段是逻辑信息的基本单位。分页是一维的,分段是二维的。

  • 内部碎片和外部碎片

  • 局部性原理:时间局部性和空间局部性

  • 页面置换算法

  1. OPT最佳
  2. FIFO先进先出
  3. LRU最近最久未使用
  4. LFU最少使用
  5. NRU最近未使用
  6. 第二次机会算法
  7. 时钟算法

存储管理

  • 磁盘结构:盘面、磁道、扇区、磁头、制动手臂、主轴。

  • 磁盘调度算法:

  1. 先来先服务
  2. 最短寻道时间优先(可能饥饿)
  3. 电梯算法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值