什么是操作系统?其主要功能是什么?
操作系统是控制和管理计算机系统各种硬件和软件资源,有效组织多道程序运行的系统软件 (或程序集合)?是用户和计算机直接的程序接口.
在某个计算机系统中,有一台输入机和一台打印机,现有两道程序投入运行,程序A、B 同时运行,A略早于B。A的运行轨迹为:计算50ms、打印100ms,再计算50ms、打印100ms, 结束。B的运行轨迹为:计算50ms、输入80ms,再计算100ms,结束。试说明:
两道程序运行时,CPU是否空闲等待?若是,在那段时间段等待?
300程序A、B是否有等待CPU的情况?若有,指出发生等待的时刻。
300
50
0
7
5(
)
100 !
釦
100
.由
100 ]
50
100
150
200
250
cpu有空闲等待.在100ms 150ns的时候.
程序A没有等待cpu,程序B发生等待的时间是180ms200nis.
设公共汽车上,司机和售票员的活动如下:
司机的活动:启动车辆;正常行车;到站停车。 售票员的活动:关车门;售票;开车门。
在汽车不断的到站、停车,行驶过程中,用信号量和P. V操作实现这两个活动的同步 关系。
semaphore sit s2;
sl=0;s2 0;
cobegin
司机();售票员();
coend
process 司机()
{
while(true)
(
P(sl);
启功车辆;
正常行车;
到站停车;
V(s2); process售票员() (
while(true)
关车门;
V(sl): 售票;
P(s2);
开车门;
上下乘客;
I
}
设有三个进程P、Q、R共享一个绶冲区,该缓冲区一次只能存放一个数据,P进程负责循 环地从磁带机读入数据并放入缓冲区,Q进程负责循环地从缓冲区取出P进程放入的数据进 行加工处理,并把结果放入缓冲区,R进程负责循环地从缓冲区读出Q进程放入的数据并在 打印机上打印。请用信号量和P、V操作,写出能够正确执行的程序。
semaphore sp.sq.sr;
int buf:sp I;sq 0;sr-0;
cobegin
process P()
{
while(true)
{
从感带读入数据;
P(sp);
Buf data:
V(sq);
}
}
process Q()
(
while(true)
(
P(sq):
data二buf:
加工data:
buf二data;
V(sr);
process R ()
(
while(true)
{
P(sr); data buf;
V(sp); 打印数据;
coend.
简述计数信号量的值与资源使用情况的关系。
当计数信号量大于。时,表示可用资源的数量:当它的值小于。时.其绝对值表示等待使用该 资源的进程个数.
假定某计算机系统有Rj R?两类可再用资源(其中R,有两个单位,有一个单位)■它们 被进程p,、巳所共享,且已知两个进程均以下列顺序使用两类资源:
—申请Ri—申请Rr*申请Rl釋放Ri—释放R」一释放Rl
试求出系统运行过程中可能到达的死锁点.并画出死锁点的资源分配困。
进程P1占有一个R1?—个R2,进程P2占有一个R1.
进程P1占用一个R1,进程P2占有一个R1 .—个R2
系统有同类资源m个,被n个进程共享.冋:当mn和m^n时.每个进程最多可以请 求多少个这类资源,使系统一定不会发生死锁?
mWn时,每个进程最多请求1个这类资源时不会死锁;当mn时.如果m/n商为k,
余数为t:若t为0,每个进程最多请求k个.若t不为0,每个进程最多请求卜1个?则 统不会发生死锁。
设当前的系统状态如下,此时Available=(L1.2).
进程
Max
Allocation
R1
R2
R3
Rl
R2
R3
P1
3
2
2
1
0
0
P2
6
1
3
5
1
1
P3
3
1
4
2
1
1
P4
4
2
2
0
0
2
(1),计算各个进程还需要的资源数
(2).系统是否处于安全状态?为什么?
、进程P2发出请求向量reqUest2=(1.0.1),系统能把资源分配给它吗?
、若在进程P2申请资源后,P1发出请求向量requestl=(1.0,l),系统能把资源分配 给它吗?
.若在进程P1申请资源后,P3发出请求向量request3=(0.0.1),系统能把资源分配 给它吗?
(1)
R1
K2
R3
1M
2
2
3
P2
1
2
P3
1
3
P4
4
2
0
系统处于安全状态?存在安全序列:P2fPl-P3fP4?
系统能把资源分配给它?存在安全序列:P2-P1-P3-P4.
不能,因为资源不足.
不能?因为这样做会让系统处于不安全状态.
有5个批处理作业AE均已到达计算中心,其运行时间分别为2min.4min.6min.8m
原创力文档

文档评论(0)