Linux 内核不能直接访问物理地址,必须通过虚拟地址访问。

芯片寄存器是物理地址,为什么要映射成虚拟地址

Linux 启动时开启了 MMU(内存管理单元),所有地址访问都是虚拟地址。

虽然底层是物理内存/寄存器,但内核访问时都是通过虚拟地址间接访问的。

bash 复制代码
项目				内容
谁定义寄存器地址?	硬件设计人员
软件能改吗?			不能,只能遵循手册使用
软件怎么用这些地址?	通过 ioremap 等方式映射后访问
为什么不能直接访问?	需要通过 MMU 映射进虚拟地址空间
相关推荐
我会尽全力 乐观而坚强4 分钟前
MySQL库与表的操作
linux·数据库·mysql
着迷不白15 分钟前
Linux 磁盘管理完全指南:分区、文件系统、挂载与 LVM 实战
linux·运维·服务器
山川而川-R23 分钟前
LangChain
linux·运维·服务器
QH_ShareHub26 分钟前
Linux 根目录结构详解
linux·运维·服务器
骑士雄师44 分钟前
langchain:推荐切片策略
服务器·前端·langchain
SkyWalking中文站1 小时前
认识 Horizon UI · 17/17:安装与迁移
运维·监控·自动化运维
千逐681 小时前
Uniapp 鸿蒙实战之 AtomGit APP - 仓库详情与文件树浏览
服务器·microsoft·uni-app
SkyWalking中文站1 小时前
认识 Horizon UI · 16/17:八种语言的本地化
运维·监控·自动化运维
郝学胜-神的一滴1 小时前
CMake 038:OBJECT目标复用编译+Linux动态库版本自动化管理
linux·c++·程序人生·软件工程·软件构建·cmake·工程配置
liuyicenysabel2 小时前
多服务上线日记二:
服务器·笔记·学习