操作系统进程控制实验报告(2)
时间:2025-07-15
时间:2025-07-15
教
师
评
语教师签名: 年 月 日
成 绩 评 定
备 注
-
一、实验目的
1.学习和了解进程控制的基本和常用的系统调用 fork wait sleep exit exec 等等
2. 查看 /usr/src/include/sched.h中的task_struct 数据结构,并分析Linux 操作系统进程状态。
3.通过进程创建的应用实例,深刻理解进程创建的过程 将以下例题输入运行,并分析运行结果 程序例题1
#include <stdio.h>
#include <sys/types.h> #include <unistd.h> int main(void) {
pid_t pid; int data=5;
if((pid=fork())<0) {
printf("fork error\n"); exit(0); }
else if(pid==0) {
data--;
printf("child\'s data is:%d\n",data); exit(0); } else {
printf("parent\'s data is:%d\n",data); }
exit(0); }
程序例题2
用fork创建一个子进程,由其调用execve启动shell命令ps查看系统当前的进程信息 #include <stdio.h>
#include <sys/types.h> #include <unistd.h> main( ) {
pid_t pid;
char *path="/bin/ps";
char *argv[5]={ "ps","-a","-x",NULL};
printf(“Run ps with execve by child process:\n”); if((pid=fork( ))<0)
上一篇:2009年结算规定(正式)
下一篇:多元统计分析实验的原始数据