操作系统第2次实验报告:创建进程
- 姓名:程开
- 学号:201821121060
- 班级:计算1812
1. 编写程序
在服务器上用VIM编辑器编写一个程序:一个进程创建(fork)两个子进程。给出源代码:
2. 打印进程树
在进程被挂起后,在挂起时间内打开另外一个窗口连接服务器打印进程树
3. 解读进程相关信息
ps -ef
ps -ef|grep "fork"
从左到右分别对应
uid:用户名 pid:进程号 ppid:父进程号 c:占用的cpu使用率 stime:程序开始运行的时间 TTY:登录进程终端机位置
TIME:程序执行时间 CMD:进程执行的命令
ps -aux|grep "fork"
其余字段和上面相同
4. 通过该实验产生新的疑问及解答
①本次实验里面需要用到sleep()函数,最好时间设置长一点,此处单位是s(秒),而(大写)Sleep()的单位是毫秒,需要注意
②从进程的并发执行看,输出顺序应该是带有随机性的,3个进程没有同步措施,父进程与子进程的输出内容会叠加在一起,而这里输出几次全是一样的顺序,应该是函数fork()创建进程所需的时间多于输出字符的时间,保持了顺序