0502 多任务原理、任务管理、进程和线程、用户管理、权限管理
t目录
1 多任务的原理
CPU依次在每一个任务执行一小段时间,然后跳到下一个任务,如此循环
2 任务管理
2.1 利用 nano 命令创建一个新的py文件,并输入一段是循环代码
nano test.py
1 import time 2 while True: 3 print("三少好帅") 4 time.sleep(2)
2.2 利用 Python3 命令执行 test.py 文件
python3 test.py

> 效果:每间隔2秒就在屏幕输出一行内容;此时你可以输入命令但是没有任何效果,因为你的Linux的控制权会被Python3完全霸占
2.3 多会控制权的方法
2.3.1 键盘打断这个Python程序 -->> ctrl + c
2.3.2 断电 -->> SB才用
2.3.3 暂停这个Python程序 -->> ctrl + z
暂停命令不仅仅可以让Python程序停下来,而且还可以看到提示信息

2.4 利用 nano 命令再创建一个新的py文件,功能是每隔两秒就像指定文件写入一行数据
nano test2.py

> 注意:空格不能后用 tab 键代替,否则会报错
2.5 执行 test2.py 这个文件
python3 test2.py
> 屏幕虽然没有输出,但是控制权仍然归Python3;同样也只能用 暂停 来夺回控制权
夺回控制权后通过 cat text.txt 没有任何效果
> 原因:还没有真正写入内容到 text.txt 文件中
2.6 任务状态
2.6.1 查看任务状态
jobs

2.6.2 恢复暂停的任务到前台
fg + %任务号
> %可以省略;这种方式是恢复到前台(即:没有夺回控制权)

2.6.3 恢复暂停的任务到后台
gb + %任务号
> %可以省略;这种方式是恢复到后台(即:夺回控制权);恢复到后台后既可以在控制台输入命令啦

> 注意1:在后台运行的程序通过 jobs 查看时会有一个 & 在后面,而且状态信息由stopped 变成了 running
> 注意2: 执行 py文件时在末尾直接加 & 也可以让其在后台运行
例如:python3 test3.py &
> 注意3:尽量不要将有标准输出的程序放到后台去运行,因为这样会让你认为你对控制台失去了控制权,但是实际上你是没有失去控制权的
2.6.4 怎么暂停后台任务
前台任务直接 ctrl + z 就能够暂停
后台任务不能通过 strl + z 暂停
> 方法:先用 fg + 任务号 让其在前台运行,再通过 ctrl + z 去暂停它
3 进程和线程
进程 包含 线程
3.1 查看进程
ps

3.2 杀死进程
kill + PID
> 如果一个进程 暂停 后,再去杀死它的进程,那么再去恢复这个进程是就会显示 terminated

4 用户管理
待更新...
5 权限管理

每个文件的详细信息中前面有 一串字符(共10位)
5.1 第一位表示文件类型(总共有7大文件类型)
5.2 后面9位是权限标识
5.2.1 前3位是拥有者权限
5.2.2 中间3位是组权限
5.2.3 最有3位是其它人的权限
5.3 权限标识
- : 无对应权限
r : 可读
w : 可写
x : 可执行
5.3 三位数字中
第一位:读权限位
第二位:写权限位
第三位:执行权限位
5.4 利用0-7来表示3位数字的所有权限
例如:7 -->> 111 -->> rwx
4 -->> 100 -->> r--
5.5 修改权限
5.5.1 修改所有者及组
sudo chown 用户名 : 组 路径
5.5.2 修改权限位
sudo chmod 模式(3位数字) 路径
例如:sudo chmod 777 test.py

浙公网安备 33010602011771号