news 2026/8/16 6:11:04

ARCH与交叉编译器的关系

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ARCH与交叉编译器的关系

编译器只是一台“翻译机”,它自己没有思想,它只会机械地把输入的 .c 文件翻译成机器码。而决定“把哪些 .c 文件喂给它翻译”的,是构建系统(Makefile)

关键机制
当你执行make时,总管会先看ARCH环境变量

  • 如果ARCH=arm,总管就把arch/arm/这个目录下的.c文件列表,列成清单,塞给arm-gcc去翻译。

  • 如果ARCH=x86,总管就无视arch/arm/,把arch/x86/目录下的.c文件塞给arm-gcc去翻译

ARCH=arm决定了“哪些代码属于体系相关部分”,而CROSS_COMPILE决定了“如何将体系无关 + 体系相关两部分代码翻译成硬件能跑的指令”

  • 体系无关的代码(骨架):位于kernel/mm/fs/net/等目录。

    • 它负责“通用逻辑”:比如进程调度算法(CFS)、虚拟内存换页(LRU)、文件系统的 inode 管理。

    • 特点:只写逻辑,不碰硬件寄存器。写这些代码的人不需要知道 CPU 是 ARM 还是 x86,只看重算法。

  • 体系相关的代码(皮肤/血管):位于arch/arm/arch/x86/目录。

    • 它负责“硬件触达”:比如 CPU 上电第一条汇编指令(head.S)、中断控制器(GIC)初始化、MMU 页表填充、具体 CPU 的 Cache 操作。

    • 特点:赤裸裸地操作物理地址和特定寄存器。这段代码必须和 CPU 架构 100% 严丝合缝

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

警惕GitHub钓鱼:伪造OpenClaw代币攻击与开发者钱包防护

1. 从一次“开源贡献”邀请说起:GitHub上的新型钓鱼陷阱前几天,一个朋友在群里发了个截图,问我靠不靠谱。截图里是一个GitHub仓库的Issue,标题是“寻求OpenClaw集成专家,高额赏金”。内容写得挺像那么回事,…

作者头像 李华
网站建设 2026/8/16 6:09:06

Shell 内建 source 命令详解:加载脚本、刷新环境配置实战

Linux 学习资料 https://pan.baidu.com/s/1A6qqBk2ViE_Le2cQjSowkQ?pwd7uz8 一、命令简介 source 是 Bash 和其他类 Unix shell 的内建命令,用于在当前 Shell 环境中读取并执行指定文件中的命令。与在子 Shell 中执行脚本不同,source 会将文件中定义…

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

访问逻辑 - 推心置腹

网址:第三题 访问逻辑 推心置腹 - 猿人学爬虫逆向练习平台 Network 面板:请求都是从哪里发出来的 一、HTML 解析阶段(浏览器自动发,JS 还没运行) 浏览器解析 HTML 文档,读到标签就自动发起网络请求&…

作者头像 李华
网站建设 2026/8/16 6:07:31

OpenClaw本地AI智能体部署:合规边界与安全实践指南

1. 项目概述:从“OpenClaw校内禁令”看本地AI智能体部署的合规边界最近,关于“OpenClaw”的讨论在技术社区和高校圈子里热度不低。一方面,不少开发者热衷于探索这个开源的AI智能体框架,尝试在本地部署,用它来集成大语言…

作者头像 李华
网站建设 2026/8/16 6:06:31

程序员职业特性:为何技术行业少有‘走后门‘现象

1. 程序员职业的现状与认知误区"走后门"这个词在职场语境中通常指通过非正常渠道获取职位或资源的行为。但在程序员这个职业中,这种现象确实相对少见。作为一个从业十余年的老码农,我想从行业特性、技能门槛、职业发展等角度,聊聊这…

作者头像 李华
网站建设 2026/8/16 5:57:49

奔驰汽车修理的技术剖析与实践指南

在我们仔细分析奔驰汽车修理的过程中,需要对相关技术有一个全面的理解。汽车维修、尤其是针对奔驰发动机维修识别和更关乎维修过程中的ระบบ性科学性。我们意识到,精准的故障诊断是有效修理的第一步。这意味着在分析常见故障时,需要结合实…

作者头像 李华