收藏 分享(赏)

实验项目4.doc

上传人:scg750829 文档编号:7151319 上传时间:2019-05-07 格式:DOC 页数:4 大小:1.01MB
下载 相关 举报
实验项目4.doc_第1页
第1页 / 共4页
实验项目4.doc_第2页
第2页 / 共4页
实验项目4.doc_第3页
第3页 / 共4页
实验项目4.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、实验项目 4信号处理4.1 实验目的本次实验的主要目的是学习使用信号机制。4.2 实验内容1、测试 SIGCHLD 信号;2、使用信号机制处理连接关闭;4.3 基本概念1、信号及信号处理信号:操作系统响应某些条件而产生的一个事件(软中断) 。信号是发送给进程的特殊消息,具有异步性。传递消息,调整程序行为;异步事件处理;信号的生成:异常, shell, 终端处理器, 进程间;信号的捕获, 响应及忽略。信号处理函数2、Linux 常见信号3、信号及信号处理4、信号处理#include void ( *signal( int sig, void ( *func) ( int) ( int);sig:

2、 目标信号;*func: 函数指针,指向处理目标信号的函数。signal 函数将一个给定的函数和一个特定的信号联系5、子进程终止父进程捕捉到 SIGCHLD 信号,调用该信号的处理函数(可设定父进程不阻塞) ,若该处理函数中调用了 wait 系列函数完成子进程的最后清理工作,子进程不会成为僵尸进程4.4 实验步骤1、进入 Linux 编程环境;下载 putty 软件并按以下步骤登录远程主机。( 1) 运 行 putty 就 可 以 看 到 下 面 这 个 界 面(2)在 Host Name 里输入 IP 地址 49.123.81.251,并选择 SSH 协议。点击 Open。(3)输入所登录的

3、主机的用户名和密码,即可进入 Linux 系统。 (提示:输入密码时光标不会发生变化,输入完毕后按回车即可)2、在当前环境下创建保存本次试验内容的文件夹。(1)执行命令 mkdir fourth 创建目录(2)执行命令 ls 列出当前存在的目录,若有 fourth 存在,则创建成功(3)执行命令 cd fourth 进入创建的目录3、通过 nano 编辑器编写头文件 sigchld.c执行命令 nano sigchld.c 创建 sigchld.c 文件。(提示:退出 nano 编辑器的方式为【Ctrl】+X,并按下 Y 即可保存修改,按下N 则为不保存,直接退出)示例代码如下:#includ

4、e#include#include#include/*本函数被调用时,说明父进程接收到 SIGCHLD 信号,有子进程退出*/void sigchld_handler(int sig)int state;printf(“Catch SIGCHLD.n“);int main()pid_t pid;signal(SIGCHLD,sigchld_handler);/设置信号处理函数/创建子进程if(pid=fork()0)/创建出错else if(pid=0)exit(0);/子进程退出elsepause();exit(0);4:显示实验结果执行命令:gcc sigchld.c -o main 对文件进行编译。执行命令:./main 运行程序。实验结果显示:Catch SIGCHLD4.5 实验验收方式1、实验课签到为实验成绩的 30%。若实验课当天有事情,可以在实验课开始之前向助教请假,无故旷课此部分成绩为零分。2、实验报告提交情况为实验成绩的 40%本次试验的实验报告提交电子档,在 月 日 前由各班班委收齐发到助教邮箱。3、实验代码提交情况为实验成绩的 30%实验课当堂完成实验代码,并由助教验收。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报