- 1、本文档共74页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课ARMLinux内核
ARMLinux 内核 陈文智 wzchen@ 浙江大学计算机学院 2009年5月 提纲 1. ARM系统结构简介 2. ARM-Linux内存管理 3. ARM-Linux 的中断响应和处理 4. ARM-Linux系统调用 5. 系统的启动和初始化 6. ARM-Linux进程管理和调度 7. Linux的模块机制 1. ARM系统结构简介 ARM有7种运行状态: 用户状态(User) 中断状态(IRQ, Imterrupt Request) (0x18) 快中断状态(FIQ,Fast Imterrupt Request)(0x1c) 监管状态(Supervisor) 终止状态(Abort) 无定义状态(Undefined) 系统状态(System) ARM系统结构中各个寄存器的使用方式 2 ARM-Linux内存管理 存储管理是一个很大的范畴 地址映射、空间分配、保护机制 存储管理机制的实现和具体的CPU以及MMU的结构关系非常紧密 操作系统内核的复杂性相当程度上来自内存管理,对整个系统的结构有着根本性的深远影响 2.1内存管理和MMU MMU,也就是“内存管理单元”,其主要作用是两个方面: 地址映射 对地址访问的保护和限制 MMU就是提供一组寄存器 MMU可以做在芯片中,也可以作为协处理器 ARM中的CP15 2.2 冯·诺依曼结构和哈佛结构 冯·诺依曼结构:程序只是一种数据,对程序也可以像对数据一样加以处理,并且可以和数据存储在同一个存储器中 嵌入式系统中往往采用程序和数据两个存储器、两条总线的系统结构,称为“哈佛结构” 2.3 ARM存储管理机制 ARM系统结构中,地址映射可以是单层的按“段(section)”映射,也可以是二层的页面映射 采用单层的段映射的时候,内存中有个“段映射表” ,当CPU访问内存的时候: 其32位虚地址的高12位用作访问段映射表的下标,从表中找到相应的表项 每个表项提供一个12位的物理段地址,以及对这个段的访问许可标志,将这12位物理段地址和虚拟地址中的低20位拼接在一起,就得到了32位的物理地址 如果采用页面映射,“段映射表”就成了“首层页面映射表”,映射的过程如下(以页面大小=4KB为例): 以32位虚地址的高12位(bit20-bit31)作为访问首层映射表的下标,从表中找到相应的表项,每个表项指向一个二层映射表。 以虚拟地址中的次8位(bit12-bit19)作为访问所得二层映射表的下标,进一步从相应表项中取得20位的物理页面地址。 最后,将20位的物理页面地址和虚拟地址中的最低12位拼接在一起,就得到了32位的物理地址。 凡是支持虚存的CPU必须为有关的映射表提供高速缓存,使地址映射的过程在不访问内存的前提下完成,用于这个目的高速缓存称为TLB 高速缓存 (I/O的特殊性) ARM系统结构中配备了两个地址映射TLB和两个高速缓存 ARM处理器中,MMU是作为协处理器CP15的一部分实现的 MMU相关的最主要的寄存器有三个: 控制寄存器,控制MMU的开关、高速缓存的开关、写缓冲区的开关等 地址转换表基地址寄存器 域访问控制寄存器 控制寄存器中有S位(表示System)和R位(表示ROM),用于决定了CPU在当前运行状态下对目标段或者页面的访问权限,如果段或者页面映射表项中的2位的“访问权限” AP为00,那么S位和R位所起的作用如表 如果AP为01,则和S位R位无关,特权状态可读可写,用户状态不能访问。 如果AP为10,则和S位R位无关,特权状态可读可写,用户状态只读。 如果AP为11,则和S位R位无关,特权状态、用户状态都可读可写。 2.4 ARM-Linux存储机制的建立 ARM-Linux内核也将这4GB虚拟地址空间分为两个部分 ,系统空间和用户空间 ARM将I/O也放在内存地址空间中,所以系统空间的一部分虚拟地址不是映射到物理内存,而是映射到一些I/O设备的地址 Xsbase255开发系统存储管理的描述数据结构: ARM处理器上的实现和x86的既相似又有很多不同: 在ARM处理器上,如果整个段(1MB,并且和1MB边界对齐)都有映射,就采用单层映射;而在x86上总是采用二层映射 ARM处理器上所谓的“段(section)”是固定长度的,实质上就是超大型的页面;而x86上的“段(segment)”则是不定长的 Linux在启动初始化的时候依次调用:start_kernel()setup_arch()pageing_init()memtable_init()create_mapping() 2.5 ARM-Linux进程的虚存空间 Linux虚拟内存的实现需要6种机制
您可能关注的文档
- 讲背包问题及分枝界定法.ppt
- 讲网络数据通信.ppt
- 讲计算智能化与机器智能.ppt
- 讲计算机系统知识.ppt
- 讲课屁屁踢.ppt
- 讲计量资料的统计描述.ppt
- 讲指令系统一.ppt
- 讲计算本质及学科体系.ppt
- 讲课比赛之中考英语高频词汇辨析初步.ppt
- 讲西方建筑风格漫谈.ppt
- 2025年8月 在全市防汛工作视频会议上的讲话.docx
- 在2025年市委常委班子集中整治问题整改工作专题会议上的讲话+党课:以过硬作风护航高质量发展以实干担当书写新时代“赶考”答卷.pdf
- 国有企业2025年在“贯彻党中央决策部署和国企改革要求方面、全面从严治党责任落实方面、基层党组织建设方面、巡察整改长效机制建设四个方面”巡察整改专题民主生活会存在的原因分析.docx
- 2篇 2025年在四届区委第十三轮巡察动员部署会议上的讲话.pdf
- 在理论学习中心组巡视整改专题学习研讨会议上的讲话+在省委巡视反馈问题整改部署会上的讲话+工作领导小组会议上的讲话.pdf
- 2篇 2025年在四届区委第十三轮巡察动员部署会议上的讲话.docx
- 2025年国企理论学习中心组巡视巡察专题民主生活会会前学习研讨+(2025年四个方面)巡察整改专题民主生活会个人发言提纲.docx
- 局党组、宣传部、纪委监委关于2025年上半年意识形态工作总结及2025年下半年工作打算.pdf
- 4篇 2025年在学习贯彻《中华人民共和国监察法实施条例》研讨交流会上的发言.pdf
- 在市委理论学习中心组中央城市工作会议精神专题学习研讨会上的发言.+关于传达中央城市工作会议精神的讲话提纲.docx
最近下载
- 最新2025年社工(初级)考试题库(+答案).docx VIP
- 体例格式7:工学一体化课程《windows服务器基础配置与局域网组建》任务6学习任务教学活动策划表.docx VIP
- 无陪护理优劣的探讨.doc VIP
- TCALAS 38-2017 实验动物 SPF鸡和SPF鸭饲养管理指南.pdf VIP
- 2024年全国农产品质量安全检测技能竞赛理论知识考试题库(含答案).pdf VIP
- (人教版)数学五年级下册应用题“天天练”400题(第二辑),附参考答案.pdf VIP
- 体例格式7:工学一体化课程《windows服务器基础配置与局域网组建》任务5学习任务教学活动策划表.docx VIP
- 《社区服务与管理》课程标准.docx VIP
- 地理初高中知识衔接课件.pptx VIP
- 高考英语3500词频表.pdf VIP
文档评论(0)