认识Linux操作系统实验报告,linux操作系统实验报告全部

这篇实验报告详细介绍了学生在Linux环境下进行的操作系统实验,包括熟悉基本操作、命令和系统调用,理解进程的概念及并发执行,以及深入探讨了进程的创建和控制。实验中使用了C语言编写程序,演示了fork()函数创建子进程的过程,并通过信号处理实现进程间的通信和同步。
摘要由CSDN通过智能技术生成

41528d3028836879cd698677c3999917.giflinux操作系统实验报告全部

计 算 机 操 作 系 统实 验 报 告学 号 :姓 名 :提 交 日 期 : 2014.12.15成 绩 :东 北 大 学 秦 皇 岛 分 校操 作 系 统 实 验 报 告东 北 大 学 秦 皇 岛 分 校 计 算 机 与 通 信 工 程 学 院 第 1 页 指 导 教 师 : 吕 艳 霞【 实 验 题 目 】 熟 悉 Linux/UNIX 操 作 系 统【 实 验 目 的 】 1. 熟 悉 Linux/UNIX 操 作 系 统 的 基 本 操 作 ;2. 掌 握 常 用 基 本 命 令 和 系 统 调 用 。【 实 验 内 容 】 1.学 会 开 机 、 退 出 、 登 陆 与 关 机 ;2.了 解 窗 口 工 作 方 式 与 中 断 工 作 方 式 ;3.熟 悉 常 用 命 令 和 系 统 调 用 列 表 ;4.熟 悉 外 存 目 录 树 结 构 ;5.熟 悉 程 序 开 发 工 具 :编 辑 、 编 译 、 连 接 、 调 试 ;6.学 会 获 得 帮 助 信 息 。代 码 :#include int main() {printf(“Hello World\n“);return 0;}【 实 验 结 果 】操 作 系 统 实 验 报 告东 北 大 学 秦 皇 岛 分 校 计 算 机 与 通 信 工 程 学 院 第 2 页 指 导 教 师 : 吕 艳 霞【 实 验 题 目 】 2 进 程 的 创 建 和 控 制【 实 验 目 的 】 1.加 深 对 进 程 概 念 的 理 解 , 明 确 进 程 和 程 序 的 区 别 ;2.进 一 步 认 识 并 发 执 行 的 实 质 ;3.加 深 对 进 程 管 理 概 念 的 理 解 ;4.分 析 进 程 的 创 建 过 程 。【 实 验 内 容 】 1.进 程 的 创 建 ;2.进 程 的 控 制 。【 实 验 结 果 】# includemain ( ){int p1, p2;while ((pl = fork ( )) = = -1 ); /* 创 建 子 进 程 p1 */if (pl= =0) /* 子 进 程 创 建 成 功 */putchar (‘b’);else{while ((p2 = fork ( )) = = -1); /* 创 建 另 一 个 子 进 程 */if ( p2 = = 0) /* 子 进 程 创 建 成 功 */putchar (‘c’);else putchar(‘a’); /* 父 进 程 执 行 */}}# includemain( ){int p1, p2, i;while ((pl = fork ( ) ) = = -1);if (pl = = 0){lockf(1, 1, 0),for(i = 0 ; i# include# includevoid waiting ( ), stop( ) ;int wait_mark;main ( ){int pl, p2,stdout;while ((p1 = fork( )) = = -1); /* 创 建 进 程 p1 */if (p1>0){while ((p2 = fork()) = = -1);if (p2>0){wait_mark = 1;signal ( SIGINT, stop); /* 接 收 Del 信 号 , 并 转 stop*/waiting (0);kill (p1, 16); /*向 p1 发 中 断 信 号 16*/kill (p2, 17); /* 向 p2 发 中 断 信 号 17*/wait (0); /*同 步 */wait (0);printf(“parent process is killed! \n”)exit(0);}else{wait_mark = 1;signal(SIGINT,SIG_IGN);********操 作 系 统 实 验 报 告东 北 大 学 秦 皇 岛 分 校 计 算 机 与 通 信 工 程 学 院 第 5 页 指 导 教 师 : 吕 艳 霞signal (17, stop);printf(“%d”,SIG_DFL);waiting ( );lockf ( stdout, 1, 0);printf (“child process 2 is killed by parent! \n”);lockf (stdout, 0, 0);exit (0);}}else{wait_ mark = l;signal(SIGINT,SIG_IGN);********signal (16, stop);printf(%d”,SIG_DEL);waiting ( );lockf (stdout, 1, 0);printf (“child process 1 is killed by parent!\n”);1ockf ( stdout, 0, 0);exit (0);}}void waiting ( ){while (wait_mark !=0);}void stop ( ){wait_mark = 0;}2.在 上 面 的 程 序 中 增 加 语 句 signal ( SIGINT, SIG_IGN ) 和 signal (SIGQUIT, SIG_IGN), 观 察执 行 结 果 , 并 分 析 原 因 。 这 里 ,signal(SIGINT,SIG_IGN)和 signal(SIGQUIT,SIG_IGN)分 别 为 忽 略Del 键 信 号 以 及 忽 略 中 断 信 号 。【 实 验 结 果 】源 代 码 : # include # includc # include int pid1, pid2;int EndFlag = 0;pf1 = 0;pf2 = 0;void IntDelete ( ){操 作 系 统 实 验 报 告东 北 大 学 秦 皇 岛 分 校 计 算 机 与 通 信 工 程 学 院 第 6 页 指 导 教 师 : 吕 艳 霞kill(pidl, 16);kill(pid2, 17);EndFlag = 1;}void Intl ( )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值