操作系统Lesson13 - 进程和线程常见面试题及练习

在这里插入图片描述

D、
抢占就是中断处理
时间片由100个tick组成,在执行进程任务的过程中,每隔一段固定的tick甚至是每一个tick时,检查一下是否有优先级更高的任务;如果有,触发中断,高优先级抢占。


在这里插入图片描述

Ⅰ、用户登录,创建一个shell,创建了一个线程。
Ⅱ、设备分配,指为进程调度底层设备。
Ⅲ、程序执行时会为其分配一个进程。


pipe 无名管道 - - 借助亲缘关系来通信
fifo 有名管道 - - 借助文件系统来通信
C、
管道无论读或写都会阻塞:
·读 -> 没人写,就阻塞了
·写 -> 写满了就阻塞了

D、
一个进程可以fork多个子进程,都是这个管道,这些进程都可以用它的读端写端。


在这里插入图片描述

20、
用户级线程的切换不需要陷入内核中,所以快;
内核级线程的调度需要内核来操作,包括创建、切换、摧毁线程等操作需要系统调用来支持,使用系统调用陷入内核中,就会导致中断触发,保护/恢复上下文等操作,系统开销就大。

在这里插入图片描述


在这里插入图片描述
21、
每一个线程中有一个PCB块,记录了栈指针,栈指针不共享。
也就是说,同一进程中每个线程的资源地址相同,但是栈地址独立。


在这里插入图片描述
9、
同步互斥临界区管理四个原则:
空闲让进
忙则等待
有限等待
让权等待 -> 信号量

Ⅳ:如果任务时间短,而切换开销比他大得多,那么放弃CPU是不划算的。


在这里插入图片描述

11、
有资源可用(>= 0) -> 没有人在睡眠队列,所以没有进程在等待;
资源耗尽(< 0) -> 有进程在睡眠队列等待,负数为几就是几个在等待。


在这里插入图片描述

19、
在这里插入图片描述
在这里插入图片描述

管程想成信号量。
A.信号量可以完成同步和互斥。
B.同步机制:同步和互斥。
C.管程依靠编译器来完成此机制。
D.管程定义的变量只有管程能访问,别的进程想访问必须访问特定的管程接口。


在这里插入图片描述

20、
C.判断行为在判断条件中执行,如果符合直接睡眠。
在这里插入图片描述
详情可见:
https://blog.csdn.net/2301_78981471/article/details/144334876

在这里插入图片描述
我们可以看到,信号量先--,再进行判断。


在这里插入图片描述

6、
B.
运行态 -> 阻塞态 :I/O,批操作…

C.
时钟中断(1tick)的作用:
1.更新当前进程剩余时间片;
2.检查时间片是否用完;
3.更新系统时间和其他任务。


在这里插入图片描述

9、
题意:降低优先级操作是由调度程序完成的,也就是问什么时候执行调度
B.驱动程序发现I/O完成,将对应睡眠进程送入就绪队列。


在这里插入图片描述

11、
周转时间:完成的时间 - 进入队列的时间
各项周转时间 = 前一项调度时间 + 前一项运行时间 + 本进程调度时间 + 本进程等待事件 + 本进程运行时间

在这里插入图片描述


在这里插入图片描述

13、
多级优先队列要考虑:
1.有很多级别,所以考虑数量;
2.每个队列优先级如何;
3.不同优先级的队列存放了不同类型的任务:I/O密集型,CPU密集型,所以不同类型的任务的调度算法不一样,是先进先出,还是最短作业,还是最短剩余作业…
4.如何避免饥饿:设计迁移条件,比如满足额定时间就降级,过一段时间全部放到第一优先级队列…

在这里插入图片描述

详见:https://blog.csdn.net/2301_78981471/article/details/144403183

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值