计算机基础
CPU的基本组成
PC(Program Counter) 程序计数器,记录当前指令地址
Registers 存储CPU计算需要用到的数据
ALU(Arithmetic & Logic Unit) 运算单元
CU(Control Unit) 控制单元
MMU(Memory Management Unit) 内存管理单元
cache 缓存
缓存
缓存行对齐
按块读取,离cpu越近,读取越快,不同cpu对同一块内存访问,会读取到同一块数据,数据被修改时,另一个cpu读取到的数据会按照缓存一致性协议(MESI
)设置的原则进行读取数据
内核
用户态与内核态
cpu分不同的指令级别
linux内核跑在ring 0级,用户程序跑在ring 3,对于系统的关键访问,需要经过kernel的同意,保证系统健壮性
JVM,对于OS就是普通程序
进程 线程 纤程 中断
进程与线程的区别
进程是一个程序运行起来的状态,线程是一个进程中的不同执行路径。进程是OS分配资源的基本单位,线程是执行调度的基本单位。分配资源最重要的是:独立的内存空间,线程调度执行。线程共享进程的内存空间,没有自己独立的内存空间。
纤程:用户态的线程,线程中的线程,切换和调度不需要经过OS
优势:
- 占用资源少 OS:线程1M,Fiber 4K
- 切换简单,不需要经过OS,并发量高
- 可以启动很多