1.进程:操作系统分配资源(空间、文件、接口等)的基本单位
线程:CPU执行的基本单位。
2.1个cpu在一个时间点只执行一个线程。能执行多个线程是因为线程切换(上下文切换)
3.ALU:计算使用
Registers:存储
PC:记录位置
线程切换时要【保护现场】,下次切回来再使用。
切换线程也有线程开销的,线程个数经验:
cpu 密集型n+1 非cpu密集型 2n+1
重量级:操作系统来管理的;
轻量级:不需要操作系统来管理的,都是轻量级。
调用了汇编指令的cmpxchg1命令。
LOCK_IF_MP:如果是多processor则lock。 MP:Mulit Processor。
总线分3:数据总线、地址总线、控制总线。
偏向锁:
偏向锁延迟4s
rust 语言了解一下。