易截截图软件、单文件、免安装、纯绿色、仅160KB

linux实验五

实验5  进程管理
一、实验目的:
1.      了解进程与程序的区别,加深对进程概念的理解加;
2. 掌握进程并发执行的原理,及其所引起的同步、互斥问题的方法
二、实验要求:
    完成实验内容并写出实验报告,报告应具有以下内容:
    1. 实验目的。
    2. 实验内容。
    3. 程序流程图、程序执行情况、及运行结果分析。
    4. 实验过程中出现的问题及解决方法。
    5. 实验体会。
  
三、实验内容:
1.进程的创建。
   编写一段程序,使用系统调用fork()创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示字符“a”;子进程分别显示字符“b”和字符“c”。试观察记录屏幕上的显示结果,并分析原因。
 
2.进程的控制。
修改在进程创建中已编写的程序,将每个进程输出一个字符改成每个进程输出一句话(长一些),观察程序执行时屏幕上出现的现象,并分析原因。
如果在程序中使用系统调用lockf()来给每个进程加锁,可以实现进程的互斥,观察并分析出现的现象。
 
3.实现进程的软中断通信
编制一段程序,使用系统调用fork()创建两个子进程,再用系统调用signal()让父进程捕捉键盘上来的中断信号(即按ctrl+c键);当捕捉到中断信号后,父进程用系统调用kill()向两个子进程发出信号,子进程捕捉到信号后分别输出下列信息后终止:
Child Process1 is killed by Parent!
Child Process2 is killed by Parent!
父进程等待两个子进程终止后,输出如下的信息后终止:
Parent Process is killed!
多运行几次编写的程序,分析出现不同结果的原因。
思考问题:
该程序前面部分用了两个wait(0),为什么?
子进程中,Signal(17, stop);中的中断号17能否改变?如果能改变,还要做哪些相应修改?
如果把父进程中的任意一个kill语句注释掉,会出现什么结果?为什么?
 
四、实验指导:
 
1、相关函数
①fork函数:(课本P10-106,创建一个子进程的例子)
用于创建一个新的进程(子进程),格式如下:
Int fork();
正确返回:等于0,创建子进程,从子进程返回的ID值。
    &nbs


相关文档:

linux和windows文件名长度限制

Linux文件名的长度限制是255个字符
windows下完全限定文件名必须少于260个字符,目录名必须小于248个字符。
linux下文件数、目录数、文件名长度的各种限制
以下测试都是在没有优化或修改内核的前提下测试的结果
1. 测试目的:ext3文件系统下filename最大字符长度
  测试平台:RHEL5U3_x64
  测试过程:
L ......

Linux SSH 中文乱码解决方法

现象:用SSH软件连接时,中文是乱码
解决:
修改/etc/sysconfig/i18n文件,将其改成以下内容:
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16" ......

如何保障Linux用户安全

Linux应用范围的日益扩展,使得其使用性越来越受到关注。性是一个复杂和广泛的问题,此处我们主要关注Linux用户的账户安全,特别是Linux系统管理员如何保障用户的安全。
  
  
  口令安全
  
  
  Linux系统中的/etc/passwd文件含有全部系统需要知道的每个用户的信息(加密口令的密文也可能存于/etc/ ......

Linux 新增系统调用的启示

最近在研究 Linux 内核的时间子系统,为下一篇长文《服务器程序中的日期与时间》做准备,无意中注意到了 Linux 新增的几个系统调用的对编写服务器代码的影响,先大致记录在这里。这篇博客也可算作前一篇《多线程服务器的常用编程模型》的一个注脚。 1. 服务器程序的风格可能在变 新的创建文件描述符的 syscall 一般都支持 ......

linux实验四

实验4  Linux程序开发基础
一、实验目的:
1.      继续熟悉Linux终端命令;
2.      继续学习使用Vi编辑器;
3.      学习使用Linux环境下C语言程序的编译。
4.      调试器Gdb的使用
二、实验要求:
& ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号