news 2026/2/17 12:00: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/2/8 2:09:59

React JSON Schema Form终极指南:3步构建专业表单应用

React JSON Schema Form终极指南:3步构建专业表单应用 【免费下载链接】react-jsonschema-form A React component for building Web forms from JSON Schema. 项目地址: https://gitcode.com/gh_mirrors/re/react-jsonschema-form React JSON Schema Form&a…

作者头像 李华
网站建设 2026/2/14 19:12:10

低价游陷阱专坑老年人?

「莫道桑榆晚,为霞尚满天」现在有越来越多退休的朋友,不再只是想着在家带带孙子孙女这类事情,而是跟老伙伴约好背上背包,到处去游历大江南北,朋友圈里那些拍摄美景时的笑容,就是老年人重新焕发出生机活力的…

作者头像 李华
网站建设 2026/2/15 1:13:51

Hazel引擎揭秘:如何用开源技术打造高性能2D/3D游戏开发平台

Hazel引擎揭秘:如何用开源技术打造高性能2D/3D游戏开发平台 【免费下载链接】Hazel Hazel Engine 项目地址: https://gitcode.com/gh_mirrors/ha/Hazel 你是否曾梦想开发属于自己的游戏,却被复杂的商业引擎吓退?🤔 Hazel引…

作者头像 李华
网站建设 2026/2/16 12:52:30

Spark-TTS方言合成实战:零样本实现普通话到多地域口音转换

Spark-TTS方言合成实战:零样本实现普通话到多地域口音转换 【免费下载链接】Spark-TTS Spark-TTS Inference Code 项目地址: https://gitcode.com/gh_mirrors/sp/Spark-TTS 你是否曾因标准普通话语音无法让方言使用者理解而困扰?是否在开发地域化…

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

【无标题】激活函数应该具有哪些特征

1.非线性2.可微性3.计算效率高4.缓解梯度消失与爆炸5.合理的输出范围6.稀疏激活能力7.主流激活函数对比(扩展版)#人工智能#具身智能#VLA#大模型#AI

作者头像 李华