目录
1 操作系统
1.1 简介
1.2 操作系统概览
1.2.1 基本功能
1.2.2 并发性
1.2.3 共享性
1.2.4 虚拟性
1.2.5 异步性
1.3 进程管理
1.3.1 进程管理及实体
主存中的进程形态
进程与线程
1.3.2 进程管理之五种状态模型
就绪状态
执行状态
阻塞状态
创建状态
终止状态
1.3.3 进程管理之进程同步
为什么需要同步
同步的原则
1.4 Linux的进程管理
1.4.1 进程的类型
前台进程
后台进程
守护进程
进程的标记
1.4.2 进程的标记
- man ps
1.4.3 Linux进程相关命令
- top
- ps
- ps -aux
- ps -aux | grep ‘python3’ #指定的进程
- ps -aux | grep 61977
- ps -ef --forest #进程的父子关系
- ps -aux --sort=-pcpu
- ps -aux --sort=-pmem
# [1] 前台运行
python3 process_pi.py
# [2] 后台运行
python3 process_pi.py &
# [3] kill -9 id
kill -9 2333
1.5 作业管理
1.5.1 作业管理之进程调度
非抢占式调度
抢占式调度
先来先服务调度算法
短进程优先调度算法
高优先权优先调度算法
时间片轮转调度算法
1.5.2 作业管理之死锁
死锁的产生
死锁的必要条件
死锁的处理
预防死锁的方法
银行家算法
1.6 存储管理
1.6.1 存储管理之内存分配与回收
1.6.2 存储管理之段页式存储管理
页式存储管理
段式存储管理
段页式存储管理
1.6.3 存储管理之虚拟内存
虚拟内存概述
程序的局部性原理
虚拟内存的置换算法
1.6.4 Linux的存储管理
Buddy内存管理算法
Linux交换空间
1.7 文件管理
1.7.1 操作系统的文件管理
文件的逻辑结构
辅存的存储空间分配
目录管理
1.7.2 Linux文件的基本操作
Linux目录
- /bin/ (绿色)可执行二进制文件
- /etc/ (.conf)系统配置文件
- /home/ 用户目录
- /usr/local/ 管理员安装的目录
- /proc/ 虚拟文件系统目录,系统内存映射
- /dev/ (黄色)设备
- /boot/ 系统引导文件
- /lib/ 系统启动/运行的动态库文件
Linux文件类型
1.7.3 linux的文件系统
文件系统
Ext文件系统
- 查看挂载信息 : df -T
1.8 操作系统的设备管理
1.8.1 广义的IO设备
1.8.2 IO设备的缓冲区
1.8.3 SPOOLing技术
2 线程同步与进程同步
2.1 线程同步
2.1.1 线程同步之互斥量
2.1.2 线程同步之自旋锁
2.1.3 线程同步之读写锁
2.1.4 线程同步之条件变量
2.2 使用fork系统调用创建进程
2.3 进程同步
2.3.1 进程同步之共享内存******
2.3.2 进程同步之Unix套接字
3 异步任务
3.1 Python同步原语
3.2 实现线程安全的队列 Queue
3.3 实现基本任务对象Task
3.4 线程池
3.4 实现任务处理线程 Processthread
3.5 实现异步任务处理 Asynctask