5. 利用vi及top命令分别创建两个后台进程后,再利用ps -au命令显示这两个后台进程的运行状态。用操作系统原理的进程运行状态转换图加以解释说明。
时间: 2024-05-07 18:17:40 浏览: 130
首先,使用vi命令创建一个后台进程的方法是在命令后加上"&"符号,例如:
```
vi test.txt &
```
这将会在后台启动vi编辑器,同时允许你在终端输入其他命令。
接着,使用top命令创建后台进程的方法是在命令后加上"Ctrl + Z"组合键,然后输入"bg"命令,例如:
```
top
Ctrl + Z
bg
```
这将会将top命令转化为后台进程,同时允许你在终端输入其他命令。
然后,使用ps -au命令可以显示所有进程的运行状态,其中-u选项用于指定用户,并列出该用户的所有进程,例如:
```
ps -au username
```
运行后,你可以看到类似下面的输出:
```
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
username 1234 0.0 0.1 12345 6789 ? S 00:00 0:00 command1
username 5678 0.0 0.2 23456 7890 ? S 00:00 0:00 command2
```
其中,STAT列显示了进程的状态。根据操作系统原理的进程运行状态转换图,进程的状态可以分为五种:新建(New)、就绪(Ready)、运行(Running)、阻塞(Blocked)和终止(Terminated)。
当进程被创建后,它的状态为新建(New)。当操作系统分配了资源后,进程会变为就绪(Ready)状态,等待CPU时间片来执行。当CPU时间片分配给该进程后,进程会变为运行(Running)状态,开始执行程序。当进程等待某些事件(例如I/O操作)完成时,进程会变为阻塞(Blocked)状态。当进程完成程序执行或被操作系统强制终止时,进程会变为终止(Terminated)状态。
因此,在ps -au命令的输出中,状态为S的进程表示就绪(Ready)状态,状态为R的进程表示运行(Running)状态,状态为D的进程表示阻塞(Blocked)状态,状态为T的进程表示终止(Terminated)状态。
阅读全文