OK6410A 开发板 (八) 33 linux-5.11 OK6410A 内存管理第一阶段

2024-05-27 15:48

本文主要是介绍OK6410A 开发板 (八) 33 linux-5.11 OK6410A 内存管理第一阶段,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

A arch/arm/kernel/head.S 中的 stext符号 - __turn_mmu_on 符号
----此时开了MMU,开启了虚拟内存时代
流程
mrc p15, 0, r9, c0, c0// 将 cpuid 存储到 r9
__lookup_processor_type// 根据 r9 中的值 ,获取 procinfo 并存储到 r5
movs    r10, r5// 获取 procinfo 并存储到 r10
__vet_atags// 验证 atags
__create_page_tables			//	 内存管理相关1// clear 50004000 - 50007fffc// at 50005400 , Create identity mapping to cater for __enable_mmu.// at 50007000 - 50007020 , Map our RAM from the start to the end of the kernel .bss section.// at 50007fe0 - 50007fe4 , map boot params address in r2
ldr r12, [r10, #PROCINFO_INITFUNC]
add r12, r12, r10
ret r12 						//	 内存管理相关2// 跳转到 arch/arm/mm/proc-v6.S 中的 __v6_setup// 设置  D cache , I cache , write buffer 
__enable_mmu					//	 内存管理相关3// load domain access register// load page table pointer
__turn_mmu_on// write control reg , 即 开 MMU //	 内存管理相关4
  • 内存管理相关1
50004000 - 50007fffc 地址 
为 下列 部分所在的物理地址 做 到 虚拟地址 的 映射
1. 当前pc处相关代码
2. 整个kernel的代码
3. atags的数据
  • 内存管理相关2
arch/arm/mm/proc-v6.S 中的 __v6_setup
设置  D cache , I cache , write buffer 
  • 内存管理相关3
__enable_mmu 写 cp15 协处理器
load domain access register// 该寄存器 在 MMU开启后的访问内存流程中 会被使用
load page table pointer// 该寄存器 在 MMU开启后的访问内存流程中 会被使用
  • 内存管理相关4
__turn_mmu_on 写 cp15 寄存器
write control reg// 开MMU// 此语句一开始执行,就代表MMU开启了// 下一句就是 MMU开启后的访问内存流程

这篇关于OK6410A 开发板 (八) 33 linux-5.11 OK6410A 内存管理第一阶段的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1007912

相关文章

NameNode内存生产配置

Hadoop2.x 系列,配置 NameNode 内存 NameNode 内存默认 2000m ,如果服务器内存 4G , NameNode 内存可以配置 3g 。在 hadoop-env.sh 文件中配置如下。 HADOOP_NAMENODE_OPTS=-Xmx3072m Hadoop3.x 系列,配置 Nam

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

软考系统规划与管理师考试证书含金量高吗?

2024年软考系统规划与管理师考试报名时间节点: 报名时间:2024年上半年软考将于3月中旬陆续开始报名 考试时间:上半年5月25日到28日,下半年11月9日到12日 分数线:所有科目成绩均须达到45分以上(包括45分)方可通过考试 成绩查询:可在“中国计算机技术职业资格网”上查询软考成绩 出成绩时间:预计在11月左右 证书领取时间:一般在考试成绩公布后3~4个月,各地领取时间有所不同

安全管理体系化的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用户只需在界面上进行简单的操作,就可以实现全视频的接入及布控。摄像头管理模块用于多种终端设备、智能设备的接入及管理。平台支持包括摄像头等终端感知设备接入,为整个平台提

Linux_kernel驱动开发11

一、改回nfs方式挂载根文件系统         在产品将要上线之前,需要制作不同类型格式的根文件系统         在产品研发阶段,我们还是需要使用nfs的方式挂载根文件系统         优点:可以直接在上位机中修改文件系统内容,延长EMMC的寿命         【1】重启上位机nfs服务         sudo service nfs-kernel-server resta

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念