主题:[讨论]紧急求救几个《操作系统》(清华版)学习的问题
stonyddd1981
[专家分:0] 发布于 2006-03-31 08:56:00
本人马上要考研复试,但还有几个操作系统的问题不太明白,请各位大虾不吝赐教!
1.由信号量和P V原语可以实现进程的同步,但P原语顺序不当会产生死锁,请举出
一例来!
2.进程调度有个最近最久未使用作业淘汰法(LRU),具体怎么来实现!(做题时),
譬如一组进程,1,5,3,4,2,3,5,3,1,2,4,假设有三个页面!
3.对于磁盘的一面来说,柱面号和磁道号不一样吗?譬如:1.柱面号5,磁道20;
2.柱面号5,磁道6;磁头在5号柱面,采用最快移动,则磁头移动顺序?
4.磁盘扫描算法(SCAN)是怎么进行的?
不胜感激! 好人自有好报!
回复列表 (共5个回复)
沙发
跆 [专家分:30] 发布于 2006-03-31 11:35:00
看着多么多么的。...眼熟啊。....就是不会啊。...
都忘了。....哎..丢人啊
板凳
stonyddd1981 [专家分:0] 发布于 2006-03-31 18:11:00
急切等待中。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
3 楼
xinxi99206 [专家分:380] 发布于 2006-04-03 17:01:00
我来回答:
1、生产者消费着问题:
生产者进程: P:BEGIN
REPEAT
PRODUCE A NEW MESSAGE M;
P(EMPTY);
P(MUTEX);
BUFFER[IN]=M;
IN:=(IN+1)MOD N
V(MUTEX);
V(FULL);
UNTIL FALSE
END
消费者进程:C: BEGIN
REPEAT
PRODUCE A NEW MESSAGE M;
P(FULL);
P(MUTEX);
M:=BUFFER[OUT];
OUT:=(OUT+1)MOD N
V(MUTEX);
V(EMPTY);
UNTIL FALSE
END
开始省略了一些变量定义
在这里如果把生产者进程里的P(EMPTY); P(MUTEX);位置颠倒一下
把消费者进程里的P(FULL); P(MUTEX);位置颠倒一下
就有可能产生死锁问题,自己分析一下。
2、 开始:1 5 3 4 2 3 5 3 1 2 4
1 1 1 4 4 4 5 5 5 2 2
5 5 5 2 2 2 2 1 1 1
3 3 3 3 3 3 3 3 4
3、柱面号与磁道号是一样的,不知道你题目是否有问题
4、扫描算法不仅考虑到欲访问的磁道与当前磁到的距离,更优先考虑的是磁头的当前移动方向,象电梯的运动规律一样,又称为电梯调度算法
4 楼
xinxi99206 [专家分:380] 发布于 2006-04-03 17:02:00
记得加分哦
5 楼
跆 [专家分:30] 发布于 2006-04-04 00:37:00
一个字....强
我来回复