2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开
测开的话,你就得学数据库,sql,oracle,尤其sql要学,当然,像很多金融企业、安全机构啥的,他们必须要用oracle数据库
这oracle比sql安全,强大多了,所以你需要学习,最重要的,你要是考网络警察公务员,这玩意你不会就别去报名了,耽误时间!
考网警特招必然要考操作系统,计算机网络,由于备考时间不长,你可能需要速成,我就想办法自学速成了,课程太长没法玩
操作系统系列文章:
【1】操作系统4小时速成:操作系统的基本概念,它是系统软件,管理处理机、存储器、io设备、文件,并发和共享是最基本特征,还有虚拟和异步
【2】操作系统4小时速成:操作系统发展和分类,运行环境:运行机制和内核,用户态非特权,核心态特权,中断技术,访管指令
【3】操作系统4小时速成:进程管理占考试40%,进程状态,组织,通信,线程拥有调度,进程拥有资源,进程和线程的区别
【4】操作系统4小时速成:处理机调度,调度方法,调度准则,典型的调度算法,响应比
打印机,变量共享的那种,叫临界资源
了解
一个维护英雄
以维护防御塔
相互制约,相互合作
Pero和nh
P:等待——wait
V:信号——叫醒,干活
目前这些概念知道就行
协调相互制约使用临界资源
合作——同步
制约——互斥
打印1+2*3
俩要合作加法乘法
但是打印互斥
3那个,需要同步的原因,恰恰是因为异步,才要同步,否则次序乱了
B动态
D结构性
阻塞状态下一个只有就绪
gg
我用A,想要B
你用B,想要A
大家都不互让
系统资源恶性竞争
进程同步和互斥通过信号量来搞定
四个条件必须要同时满足
考试必考!!!
死锁产生的必要条件——多选,必须选四个
采取强制执行,接触死锁
这事没法用
别人是可以拿走的
要多少,直接给你了,别人不能动,完事你放
这俩要区分开来,考试容易混淆
不会导致进入不安全状态,就分配
可能会不安全的话,那不分配
先给P2,2个给他,4台结束
全部释放,5个全给P1
P结束,全部释放,给7给给P3即可
P2,P1,P3顺序执行很安全——都能完成,不会发生死锁
这就是安全状态。
P2有2个的话,P3有1个
那就麻烦了
P2结束放4个
现在P1缺5个,P3缺6个,你4个不够啊
不安全状态出现——可能出现死锁
安全状态——一定不会出现死锁
delta是P0–P4还需要的R1,2,3的资源【最大需求-已经分配】
R1已经用了16,还剩余2
R2已经用了3,还剩3
R3已经用了19,还剩3
(2,3,3)R1,2,3
看看P0–P4还需要的R1,2,3的资源矩阵是否符合<=(2,3,3)
P0不
P1符合
P2不符合
P3符合
P4符合
咱们试试P1P3P4
看看哪个可以???
假如:先给P1,释放之后,看看能否满足剩下顺序
不妨设给P1,需要133,因为有233,所以还剩100
P1释放之后剩余多少呢?P1需要的最大资源+100=536+100=636
再去看看看看P0–P4还需要的R1,2,3的资源矩阵是否符合<=636
不妨设给P3
那还剩多少636-405=231
P3释放之后还剩余多少资源?P3需要的最大资源+231=425 + 231=459
再去看看看看P0–P4还需要的R1,2,3的资源矩阵是否符合<=459
P4所需113<=459
给P4,剩余资源459-113=346
p4释放之后还剩余多少资源?P4需要的最大资源+346=424+ 346=76 10
再去看看看看P0–P4还需要的R1,2,3的资源矩阵是否符合<=76 10
P2所需006<=76 10
给P2,剩余资源76 10-006=7 6 4
p2释放之后还剩余多少资源?P4需要的最大资源+7 6 4=4 0 11+7 6 4=11 6 15
再去看看看看P0–P4还需要的R1,2,3的资源矩阵是否符合<=11 6 15
P0所需2 3 7<=11 6 15
给P2,剩余资源11 6 15-2 3 7=9 3 8
完全足够用
所以说
P1,P3,P4,P2,P0这个顺序是安全状态——一定不会产生死锁
考试你就这么试,就行
这就是银行家算法避免死锁
美滋滋
一次性分配,那你破坏了占有请求
D预防死锁进入不安全状态——避免死锁
2D哦
别整错了
每个进程最多使用3台
看A,x=4,你最多只能给每个进程分配2个
因为4*3=12>11
所以只能分配2个
那8台已经用掉了,还有3台,这个时候不会出现死锁
看Bx=5,同样也是每个最多给2台,目前用了10台,还有1个,轮番给人用就行了,不产生死锁
看Cx=6,每个只能现在分配2台,不够分
所以子涵选B
最多持有2个
A,2*2=4,还有4个
刚刚好不会发生死锁
B 3*2=6,还有2个,随便给谁都能搞定
C4*2=8,没有机子可以用了gg
所以选c
别人不能剥夺你
先算差多少
看I
可用资源为1 4 0
它可以给p2进程用,剩余
1 4 0-1 0 0=0 4 0
释放之后剩余2 3 5+0 4 0=2 7 5
给P1,它需要0 0 1,剩余
2 7 5 - 0 0 1=2 7 4
释放之后剩余1 7 5+2 7 4=3 14 9
足够玩
A就不对了,没I
试试II
0 6 2,可以给P3
剩余0 0 0
释放后有0 6 4
给P4
剩余0 0 0
释放0 6 5
给P1
剩余0 6 4
释放之后还有0 0 4+0 6 4=0 6 8
这玩意不够了,谁都不满足,P0,P2都不行,gg
所以II不能选择
B废了
看III
1 1 1,可用
给P0,剩余1 1 0
释放后 1 1 4
给P2,剩余0 1 4
释放后2 4 9
gg别的满足不了了
所以III不行
D挂了
只能选C
美滋滋
反正拿到表,直接计算还需要多少,所以你可用资源还剩多少,先给谁?咱去异议尝试就知道了
很舒服
提示:重要经验:
1)
2)学好oracle,操作系统,计算机网络,即使经济寒冬,整个测开offer绝对不是问题!同时也是你考公网络警察的必经之路。
3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。