news 2026/8/10 0:49:38

11、进程、程序与进程间通信详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
11、进程、程序与进程间通信详解

进程、程序与进程间通信详解

1. 共享文本段

在大多数系统中,链接编辑器负责构建共享文本段。它会对用户程序的代码和数据部分进行不同程度的重定位,以便为它们应用不同的访问权限。通常,文本段从虚拟地址 0 开始,而数据段则从以下位置开始:

(textsize + SEGSIZE - 1) / SEGSIZE

这里的 SEGSIZE 是可应用单独访问权限的最小内存块大小。例如,在 PDP11 上是 BK,在 VAX 上是 512 字节。由于这种额外的重定位,文本段顶部和数据段底部之间通常会有一小段不存在的内存。

共享文本段虽无功能上的好处,但能在多方面提高效率:
- 只读段无需多次交换出去,因为交换区的原始副本始终是最新的,这对交互式程序尤其有利,这类程序在等待终端输入时往往会被交换出去。
- 在执行fork操作时,无需复制纯文本段,硬件只需将其映射到父进程和子进程的地址空间即可。
- 多个进程(可能属于不同用户)同时从同一段执行,可节省主内存,对于常见程序(如 shell、编辑器和编译器)的多个副本,能有效减少开销。

2. 链接共享文本程序

在 C 编译器或链接器命令行中指定-n选项,可将程序链接为共享文本。例如:

CC -0 fred main.o a.o b.o

此命令会链接一个非共享文本版本的程序fred。而

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/9 15:27:47

计算机毕业没计全流程指南(小白也能看懂)

在大学最后一个学期,毕业设计是每个计算机专业学生必须完成的重要环节。它不仅关系到毕业和学位评定,还展示你这些年所学的技术与思考能力。如果你从未做过完整项目,不要慌,本指南将带你一步一步完成。 🚀 一、什么是毕…

作者头像 李华
网站建设 2026/8/9 7:51:23

制造业智能助手:AI驱动的生产决策革新

制造业智能助手:AI驱动的生产决策革新 【免费下载链接】llm-answer-engine Build a Perplexity-Inspired Answer Engine Using Next.js, Groq, Mixtral, Langchain, OpenAI, Brave & Serper 项目地址: https://gitcode.com/GitHub_Trending/ll/llm-answer-eng…

作者头像 李华
网站建设 2026/8/9 5:18:22

3步搞定GPT-2 Large本地部署:从零开始的终极指南

3步搞定GPT-2 Large本地部署:从零开始的终极指南 【免费下载链接】gpt2-large 项目地址: https://ai.gitcode.com/hf_mirrors/openai-community/gpt2-large 还在为API调用费用发愁?担心云端数据隐私问题?本教程将带你用最简单的方式&…

作者头像 李华
网站建设 2026/8/9 11:17:31

如何为ComfyUI添加新的采样算法节点?

如何为ComfyUI添加新的采样算法节点? 在生成式AI的浪潮中,Stable Diffusion 已从研究实验室走向工业级内容生产。然而,传统的 WebUI 虽然易用,却难以满足对流程控制、可复现性和自动化部署的高阶需求。正是在这样的背景下&#xf…

作者头像 李华
网站建设 2026/8/9 3:19:33

【Java毕设源码分享】基于springboot+vue的高校大学生助学贷款系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/8/9 14:23:08

【Java毕设源码分享】基于springboot+vue的高校超市管理系统设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华