操作系统第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()创建进程所需的时间多于输出字符的时间,保持了顺序

 

posted @ 2020-04-05 15:26  Amazing_C  阅读(205)  评论(0编辑  收藏  举报