大一计算机考试算法题,1计算机考试算法题.doc

操作系统是方便用户、管理和控制计算机软硬件资源的系统软件(或程序集合)。 从用户角度看,操作系统可以看成是对计算机硬件的扩充;从人机交互方式来看,操作系统是用户与机器的接口;从计算机的系统结构看,操作系统是一种层次、模块结构的程序集合,属于有序分层法,是无序模块的有序层次调用。操作系统在设计方面体现了计算机技术和管理技术的结合。

??

windows7操作系统

??

windows xp操作系统

操作系统在计算机系统中的地位:

操作系统是软件,而且是系统软件。它在计算机系统中的作用,大致可以从两方面体会:对内,操作系统管理计算机系统的各种资源,扩充硬件的功能;对外,操作系统提供良好的人机界面,方便用户使用计算机。它在整个计算机系统中具有承上启下的地位R,M,P,它们共享了一个可循环使用的缓冲区B,缓冲区B共有N个单元。进程R负责从输入设备读信息,每读一个字符后,把它存放在缓冲区B的一个单元中;进程M负责处理读入的字符,若发现读入的字符中有空格符,则把它改成“,”;进程P负责把处理后的字符取出并打印输出。当缓冲区单元中的字符被进程P取出后,则又可用来存放下一次读入的字符。请用PV操作为同步机制写出它们能正确并发执行的程序。 (10分)

解:(10分)

begin

Var mutex,input,calculate,output:semaphore:=1,n,0,0;

buffer:array[0,…,n-1] of item;

in,mid,out:integer := 0,0,0;

proR() {do {

wait (input);

wait (mutex);

buffer(in):=input data;

in := (in+1) mod n ;

signal (calculate);

signal (mutex);

while true ; }

proM() {do {

wait (calculate);

wait (mutex);

buffer(middle):=calculate data ;

mid := (mid+1) mod n ;

signal (output);

signal (mutex);

} while true ; }

proP() {do {

wait (output);

wait (mutex);

buffer(out):=calculate data ;

out := (out+1) mod n ;

signal (input);

signal (mutex);

} while true ; }

22.理发店里有一位理发师、一把理发椅子和五把供等候理发的顾客坐的椅子。如果没有顾客,理发师便在理发椅上睡觉。当一个顾客到来时,他必须先叫醒理发师,如果理发师正在理发时又有顾客来到,而如果有空椅子可坐,他们就坐下来等,如果没有空椅子,他就离开。这里的问题是为理发师和顾客各编写一段程序来描述他们行为,并用wait和signal原语操作实现其同步。(10分)

解:理发师问题

#define CHAIRS 5 /*为等候的顾客准备椅子数*/

typedef int semaphore; /* 运用你的想像力*/

semphore customers=0; /*等候服务的顾客数*/

semaphore barbers=0 /*等候服务的理发师数*/

semaphore mutex=1; /*用于互斥*/

int waiting=0; /*还没理发的等候顾客*/

void barber (void) {

while(TRUE) {

wait(customers); /*如果顾客数是0,则睡觉*/

wait(mutex); /*要求进程等候*/

waiting=waiting-1; /*等候顾客数减1*/

signal(barbers); /*一个理发师现在开始理发*/

signal(mutex);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值