操作系统

2020-03-15  本文已影响0人  知而乐者

什么是操作系统

1、是计算机硬件和应用之间的一层软件
2、方便我们使用硬件,如使用显存... 高效的使用硬件,如开多个终端(窗口)


图片.png

CPU管理

CPU核心就是取指执行,指针就是PC指针,指令就是内存中的汇编指令。
程序纯计算的执行时间和中间参杂io等操作的执行时间相差特别大,不同的程序串行执行的话效率就很慢,CPU利用率会很差,所以引入了多进程的概念。当程序需要等待的时候进行下一个程序的执行


image.png

并行程序执行会有很多问题需要一一的去解决

权限问题

程序直接调用系统函数拿到系统信息,通过一个标志为将程序分为内核态和用户态

image.png
如何调用:
image.png

状态问题

一个程序执行过程中切换到另一个程序,cpu中的寄存器等都会设置为另一个进程的数据。此时切换回当前程序时,寄存器就需要恢复之间运行时候的状态,所以引入PCB,PCB就是记录线程切换时线程的状态,如PC指针,各个寄存器的值等


image.png image.png

管理多进程问题

就是进程的调度,是FIFO还是优先级还是有更好的方法
各个中方法
FIFO
cpu利用效率不高,短作业可能需要等长作业做完才能完成
优先级
可能导致一直有优先级高的导致低优先级的进程没有响应
时间片轮转
原理如:


image.png

时间片大,响应时间长,时间片小吞吐量下,因为要切换
通过时间片和优先级的结合来确保进程调度保证吞吐量和响应时间
算法:


image.png

进程的同步合作问题

比如生产和消费,如何保证不乱
通过信号量

上一篇 下一篇

猜你喜欢

热点阅读