操作系统基础

一、进程和线程的区别

https://www.cnblogs.com/fanguangdexiaoyuer/p/10834737.html

1、进程间通信方式IPC

(1)管道pipe、(2)信号、(3)消息队列、

(4)共享内存、(5)信号量、(6)套接字

2、用户态和核心态

用户态切换到内核态:系统调用、异常(缺页异常)、外围设备的中断

3、操作系统的进程空间

栈区(编译器自动分配释放)、堆区(程序员分配释放)、

静态区(存放全局变量和静态变量)、代码区(存放函数体的二进制代码)

 

二、内存管理

页式管理、段式管理、段页式管理

分段管理:将程序的地址空间划分为若干段没有内碎片,会产生外碎片。

分页管理:将程序的逻辑地址划分为固定大小的页,没有外碎片,可能会产生内碎片。

段页式管理:先分段再分页。

1、页面置换算法:FIFO、LRU、OPT(过于理想化)

2、死锁条件、解决方式

死锁条件:互斥、请求与保持、非剥夺、循环等待

解决:乐观锁(破坏资源互斥条件)CAS;资源一次性分配,tryLock;

可剥夺资源(数据库deadlock超时);资源有序分配,转账场景

posted @ 2022-09-20 15:21  stay_heart  阅读(37)  评论(0)    收藏  举报