基于DOS的多任务系统的实现
1. 用C语言完成线程的创建和撤消,并按优先权加时间片轮转算法对多个线程进行调度;
2. 改变时间片的大小,观察结果的变化。思考:为什么时间片不能太小或太大;
3. 假设两个线程共用同一软件资源(如某一变量,或某一数据结构),请用记录型信号量来实现对它的互斥访问;
4. 假设有两个线程共享一个可存放5个整数的缓冲,一线程不停的计算1到50的平方,并将结果放入缓冲中,另一个线程不断的从缓冲中取出结果,并将他们打印出来,请用记录型信号量实现这一生产者和消费者的同步问题;
5. 实现消息缓冲通信,并于3,4中的简单通信进行比较;
6. 思考:在线程间进行消息缓冲通信时,若对消息队列的访问没有满足互斥要求,情况会怎么样?
标签:
DOS
C语言
多任务系统
线程
上传时间:
2013-12-20
上传用户:赵云兴