-
浙江理工大学的第二份操作系统实验报告:进程间的通信
资源介绍
实验内容
任务一、
(1) 阅读以上父子进程利用管道进行通信的例子(例1),写出程序的运行结果并分析。
(2) 编写程序:父进程利用管道将一字符串交给子进程处理。子进程读字符串,将里面的字符反向后再交给父进程,父进程最后读取并打印反向的字符串。
任务二、
(1) 阅读例2的程序,运行一次该程序,然后用ipcs命令查看系统*享存储区的情况,再次执行该程序,再用ipcs命令查看系统*享内存的情况,对两次的结果进行比较,并分析原因。最后用ipcrm命令删除自己建立的共享存储区。
(2) 每个同学登陆两个窗口,先在一个窗口中运行例3程序1(或者只登陆一个窗口,先在该窗口中以后台方式运行程序1),然后在另一个窗口中运行例3程序2,观察程序的运行结果并分析。
(3) 使用系统调用shmget(),shmat(),shmdt(),shmctl(),编制程序。要求在父进程中生成一个30字节长的私有共享内存段。接下来,设置一个指向共享内存段的字符指针,将一串大写字母写入到该指针指向的存贮区。调用fork()生成子进程,让子进程显示共享内存段中的内容。接着,将大写字母改成小写,子进程修改共享内存……