进程与线程


程序:静态的,存放在磁盘里的一系列指令
进程:动态的,程序的一次执行过程(一系列状态机)
pid:每次运行时递增的,在操作系统上可以看到这一点
PCB:进程存在的唯一标志 在内核源码中对应include/linux/sched.h中的task_struct结构体

linux内核源码
进程在内存中的地址空间

进程的状态

进程控制

就是实现进程的状态转换 操作系统要干什么
使用原语实现 原语
原语使用关中断和开中断这两个特权指令实现,实现了原语的原子性

进程通信

两个或多个进程之间产生数据交互
为什么进程通信需要操作系统支持
出于安全考虑,进程之间的地址空间不能随意相互访问,需要操作系统的支持
通信方式

线程

为什么要引入线程:一个进程也要同时做很多事如聊天视频传文件
带来的变化

文件管理

408大纲