进程

进程管理

源码文件:.c文件

程序:使用编译器将源码编译为计算机能够识别并执行的二进制文件(exe,.out)

​ 存储在磁盘上的可执行二进制文件。

程序—>进程的过程(程序如何加载到内存上称为一个进程)

进程:运行中的程序,将二进制可执行文件加载到内存上,然后由CPU执行其中的一些指令,整个执行的过程,将其称为进程。

结果:进程执行的过程中输出的数据。

操作系统是如何表示以及管理进程

将进程的相关属性记录下来,通过属性值的变化就能够描述进程正在执行,操作系统为每一个进程(PCB-进程控制块(struct 结构体变量))分配了一个编号-PID。

如何查看进程

ps命令

刚开虚拟机,会发现只有ps这个命令进程和bash这个终端。

常用的是ps -aux,

-e 显示系统上所有的进程

-f 显示出父子进程信息

-L 显示线程信息

-a 此终端机下运行的所有进程

-u 显示进程资源占用情况 CPU MEM 虚拟内存 实际内存

-x 显示没有控制终端的进程

top命令

管道和过滤命令

| grep

& 如果执行一个命令或者一个程序时,在其后面加一个&,将该命令或程序放到后台执行。

kill命令

kill pid 结束一个进程

kill -stop pid 挂起进程,将进程暂停

kill -9 pid 强制结束一个进程

pkill CMD 结束一组相关的进程

jobs

jobs 显示挂起的任务

fg+任务号 放到前台进行

bg+任务号 将挂起的进程放到后台执行

用户管理

分组:用户 组

用户信息存储的文件:

/etc/passwd 用vim打开,信息分别是

用户名 密码的占位符 用户ID 组ID 用户家目录 默认使用的终端程序

/etc/group 里面的信息分别是

组名 组ID

/etc/shadow 用户密码信息

$加密算法ID$加密秘钥$密文

添加用户

useradd newusername 如果没有-g选项,除了新建一个用户,还会新建一个组

-g 执行用户的主组

-G 指定用户所属附加组

-d 设置家目录

-s 设置默认终端

userdel username 只会删除用户信息,不会删除/home下的同名目录

userdel -r username 同步删除家目录

passwd username 修改用户密码