logo资料库

国嵌嵌入式Linux应用开发班实验手册.pdf

第1页 / 共102页
第2页 / 共102页
第3页 / 共102页
第4页 / 共102页
第5页 / 共102页
第6页 / 共102页
第7页 / 共102页
第8页 / 共102页
资料共102页,剩余部分请下载后查看
国嵌(2)
国嵌 (3)
国嵌 (4)
国嵌 (6)
国嵌 (7)
国嵌 (8)
国嵌 (9)
国嵌 (10)
国嵌 (11)
我们专注于嵌入式 实验资料说明 国嵌所有培训班实验教材均为纸质 内部培训教材(样稿请见下页),并 配套有实验代码光盘,如需购买,请 嵌 国 登录国嵌淘宝官方店 http://enjoylinux.taobao.com 购买, 国嵌会提供全程技术支持,从其他途 径如购买到假冒国嵌实验教材,国嵌 不承担任何责任,也不提供任何技术 支持。 公司地址:成都市牛王庙东恒国际 1 栋 2 期 701 技术咨询 QQ:550491596 技术交流 QQ 群:65212116 电话:028-88820953 网址:www.enjoylinux.cn
我们专注于嵌入式 嵌入式 LINUX 应用开发班实验手册 嵌 国 国嵌 编著 嵌入式 LINUX 培训专用 公司地址:成都市牛王庙东恒国际 1 栋 2 期 701 技术咨询 QQ:550491596 技术交流 QQ 群:65212116 电话:028-88820953 网址:www.enjoylinux.cn
我们专注于嵌入式 实验 4-3 信号处理 l 实验目的: 学会使用自定义信号处理函数,处理信号 l 实验要求: 在进程中位SIGBUS注册处理函数,并向该进程发送SIGBUS 信号 l 实验器材: 软件: 安装了RHEL5的vmware虚拟机 嵌 硬件:PC机一台 l 实验代码与分析: 实验代码2-3-3 sig_bus.c 国 #include #include #include /*自定义信号处理函数*/ void my_func(int sign_no) { } int main() { if(sign_no==SIGBUS) printf("I have get SIGBUS\n"); printf("Waiting for signal SIGBUS \n "); /*注册信号处理函数*/ signal(SIGBUS,my_func); 公司地址:成都市牛王庙东恒国际 1 栋 2 期 701 技术咨询 QQ:550491596 技术交流 QQ 群:65212116 电话:028-88820953 网址:www.enjoylinux.cn
我们专注于嵌入式 pause();//将进程挂起直到捕捉到信号为止 exit(0); } 代码分析 用signal系统调用为SIGBUS信号注册了信号处理函数 my_func,然后将进程挂起等待SIGBUS信号。所以需要向 该进程发送SIGBUS信号才会执行自定义的信号处理函数 l 实验步骤: 1. 进入实验代码目录2-3-3 嵌 国 进入目录2-3-3后可以看到实验参考代码sig_bus.c 2. 编译应用程序sig_bus.c 命令:gcc sig_bus.c –o sig_bus 用gcc命令编译sig_bus.c生成可执行文件sig_bus 3. 运行应用程序 公司地址:成都市牛王庙东恒国际 1 栋 2 期 701 技术咨询 QQ:550491596 技术交流 QQ 群:65212116 电话:028-88820953 网址:www.enjoylinux.cn
我们专注于嵌入式 先在一个终端中运行sig_bus,会看到进程挂起,等待信号 然后在另一个终端中,查找到运行sig_bus这个产生的进程 号,用kill命令发送SIGBUS信号给这个进程 嵌 国 我们可以看到前面挂起的进程在接受到这个信号后的处理 用自定义信号处理函数my_func来处理,所以打印了“I have get SIGBUS“这样一句话 公司地址:成都市牛王庙东恒国际 1 栋 2 期 701 技术咨询 QQ:550491596 技术交流 QQ 群:65212116 电话:028-88820953 网址:www.enjoylinux.cn
我们专注于嵌入式 实验资料说明 国嵌所有培训班实验教材均为纸质 内部培训教材(样稿请见下页),并 配套有实验代码光盘,如需购买,请 嵌 国 登录国嵌淘宝官方店 http://enjoylinux.taobao.com 购买, 国嵌会提供全程技术支持,从其他途 径如购买到假冒国嵌实验教材,国嵌 不承担任何责任,也不提供任何技术 支持。 公司地址:成都市牛王庙东恒国际 1 栋 2 期 701 技术咨询 QQ:550491596 技术交流 QQ 群:65212116 电话:028-88820953 网址:www.enjoylinux.cn
我们专注于嵌入式 嵌入式 LINUX 应用开发班实验手册 嵌 国 国嵌 编著 嵌入式 LINUX 培训专用 公司地址:成都市牛王庙东恒国际 1 栋 2 期 701 技术咨询 QQ:550491596 技术交流 QQ 群:65212116 电话:028-88820953 网址:www.enjoylinux.cn
我们专注于嵌入式 实验 4-3 信号处理 l 实验目的: 学会使用自定义信号处理函数,处理信号 l 实验要求: 在进程中位SIGBUS注册处理函数,并向该进程发送SIGBUS 信号 l 实验器材: 软件: 安装了RHEL5的vmware虚拟机 嵌 硬件:PC机一台 l 实验代码与分析: 实验代码2-3-3 sig_bus.c 国 #include #include #include /*自定义信号处理函数*/ void my_func(int sign_no) { } int main() { if(sign_no==SIGBUS) printf("I have get SIGBUS\n"); printf("Waiting for signal SIGBUS \n "); /*注册信号处理函数*/ signal(SIGBUS,my_func); 公司地址:成都市牛王庙东恒国际 1 栋 2 期 701 技术咨询 QQ:550491596 技术交流 QQ 群:65212116 电话:028-88820953 网址:www.enjoylinux.cn
分享到:
收藏