请问进程的上下文切换怎么理解?
网友回复
对于CPU来说,它只知道取指令,执行指令,然后执行下一条指令,他可不关心当前执行的指令是从哪个进程/线程来的,这是上面的操作系统需要关心的。
由于程序总归免不了读写内存,读写磁盘,或者网络交互,这些动作比CPU的速度慢了很多个数量级,为了不让cpu忙等这些操作,就得想办法让多个程序"同时"运行,a程序执行io读写时把cpu交给b程序,b程序发送网络包时再把cpu让给c程序,尽力提高CPU的使用率,操作系统为此抽象出了进程的概念。
要让这些进程都有机会被CPU执行,操作系统就得在一个进程正在被CPU执行时,将其切换走,把CPU让给其他进程,这就是进程的上下文切换
那么问题来了,切换切的到底是啥?怎么个切法?
前面说了,CPU干的事情很简单,就是取指令然后执行它,作为操作系统,你得让CPU知道从哪里取指令,指令执行时还需要数据,数据从哪里拿你也得告诉它,如果在执行过程中被切换走,CPU计算过程中产生的一些临时数据也得告诉它,这样它才可以正常执行指令,怎么告诉CPU这些信息呢?只要给CPU的各种寄存器赋值就好了,包括程序计数器里的下一条指令地址,数据段寄存器里的程序数据段起始地址,代...点击查看剩余70%
seedream5.5为啥无法将图白色背景修改成透明?
seedance2如何通过2张不同角度平视图来识别场景进行人物定位?
有没有免费的浏览器中离线运行的语音识别ai模型?
微信小程序个人版不交钱认证就不让你用二维码,报错"errcode":85411?
美丽国为啥要限制ai发展?
seedance2如何参考白模视频使用真实场景和人物生成新视频?
如何设定小孩看电视的时候每隔10分钟弹出一个题目,答对才能继续,答错继续下一题?
直播数字人根据公屏互动评论实时做出不用动作技术是什么?
未来ai文本大模型根据剧本直接生成像素风或三维白模或灰模粗糙场景动画html给视频大模型参考站位与运镜?
浏览器中如何将epub电子书转成txt文本格式?


