c语言进程控制实验报告,操作系统进程的创建与控制实验报告.doc
操作系统实验报告
实验一 进程的创建和控制
班 级: 12计算机12班
学 号: 127401219
姓 名: 刘艳仙
成 绩:
2013年
实验目的
1、掌握进程的概念,明确进程的含义
2、复习C语言程序基本知识
3、练习并掌握UNIX提供的vi编辑器来编译C程序
4、学会利用gcc、gdb编译、调试C程序
5、认识并了解并发执行的实质
6、掌握进程另外的创建方法
7、熟悉进程的睡眠、同步、撤消等进程控制方法
实验内容
1)UNIX/LINUX及其使用环境
1、用vi编写一个简单的、显示"Hello,World!"的C程序,用gcc编译并观察编译后的结果
2、利用gdb调试该程序
3、运行生成的可执行文件。
2)进程创建:
1、编写一段程序,使用系统调用fork( )创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示'a',子进程分别显示字符'b'和字符'c'。试观察记录屏幕上的显示结果,并分析原因。
2、修改上述程序,每一个进程循环显示一句话。子进程显示'daughter …'及'son ……',父进程显示 'parent ……',观察结果,分析原因。
3)进程的控制
1、用fork( )创建一个进程,再调用exec( )用新的程序替换该子进程的内容
2、利用wait( )来控制进程执行顺序
三、实验程序和实验结果
根据要求,实验源程序如下:
1)利用vi编写的程序及其结果
main( )
{
printf("Hello,world!\n");
}
2)、进程的创建及其结果
1.#include
#inlude
#include
main( )
{
int p1,p2;
while((p1=fork( ))= = -1); /*创建子进程p1*/
if (p1= =0) {sleep(10);
putchar('b');}
else
{
while((p2=fork( ))= = -1); /*创建子进程p2*/
if(p2= =0) {sleep(10);
putchar('c');}
else {sleep(10);
putchar('a'); }
}
}
执行结果如下:
2.
#include
#inlude
#include
main( )
{
int p1,p2,i;
while((p1=fork( ))= = -1); /*创建子进程p1*/
if (p1= =0)
for(i=0;i<10;i++)
{sleep(5);printf("daughter %d\n",i);}
else
{
while((p2=fork( ))= = -1); /*创建子进程p2*/
if(p2= =0)
for(i=0;i<10;i++)
{sleep(5);printf("son %d\n",i);}
else
for(i=0;i<10;i++)
{sleep(5);printf("parent %d\n",i);}
}
}
实验结果
3)进程控制:
1、用fork( )创建一个进程,再调用exec( )用新的程序替换该子进程的内容
2、利用wait( )来控制进程执行顺序
#include
#include
main( )
{
int pid;
pid=fork( ); /*创建子进程*/
switch(pid)
{
case -1: /*创建失败*/
printf("fork fail!\n");
exit(1);
case 0: /*子进程*/
execl("/bin/ls","ls"
c语言进程控制实验报告,操作系统进程的创建与控制实验报告.doc相关推荐
- 大学计算机打开文件过程演示实验记录表,操作系统进程与文件管理 实验报告表 作业 5.doc...
精品文档 . (本文档包含: 实验5 实验报告 与 第5周作业题) 实验5 操作系统进程与文件管理 实验报告 学号 1404505147 姓名禤雨骅 班级: 临床医学14(1) 实验时间:2015 年 ...
- 计算机进程同步实验观察结果记录表,实验5 操作系统进程与文件管理 实验报告表 作业 5.doc...
实验5操作系统进程与文件管理实验报告表 (本文档包含: 实验5 实验报告 与 第5周作业题) 实验5 操作系统进程与文件管理 实验报告 学号 1404505147 姓名禤雨骅 班级: 临床医学14(1 ...
- cupsd进程_关于Linux操作系统进程操作(ps)命令简介
1.ps 进程状态查询命令. 命令格式#ps [[选项]] 常用选项: ● -a,显示所有用户进程. ● -e,显示进程环境变量. ● -l,给出长列表. ● -r,只显示正在运行的进程. ● -S, ...
- windows c语言 进程信息,C语言获取Windows系统进程信息
#include #include //进程快照函数头文件 #include int main() { int countProcess=0;//当前进程数量计数变量 PROCESSENTRY32 c ...
- 数据结构(十五) -- C语言版 -- 树 - 二叉树的操作进阶之创建、插入、删除、查询、销毁
内容预览 零.读前说明 一.概述 二.数据模型分析创建 2.1.节点的结构模型 2.2.操作函数结构模型 三.创建 四.插入 4.1.在树中的某一个叶子节点位置插入新节点 4.2.在树中的某一个非叶子 ...
- 计算机公共基础知识实验报告,实验5-操作系统进程与文件管理--实验报告表-.docx...
(本文档包含:实验5实验报告 与 第5周作业题) 实验5操作系统进程与文件管理实验报告 学号 1404505147 姓名 榭雨骅 班级: 临床医学14 ( 1 ) 实验时间: 2015 年04月13日 ...
- 大学计算机打开文件过程演示实验记录表,实验5-操作系统进程与文件管理--实验报告表-x...
<实验5-操作系统进程与文件管理--实验报告表-x>由会员分享,可在线阅读,更多相关<实验5-操作系统进程与文件管理--实验报告表-x(14页珍藏版)>请在人人文库网上搜索. ...
- DCMTK:使用dcmsr API创建示例结构化报告
DCMTK:使用dcmsr API创建示例结构化报告 使用dcmsr API创建示例结构化报告 使用dcmsr API创建示例结构化报告 #include "dcmtk/config/osc ...
- 按平均成绩排行c语言文件操作,学生成绩管理系统(c语言结构体以及文件操作)实验报告精选.doc...
学生成绩管理系统(c语言结构体以及文件操作)实验报告精选 C程序设计 实验报告 编号: 姓名院系学号任课教师于萧指导教师实验地点实验时间实验名称文件操作同 组 人无预习报告(对实验主要内容的认识)得分 ...
最新文章
- 对某课程的建议和意见_2021年河南专升本专科专业对照和考试课程征求意见
- C++ string字符串比较问题
- java属于什么行业,吐血整理
- java keytool nginx_java 自签名证书转 nginx 所需证书
- 前端测试利器--Browser-Sync启动命令
- 【算法】剑指 Offer 52. 两个链表的第一个公共节点
- 'tensorflow' has no attribute 'sub'
- linux yum imagemagick,CentOS7安装 ImageMagick
- WIN8禁用休眠功能
- eclipse安装SVN插件
- 绿坝进程关闭的简单方法
- PS如何制作火焰效果图特效步骤教程
- 达芬奇17新功能及安装教程
- prometheus 配置服务器监控、服务监控、容器中服务监控与告警
- ffmpeg读取rtsp并保存到mp4文件
- 晨控CK-GW06-E03与TwinCAT软件配置指南
- isSymmetric
- 常见数据挖掘算法和Python简单实现
- 五大方案,教你关于微信公众号的内容定位
- JDK8新特性(4)—— stream 流