继承和线程

进程是"资源分配的最小单位",
线程是"CPU 调度的最小单位"。

在内核里,只有结构体,没有概念

比如,在32为操作系统中,一个进程的虚拟内存为4GB,这就是一个进程。进程是一个资源容器+至少一个线程。

Linux 中的"PCB"就是 task_struct

这是一个内核级结构体 ,Linux 里进程和线程本质上都是 task_struct(线程 = 共享资源的 task)。

  • 定义在:include/linux/sched.h

  • 一个 task_struct = 一个可调度实体

  • 进程 / 线程 没有结构体区别

    • 区别在于 是否共享资源

你可以把它理解成 5 大块信息:

task_struct
├── 1. 进程状态 & 调度信息
├── 2. 标识信息(PID / TGID)
├── 3. 内存管理(mm)
├── 4. 文件系统 & IO
├── 5. 关系 & 信号 & 安全

进程: 是资源分配与隔离的基本单位,

拥有独立的虚拟地址空间和系统资源;

线程: 是 CPU 调度的最小单位,只保存执行上下文,

多个线程共享进程的资源。

因此线程切换比进程切换开销小,但并发安全问题更复杂。

相关推荐
苦 涩4 天前
考研408笔记之操作系统(五)——输入输出(IO)管理
笔记·操作系统·考研408
苦 涩4 天前
考研408笔记之操作系统(四)——文件管理
笔记·操作系统·考研408
shy^-^cky4 天前
文件的逻辑结构+ 物理结构
数据结构·操作系统·文件·数据·逻辑结构·物理结构·文件结构
苦 涩5 天前
考研408笔记之操作系统(三)——内存管理
笔记·操作系统·考研408
苦 涩5 天前
考研408笔记之操作系统(二)——进程与线程
笔记·操作系统·考研408
苦 涩5 天前
考研408笔记之操作系统(一)——计算机系统概述
笔记·操作系统·考研408
a里啊里啊6 天前
软考-软件评测师:知识点整理(二)——操作系统基础知识
操作系统·线程·进程·软考·pv操作·软件评测师
W.W.H.8 天前
FreeRTOS移植(保姆级教程)
经验分享·单片机·操作系统·freertos·rtos
程序员小崔日记8 天前
当 AIR 只支持 Mac,我开始重新思考操作系统这件事
macos·操作系统·ai编程
NE_STOP9 天前
Linux进阶--系统备份、恢复与可视化管理工具webmin、bt宝塔
操作系统