Skip to content

Commit af9404e

Browse files
committedMay 11, 2021
feat:更新linux内存管理、多线程机制
1 parent 0d8cf8f commit af9404e

File tree

1 file changed

+26
-3
lines changed

1 file changed

+26
-3
lines changed
 

‎docs/07.Linux/QA.md

+26-3
Original file line numberDiff line numberDiff line change
@@ -148,20 +148,43 @@ X 个 CPU 的电脑,可接受的系统负荷最大为 `X.0` 。将`15分钟`
148148

149149
### Linux 内存管理
150150

151+
### 函数
152+
malloc分配虚拟内存
153+
mmap虚拟内存映射方法
154+
hugepage虚拟内存映射方法,分配2MB或1GB
155+
#### 虚拟内存
156+
157+
一种实现在计算机软硬件之间的内存管理技术,将程序使用到的内存地址映射到计算机内存中的物理地址
158+
32位虚拟内存大小为0-4g,一个内存也默认大小为4kb
159+
160+
##### 优点
161+
提高内存安全性
162+
163+
##### 特点
164+
每个进程都有它自己的虚拟内存
165+
虚拟内存的大小取决于系统的体系结构
166+
151167
### 进程、线程、协程区别
152168

153169
#### 进程
154170

155-
进程是一个程序在一个数据集中的一次动态执行过程,可以简单理解为“正在执行的程序”,它是CPU 资源分配和调度的独立单位
156-
171+
是一个动态概念;由程序、数据和进程控制块组成。系统进行资源分配、调度和管理的最小单位。
157172
#### 线程
158173

159-
线程是在进程之后发展出来的概念。 线程也叫轻量级进程,它是一个基本的 CPU 执行单元,也是程序执行过程中的最小单元,由线程 ID、程序计数器、寄存器集合和堆栈共同组成。一个进程可以包含多个线程
174+
是进程的活动成分,是处理器分配资源的最小单位;可以共享进程的资源与地址空间。
160175

161176
#### 协程
162177

163178
协程是一种用户态的轻量级线程,又称微线程,英文名 Coroutine,协程的调度完全由用户控制
164179

180+
181+
#### 并发执行机制
182+
183+
把一个处理器划分为若干个短的时间片,每个时间片依次轮流地执行处理各个应用程序,由于一个时间片很短,相对于一个应用程序来说,就好像是处理器在为自己单独服务一样,从而达到多个应用程序在同时进行的效果。
184+
#### 多线程原理
185+
186+
多线程就是把操作系统中的这种并发执行机制原理运用在一个程序中,把一个程序划分为若干个子任务,多个子任务并发执行,每一个任务就是一个线程
187+
165188
### 进程间通信与信号机制
166189

167190
#### 通信方式

0 commit comments

Comments
 (0)
Please sign in to comment.