操作系统第2次实验报告:创建进程

个人信息

姓名:林伟强

学号:201821121010

班级:计算1811

一、实验目的

熟练Linux创建进程fork操作。

二、实验内容

  • 在服务器上用VIM编写一个程序:一个进程创建两个子进程。
  • 查看进程树
  • 查看进程相关信息

三、实验报告

 

1. 编写程序

 

 

2. 打印进程树

程序运行结果:

 

 

 

 (开启2个终端一个挂程序,另一个打印树)

3. 解读进程相关信息

用的时候必须在另一个程序中将进程挂起

(1) ps -ef

UID        PID  PPID  C STIME TTY          TIME CMD

 

 uid:为用户id

pid :进程id

ppid:父进程的PID(由后面的2个进程可以看出)

c:为进程占cpu率

stime 为运行的时候的时间

TTY是终端名
pts是虚拟终端/第3终端
 time 运行持续时间
cmd 为表示启动这个进程的命令

(2) ps -aux

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND

 

%cpu:cpu占用率

%MEM: 占用的记忆体使用率

VSZ:完全驻留需要会用多少内存

RSS,表示进程当前实际上占用了多少内存

STAT,该进程的状态,S表示中断

剩下的和上面ps -ef相同

4. 通过该实验产生新的疑问及解答

为什么我的程序中得到的子进程的pid输出的时候是反着输出的。

getpid是一种函数,功能是取得进程识别码,许多程序利用取到的此值来建立临时文件,以避免临时文件相同带来的问题。

posted on 2020-04-02 21:21  咻咻ll  阅读(171)  评论(0编辑  收藏  举报