关于操作系统中时间片和时钟中断的区别
关于操作系统中时间片和时钟中断的区别

关于操作系统中时间片和时钟中断的区别

时间片和时钟中断是二码事

时钟中断的频率HZ是可以内核自己设置的,早期内核是100,后来变成1000了
所以时钟中断的间隔是10ms或者1ms
时间片是时钟中断的个数,初期值一般是几十个(20个)时钟中断,不同优先级的进程初期值不一样
每个时钟中断来的时候,给当前进程的剩余时间片减1,如果减到0了,就剥夺了当前进程的CPU,换另一个进程来运行
如果所有的运行态进程的剩余时间片都是0了,就给所有运行态进程的剩余时间片赋初值

如果进程在下一个时钟中断来之前主动放弃CPU,调度程序给不给它的剩余时间片减1都不重要
它用掉了半个时钟中断间隔的时间,如果给他减1,就是惩罚了半个时钟中断间隔
如果不减,那就是奖励了半个时钟中断间隔

引自:万能的CSDN
结论:

时钟中断和时间片的关系:
因为时钟中断是频率性发出的信号,所以说时间中断可以理解为给系统看的钟表,告诉系统每一时刻应该做什么,用在PV原语处来对进程执行挂起,激活等操作,时间片就是很多个时钟中断组成的片段,代表该进程可以使用资源的总时长.

进程在时间片用完之前结束,对剩余时间片的处理:
时间片就是初始时钟节拍数,根据进程静态优先度不一样时间片长度也不一样。主动让出CPU的时候,进程调度模块会记录下剩余时间中断节拍数,下次再获得CPU的时候,继续上次剩的时钟节拍数.
对于进程在时间片结束之前主动放弃CPU使用权,对下一个进程的运行时间没有影响,因为每个进程分配的时间片初期値是一定的,等到所有的进程剩余时间片都为0时就对所有的运行态进程时间片赋初值,然后继续处理剩余进程.

进程运行结束是否需要等待当前时间片结束:
操作系统会在进程运行结束或者其他情况主动放弃CPU使用权时,及时中断该进程然后运行下一个进程,而不必等待当前进程的时间片全部用完.

5 1 投票
Article Rating
订阅
提醒
0 评论
内联反馈
查看所有评论