1、计算机结构:
处理器(CPU):取指令-解码-执行。包含寄存器、进程/线程的执行指令。CPU是按时序进行执行的,多进程从纳秒级别看,是顺序执行。
寄存器:下一条指令的内存地址、堆栈指针、状态字/程序切换。
超进程:一个CPU同时为多个进程服务(默认是一对一顺序),进程有最大数量限制。系统中理论上最大的进程数是4090。linux 系统中单个进程的最大线程数有其最大的限制1024。LINUX中单个进程理论上可以创建的最大线程数382个。https://blog.csdn.net/gatieme/article/details/51058797
高速缓存器:多核(一个处理器中包含多个CPU)之间的通信桥梁。
内存(RAM):包含非易失存储NVRAM。、进程/线程的堆栈数据,
ROM:非易失
CMOS:时间增量,保持当前时间同步。
存储器:磁盘、磁带、dvd
总线:PCI总线(近CPU)、ISA总线(近I/O设备)
操作系统:指令在CPU中执行,数据在内存中保存。
2、死锁
随机等待:饥饿
高安全性避免死锁-最大并行
调度:调度策略(用户进程参数化) 与 调度机制(算法内核) 分离。
a-互斥
b-占有和等待
c-不可抢占
d-环路等待
3、多处理机
a-多处理器(多CPU共享RAM)
b-多计算机(同机房同操作系统部署,共享专用高速通信网络):RPC
c-虚拟机(硬件虚拟化virtual)
d-分布式(distributed):不同机房不同操作系统普通通信网络:资源利用充分。
4、分布式中间件:
a-基于web网页:client-server:http、ftp+DNS+file
b-基于文件:上传、下载
c-基于对象object:变量+方法+适配器adaptor
d-基于协作cooridinate:发布+订阅(有更新后广播推送):生产者消费者模型
e-基于网格grid:空闲时间段资源共享利用。