文件名称:Multithreading
文件大小:6KB
文件格式:ZIP
更新时间:2024-04-14 15:14:00
C
多线程 流程和线程基础 流程是资源的集合。 它由过程控制块(PCB)表示。 在每个上下文切换中,特定于过程的状态都存储在PCB中,而PCB则在内存本身中。 使流程上下文切换变得昂贵的原因是: 寄存器必须存储。 虚拟内存映射必须被存储。 还原它们非常昂贵。 CPU缓存已刷新,因此新进程可以填充它。 在每个上下文切换器上重新填充它都需要从内存中重新获取指令(非常昂贵)。 PCB具有(除其他事项外)以下信息: 流程编号 程序计数器 寄存器状态 内存限制(即虚拟内存映射) 打开文件(句柄) 优先 CPU调度信息 线程是执行和调度的单位。 线程共享地址空间。 并发控制与协调 同步机制是: 互斥( mutex )标记关键部分。 关键部分是一段代码,当线程在其中时,它们就不会被操作系统抢占。 确保尽可能简短地进入关键部分。 条件变量-在继续操作之前必须满足的特定条件。 当线程处于
【文件预览】:
Multithreading-master
----main_priority_writer.c(5KB)
----main_reader_writer.c(3KB)
----README.md(6KB)
----main_producer_consumer.c(2KB)