操作系统——进程与线程(二)
- 调度
-
- 进程调度
- 进程调度方式
- 调度算法指标
- 调度算法
- 同步与互斥
-
- 进程同步
- 进程互斥软件
- 同步互斥的实现
- 进程互斥硬件
操作系统(OS)这门学科在计算机领域有着很重要的作用,作为计算机硬件和软件的临界者,对计算机发展有着很重要的意义,随着时代的不断发展,越来越多的操作系统进入大众视野,无论是大家耳熟能详的Windows、MAC,抑或是程序员口中经常念叨的Linux。除了电脑操作系统,手机中的鸿蒙、苹果、安卓也是大家关注的热点,因此要想在计算机领域有所造诣,操作系统是必须要了解掌握的一门学科,因此在这里借助平台,跟大家分享一下我学习操作系统的经验和笔记,用十天的时间来和大家梳理和整理这门学科,让我们一起探索其中的奥秘,享受知识带给我们的快乐吧!!!
调度
当有一堆进程任务要进行处理时,由于资源有限,就需要遵循某种规则来决定处理这些任务的顺序
- 高级调度(外存与内存之间的调度)面向作业
按一定原则挑选作业分配内存等必要资源,建立相应进程,以使它们获得竞争处理机的权利 - 中级调度(外存与内存之间的调度)面向进程
引入虚拟存储技术之后,暂时将不能运行的进程调至外存等待,提高内存利用率和系统吞吐量
暂时调到外存等待的进程状态称为挂起状态(PCB不会一起调出,常驻内存,存放在挂起队列中)
决定将哪个处于挂起状态的进程重新调入内存
挂起状态:就绪挂起、阻塞挂起
七状态模型
(2)双标志先检查法
bool flag[2]; //数组长度为进程个数
flag[0] = false;
flag[1] = false;
(4)Peterson算法
bool flag[2];
int turn = 0;

1、主动争取
2、主动谦让
3、检查对方是否想用临界资源,且自己是否属于最后“谦让”
双标志后检查法主要问题是:未遵循“让权等待”原则
进程互斥硬件
(1)中断屏方法
利用“开/关中断指令”实现(与原语思想相同)
优点:简单、高效
缺点:不适用与多处理机;只适用于操作系统内核进程;
(2)TestAndSet指令(TSL指令)
硬件实现,C语言描述逻辑如下:
缺点:不满足“让权等待”
(3)Swap指令(Exchange指令,XCHG指令)
硬件实现,C语言逻辑:
缺点:不满足“让权等待”
第三天的学习到这里就结束了,不知道小伙伴们收获如何呢评论区交流学习,也恳请各位批评指正!!
操作系统其实就是计算机中的一个大管家,这个大管家有着很多很厉害的角色(就像谍战片里面的大府中的老管家一样),因此学习操作系统这门课,就像是在欣赏一部谍战片,要想理解角色内涵,你就必须站在其角度去思考,思考其可能会遇到的危险以及应对策略(bug与bug的修复),这样你才能在凶险的代码江湖生存下来,成为一代英雄,留下你的印记,期待与各位在江湖的相遇,也希望大家能给作品一个三连!!
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!