进程管理
源码文件:.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 修改用户密码