文章目录
- 1. 进程调度算法
- 2.操作系统在调度线程时会做哪些事情
- 3.页面置换算法
- 4.32位系统,64位的系统内存是多大
- 5.CPU的GHz是什么意思
1. 进程调度算法
进程调度规定了CPU执行就绪队列中的多个进程的顺序。
1.先来先服务 (FCFS,first come first served)
2.最短作业优先(SJF, Shortest Job First)
3.最高响应比优先法(HRRN,Highest Response Ratio Next)
响应比R定义如下: R =(W+T)/T = 1+W/T
其中T为该作业估计需要的执行时间,W为作业在后备状态队列中的等待时间。
4.时间片轮转算法(RR,Round-Robin)
每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间。
5.多级反馈队列(Multilevel Feedback Queue)
首先调度优先级高的队列中的进程;
对于同一个队列中的各个进程,按照时间片轮转法调度
在低优先级的队列中的进程在运行时,又有新到达的作业,那么在运行完这个时间片后,CPU马上分配给新到达的作业(抢占式)。
2.操作系统在调度线程时会做哪些事情
操作系统会把不同的线程调度到同一个CPU上运行,而每个线程运行时又都会使用CPU的寄存器,但每个CPU却只有一组寄存器,所以操作系统在把线程B调度到CPU上运行时需要首先把刚刚正在运行的线程A所使用到的寄存器的值全部保存在内存之中,然后再把保存在内存中的线程B的寄存器的值全部又放回CPU的寄存器,这样线程B就能恢复到之前运行的状态接着运行。
线程调度时操作系统需要保存和恢复的寄存器除了通用寄存器之外,还包括指令指针寄存器rip以及与栈相关的栈顶寄存器rsp和栈基址寄存器rbp,rip寄存器决定了线程下一条需要执行的指令,2个栈寄存器确定了线程执行时需要使用的栈内存。所以恢复CPU寄存器的值就相当于改变了CPU下一条需要执行的指令,同时也切换了函数调用栈
3.页面置换算法
在地址映射过程中,若在页面中发现所要访问的页面不在内存中,则产生缺页中断。
当发生缺页中断时,如果操作系统内存中没有空闲页面,则操作系统必须在内存选择一个页面将其移出内存,
以便为即将调入的页面让出空间。而用来选择淘汰哪一页的规则叫做页面置换算法。
1、最佳置换算法(OPT):标记最大的页应该被置换。
2、先进先出置换算法(FIFO):即先进入内存的页,先退出内存。
3、最近最久未使用(LRU)算法:把过去最长一段时间里不曾被使用的页面置换掉,裁老员工。
4.32位系统,64位的系统内存是多大
32位系统理论上最大是能支持4G内存的,一个 32 位的操作系统,
它所能够支持的寻址空间最大也就是 2 的 32 次方个字节Byte,换算成 GB 的话就刚好等于 4GB 。
这也就说明, 32 位的操作系统最大就只能够读取大约 4GB 的内存容量。64位操作系统的寻址能力就是2的64次方,理论内存是17179869184G
实际中不可能用到这么大的内存,目前64位windows系统最大只支持128G。内存识别的多少是和计算机cpu的寻址有关。
32位的操作系统理论上可以识别2的32次方个地址(4294967296B=4GB),
但计算机还要接外设(鼠标,打印机,键盘,网卡,声卡,显卡等等)这些外设也是需要占用地址空间的。
5.CPU的GHz是什么意思
cpu的ghz是指cpu的主频。GHZ是G赫兹的意思,就是CPU的处理频率,是越高越好的。