主题:求助:操作系统课程设计
有2题,任选一题~望各位GGJJ们帮忙,小弟我这先谢了!
一.用多线程同步方法解决生产者-消费者问题
目的:通过研究Linux 的线程机制和信号量实现生产者消费者问题的并发控制.
说明:有界缓冲区内设有20个存储单元,放入/取出的数据项社顶为1-20这20个整型数.
要求:(1)每个生产者和消费者对有界缓冲区进行操作后,即时显示有界缓冲区的全部内容,当前指针位置和生产者/消费者县城的标识符.(2)生产者和消费者各有两个以上.(3)多个生产者或多个消费者之间须有共享对缓冲区进行操作的函数代码.
提示:(1)游街缓冲区可用数组实现.(2)编译命令可用cc -lpthread -o 目标文件名 源文件名.
二:进程控制
目的:通过联机求助和查找阅读Linux源代码,学会使用Linux系统调用,掌握进程控制原理.
要求:在Linux系统中编写C语言程序,创建一个子进程.父进程和子进程交替运行.父进程先显示一次"Current time:",然后子进程每隔一秒显示一次当前系统日期和时间,共显示3次,以上过程共循环五次.
提示:(1)显示当前系统日期和时间,可利用time和ctime等系统调用.
(2)要查time和ctime等系统调用的使用方法,可用键盘命令man2time求住.
(3)查找头文件,比如,time.h,可用find/-name time.h -print 键盘命令来做.
(4)延迟1秒用系统调用sleep.
(5)创建子进程用系统调用fork.
一.用多线程同步方法解决生产者-消费者问题
目的:通过研究Linux 的线程机制和信号量实现生产者消费者问题的并发控制.
说明:有界缓冲区内设有20个存储单元,放入/取出的数据项社顶为1-20这20个整型数.
要求:(1)每个生产者和消费者对有界缓冲区进行操作后,即时显示有界缓冲区的全部内容,当前指针位置和生产者/消费者县城的标识符.(2)生产者和消费者各有两个以上.(3)多个生产者或多个消费者之间须有共享对缓冲区进行操作的函数代码.
提示:(1)游街缓冲区可用数组实现.(2)编译命令可用cc -lpthread -o 目标文件名 源文件名.
二:进程控制
目的:通过联机求助和查找阅读Linux源代码,学会使用Linux系统调用,掌握进程控制原理.
要求:在Linux系统中编写C语言程序,创建一个子进程.父进程和子进程交替运行.父进程先显示一次"Current time:",然后子进程每隔一秒显示一次当前系统日期和时间,共显示3次,以上过程共循环五次.
提示:(1)显示当前系统日期和时间,可利用time和ctime等系统调用.
(2)要查time和ctime等系统调用的使用方法,可用键盘命令man2time求住.
(3)查找头文件,比如,time.h,可用find/-name time.h -print 键盘命令来做.
(4)延迟1秒用系统调用sleep.
(5)创建子进程用系统调用fork.