第4讲:从程序到进程——操作系统如何让程序运行起来?
第四课程序Program和进程Process很多新手会说程序就是进程。其实这是错误的。我们先不要看教材定义先来看一个生活中的例子。先讲一个故事假设你去饭店。厨师有一本《宫保鸡丁菜谱》菜谱里面写着第一步 切鸡肉 ↓ 第二步 放油 ↓ 第三步 放辣椒 ↓ 第四步 翻炒请问菜谱是不是一道菜不是。它只是做菜的方法。然后厨师开始真正做菜。这个时候锅已经热了。鸡肉已经切好了。锅里放了多少油。炒到第几步。这些信息都在不断变化。这时候真正做菜的过程才是进程。所以菜谱 ↓ 程序Program ---------------------- 真正炒菜 ↓ 进程Process再举一个电脑例子你的电脑里有QQ.exe它静静躺在D:\QQ\它有没有运行没有。它只是一个文件。所以程序 存放在磁盘上的静态文件。现在你双击QQ。发生了什么QQ.exe ↓ Windows加载 ↓ 进入内存 ↓ CPU开始执行 ↓ QQ窗口出现这个时候QQ已经变成进程。官方定义翻译成人话教材程序是指令的集合。翻译就是一个普通文件。例如QQ.exe 微信.exe Chrome.exe都是程序。教材进程是程序的一次执行过程。翻译程序只是躺在那里。进程已经开始跑了。最重要的一句话考试必考程序是静态的。进程是动态的。一定要记住。我们来对比。程序Program进程Process静态动态存在磁盘存在内存不占CPU正在使用CPU永久存在会创建、结束可以被复制很多次每次运行都会产生新的进程一个程序可以产生多个进程吗答案当然可以。例如打开QQ。再打开一个QQ。再打开一个QQ。电脑里QQ.exe ↓ 进程1 ↓ 进程2 ↓ 进程3是不是一个程序。三个进程。所以一个程序可以对应多个进程。为什么需要进程现在有一个问题。假设浏览器正在播放视频。突然CPU切去运行QQ。过了一会儿再回来。CPU怎么知道浏览器刚才执行到了哪里例如浏览器程序① 读取视频 ↓ ② 解码 ↓ ③ 播放声音 ↓ ④ 显示画面CPU切走以后。回来怎么知道现在应该执行②还是③必须有人记住。于是操作系统为每一个进程建立身份证。教材叫PCBProcess Control Block进程控制块PCB是什么PCB就是进程档案。我们举个学生档案的例子。学校不会只记张三还会记姓名 学号 班级 成绩 联系方式同样操作系统也要记录QQ ↓ 运行到哪里 ↓ 用了多少内存 ↓ 优先级 ↓ 打开了哪些文件这些全部放进PCB。PCB里面有什么教材一般会分四类。我们先理解不要求背。① 进程标识信息例如PID 1024每个进程都有自己的身份证号。Linuxps看到的PID 1024 1031 2056就是进程编号。② CPU现场这是最重要的。例如CPU刚刚运行到第200行代码。突然CPU去运行微信。回来以后。必须继续第201行。所以PCB里面要保存CPU寄存器 程序计数器PC 栈指针现在不用死记知道作用即可保存运行现场。③ 资源信息例如QQ用了500MB内存打开聊天.db 头像.png这些PCB都要记录。④ 调度信息操作系统要决定谁先运行所以PCB里面还有优先级 状态 等待时间以后讲调度算法会详细说。PCB为什么重要一句话PCB是进程存在的唯一标志。什么意思很多同学误以为程序在内存里就是进程。其实不是。真正让操作系统认识一个进程的是PCB教材经常说创建进程本质就是创建PCB。撤销进程本质就是删除PCB。这两句话非常重要。一个完整的流程当你双击QQ时发生的是磁盘 QQ.exe │ ▼ 操作系统 ① 创建PCB ② 分配内存 ③ 加载程序 ④ 分配资源 │ ▼ CPU开始运行 │ ▼ QQ进程所以程序是原材料进程是生产出来并正在运行的产品PCB是它的身份证和档案。今天最重要的一张图一定记住程序Program 磁盘上的静态文件 │ 双击 / 操作系统加载 │ ▼ 创建 PCB身份证 │ 分配内存、CPU等资源 │ ▼ 进程Process 正在运行的程序本课重点总结考试高频✅程序是静态的进程是动态的。✅程序存放在磁盘进程运行在内存。✅一个程序可以创建多个进程。✅PCB进程控制块是进程存在的唯一标志。✅创建进程 创建PCB撤销进程 删除PCB。

相关新闻

Claude Code跨窗口私聊:AI智能体协同编程实战指南

Claude Code跨窗口私聊:AI智能体协同编程实战指南

大家好,我是专注于AI开发工具探索与实践的技术博主。最近,Claude Code迎来了一次堪称“游戏规则改变者”的重大更新——AI智能体之间可以跨窗口进行私密对话了。这意味着,在你的开发环境中,一个负责前端代码生成的AI,可…

2026/8/10 11:57:45 阅读更多 →
现代前端面试五大核心维度:从原理到实战的深度考察

现代前端面试五大核心维度:从原理到实战的深度考察

1. 从“背”到“用”:前端面试的范式转移最近帮团队面试了几轮,也和一些在大厂的朋友聊了聊,一个非常明显的感受是:前端面试的“八股文”时代,真的在加速退场。过去那种“请简述Vue2和Vue3响应式原理的区别”、“React…

2026/8/10 11:57:45 阅读更多 →
Python实现本地化文本二维码生成器:从原理到工程实践

Python实现本地化文本二维码生成器:从原理到工程实践

1. 这篇文章真正要解决的问题 你是不是也遇到过这样的场景?需要把一个网址、一段Wi-Fi密码、或者几句重要的配置信息,快速分享给同事或用户。直接发一长串字符,对方容易输错;发个文件,又显得太重。这时候,一…

2026/8/10 11:57:45 阅读更多 →

最新新闻

从零构建私有化AI服务平台:开源模型部署与FastAPI工程实践

从零构建私有化AI服务平台:开源模型部署与FastAPI工程实践

最近在技术社区里,关于大语言模型(LLM)的讨论热度不减,尤其是如何高效、低成本地利用这些强大的AI能力。很多开发者和技术爱好者都面临一个共同难题:官方API调用成本高、有频率限制,而开源模型部署又对硬件…

2026/8/10 14:15:09 阅读更多 →
终极指南:如何用5个必装模组实现星露谷物语自动化农场管理

终极指南:如何用5个必装模组实现星露谷物语自动化农场管理

终极指南:如何用5个必装模组实现星露谷物语自动化农场管理 【免费下载链接】StardewMods Mods for Stardew Valley using SMAPI. 项目地址: https://gitcode.com/gh_mirrors/st/StardewMods 星露谷物语自动化模组能彻底解放你的农场管理时间,通过…

2026/8/10 14:15:09 阅读更多 →
终极指南:如何用Brigadier一键解决Mac双系统驱动安装难题

终极指南:如何用Brigadier一键解决Mac双系统驱动安装难题

终极指南:如何用Brigadier一键解决Mac双系统驱动安装难题 【免费下载链接】brigadier Fetch and install Boot Camp ESDs with ease. 项目地址: https://gitcode.com/gh_mirrors/bri/brigadier 你是否曾经在Mac上安装Windows时,面对复杂的Boot Ca…

2026/8/10 14:15:09 阅读更多 →
DDrawCompat完整指南:让经典DirectX游戏在现代Windows上完美运行的终极方案

DDrawCompat完整指南:让经典DirectX游戏在现代Windows上完美运行的终极方案

DDrawCompat完整指南:让经典DirectX游戏在现代Windows上完美运行的终极方案 【免费下载链接】DDrawCompat DirectDraw and Direct3D 1-7 compatibility, performance and visual enhancements for Windows Vista, 7, 8, 10 and 11 项目地址: https://gitcode.com/…

2026/8/10 14:15:09 阅读更多 →
终极指南:在Linux和macOS上免费畅玩Minecraft基岩版

终极指南:在Linux和macOS上免费畅玩Minecraft基岩版

终极指南:在Linux和macOS上免费畅玩Minecraft基岩版 【免费下载链接】mcpelauncher-manifest The main repository for the Linux and Mac OS Bedrock edition Minecraft launcher. 项目地址: https://gitcode.com/gh_mirrors/mc/mcpelauncher-manifest 想要…

2026/8/10 14:15:09 阅读更多 →
如何用AnythingLLM打造你的专属文档智能助手:新手快速上手指南

如何用AnythingLLM打造你的专属文档智能助手:新手快速上手指南

如何用AnythingLLM打造你的专属文档智能助手:新手快速上手指南 【免费下载链接】anything-llm Stop renting your intelligence. Own it with AnythingLLM. Everything you need for a powerful local-first agent experience 项目地址: https://gitcode.com/Git…

2026/8/10 14:14:08 阅读更多 →

日新闻

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南 【免费下载链接】graphql-css A blazing fast CSS-in-GQL™ library. 项目地址: https://gitcode.com/gh_mirrors/gr/graphql-css GraphQL-CSS是一个基于GraphQL的CSS-in-GQL™库&#xff0…

2026/8/10 0:00:02 阅读更多 →
告别语言障碍:KISS Translator 双语翻译插件终极指南

告别语言障碍:KISS Translator 双语翻译插件终极指南

告别语言障碍:KISS Translator 双语翻译插件终极指南 【免费下载链接】kiss-translator A simple, open source bilingual translation extension & Greasemonkey script (一个简约、开源的 双语对照翻译扩展 & 油猴脚本) 项目地址: https://gitcode.com/…

2026/8/10 0:00:02 阅读更多 →
BepInEx配置管理器:游戏插件配置的终极可视化解决方案

BepInEx配置管理器:游戏插件配置的终极可视化解决方案

BepInEx配置管理器:游戏插件配置的终极可视化解决方案 【免费下载链接】BepInEx.ConfigurationManager Plugin configuration manager for BepInEx 项目地址: https://gitcode.com/gh_mirrors/be/BepInEx.ConfigurationManager 你是否曾经因为游戏插件的复杂…

2026/8/10 0:00:02 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/10 1:05:29 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/10 1:05:29 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/10 1:05:29 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/9 17:05:02 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/10 1:05:29 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/9 17:05:02 阅读更多 →