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

个人信息:

  • 姓名:林永鑫
  • 学号:201821121040
  • 班级:计算1812

1. 编写程序

在服务器上用VIM编辑器编写一个程序:一个进程创建(fork)两个子进程。给出源代码:

运行结果:

2. 打印进程树

打印1所创建的进程树结构,给出带有自己名字的截图。

使用sleep(100)挂起进程,以便打印进程树

3. 解读进程相关信息

(1) ps -ef

使用ps -ef给出所创建进程的信息,并分析每个字段的含义。

 

UID:该进程执行的用户ID

PID:进程的ID

PPID:该进程的父级进程ID

C:CPU占用率,单位:%

STIME:进程的启动时间

TTY:该进程在哪个终端上运行(登陆者的终端位置),若与终端无关,则显示(?)若为pts/0等,则表示由网络连接主机进程

TIME:该进程实际使用CPU运行的时间

CMD:进程的名称或对应的路径

(2) ps -aux

使用ps -aux给出所创建进程的信息,并分析每个字段的含义。

 

 

USER:进程的属主
PID:进程的ID
%CPU:进程占用的CPU百分比
%MEM:表示该进程占用内存的百分比,途中表示三个进程都没有占用内存
RSS:该进程占用的固定内存量(KB)
TTY:该进程在哪个终端上运行(登陆者的终端位置),若与终端无关,则显示(?)若为pts/0等,则表示由网络连接主机进程
STAT:状态位常见的状态字符
START:该进程被触发启动的时间
TIME:该进程实际使用CPU运行的时间
COMMAND :命令的名称和参数;
D :无法中断的休眠状态(通常 IO 的进程);
R: 正在运行可中在队列中可过行的;
S: 处于休眠状态;
T :停止或被追踪;
W: 进入内存交换 
X :死掉的进程 (基本很少见);
Z: 僵尸进程;

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

通过该实验如果有产生新的疑问,可以写出来,并尝试自己解决问题。

1.在编辑代码的时候出现:E348:No string under cursor(提示)

解决方法:

按一下“ESC”,即可回到命令行模式,输入按一下“:”冒号键进入底行模式。
输入:
: w filename (将文章以指定的文件名filename保存)
: wq (输入「wq」,存盘并退出vim)
: q! (输入q!, 不存盘强制退出vim)
2.在打印进程树的时候使用pstree -p pid 无法打印出进程树
解决方法:增加挂起的时间(我将原来的sleep(10)改为sleep(100))
posted @ 2020-04-03 13:57  L1nnnnn  阅读(639)  评论(0编辑  收藏  举报