当前位置: 首页 > java >正文

Ubuntu20.04运DS-5

准备工作:

cd /home/rlk/rlk/runninglinuxkernel_5.0
#make clean
mkdir _install_arm64/dev
sudo mknod _install_arm64/dev/console c 5 1
./build_ds5_arm64.sh
git checkout boot-wrapper-aarch64/fvp-base-gicv3-psci.dtb
./build_ds5_arm64.sh

创建工程步骤

请添加图片描述
2.
请添加图片描述

请添加图片描述

请添加图片描述
5.
请添加图片描述
6.
请添加图片描述
7.
请添加图片描述
8.
请添加图片描述

调试步骤

b el2:0x81776174
单步到El1
add-symbol-file /home/rlk/rlk/runninglinuxkernel_5.0/vmlinux
b __primary_switched
b start_kernel

kimi:
在Ubuntu上使用DS-5调试ARM64 Linux内核的步骤如下:

  1. 安装DS-5

    • 从ARM官网下载DS-5并进行安装。确保选择适合Linux的版本,并按照安装向导完成安装过程。
  2. 下载和构建Linux内核

    • 使用以下命令下载Linux内核源码:
      git clone https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
      cd linux
      
    • 进行默认配置和编译:
      make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- defconfig
      make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- menuconfig
      make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j$(nproc)
      
    • 编译完成后,生成内核镜像和设备树文件,这些文件通常位于arch/arm64/boot/目录下。
  3. 构建引导程序

    • 下载并构建boot-wrapper-aarch64,这是一个用于引导Linux内核的简易引导程序:
      git clone git://git.kernel.org/pub/scm/linux/kernel/git/mark/boot-wrapper-aarch64.git
      cd boot-wrapper-aarch64
      autoreconf -i
      ./configure --enable-psci --enable-gicv3 --with-kernel-dir=/path/to/linux/arch/arm64/boot --with-dtb=your_device_tree.dtb --host=aarch64-linux-gnu --with-cmdline="rdinit=/linuxrc console=ttyAMA0"
      make
      
  4. 配置DS-5调试环境

    • 启动Eclipse for DS-5,创建一个新的调试配置。在“Run”菜单中选择“Debug Configurations…”,选择“DS-5 Debugger”,然后新建一个配置。
    • 在“Connection”选项中选择合适的目标平台(例如“Debug Cortex-A53”),并配置连接到DSTREAM仿真器或其他调试设备。
  5. 添加内核符号

    • 在Debugger选项中,选择“Run Control”为“Connect Only”,并在“Execute debugger commands”中输入:
      interrupt
      add-symbol-file "/path/to/linux/vmlinux"
      
    • 这将允许调试器加载内核符号,以便进行调试。
  6. 启动调试

    • 确保目标板上已经通过U-Boot引导到内核,然后在DS-5中点击“Debug”按钮开始调试。你应该能够看到调试界面,显示当前连接状态和调试信息。
  7. 使用调试功能

    • 你可以使用DS-5的调试功能,如设置断点、单步执行、查看和修改寄存器等,来调试Linux内核。

以上步骤提供了在Ubuntu上使用DS-5调试ARM64 Linux内核的基本流程。具体的操作可能会根据DS-5的版本和内核的具体配置有所不同,因此建议参考最新的官方文档和教程进行操作。

http://www.xdnf.cn/news/14767.html

相关文章:

  • Lua 安装使用教程
  • docker-compose快速搭建redis集群
  • 容器基础5-Helm 与 K8s 的关系
  • 配置tcp的https协议证书
  • (第三篇)HMTL+CSS+JS-新手小白循序渐进案例入门
  • 【字节跳动】数据挖掘面试题0003:有一个文件,每一行是一个数字,如何用 MapReduce 进行排序和求每个用户每个页面停留时间
  • 《P4145 上帝造题的七分钟 2 / 花神游历各国》
  • Google Maps 安装使用教程
  • 客服机器人知识库怎么搭?智能客服机器人3种方案深度对比(含零售落地案例)
  • 【Linux】U-boot常用命令总结
  • 从UI设计到数字孪生实战部署:构建智慧农业的智能灌溉系统
  • 数学建模_图论
  • 桥岛隧大型工程 3D 可视化监测平台
  • 分布式定时任务:xxl-job
  • 洛谷刷题6
  • 拐点的可导性的图像区别
  • AlpineLinux安装部署zabbix
  • 【分明集合】特征函数、关系与运算
  • SpringBoot计时一次请求耗时
  • 应急响应类题练习——玄机第四章 windows实战-emlog
  • [创业之路-458]:企业经营层 - 蓝海战略 - 重构价值曲线、整合产业要素、创造新需求
  • Leetcode力扣解题记录--第49题(map)
  • [Python] -基础篇8-Python中的注释与代码风格PEP8指南
  • mac重复文件清理,摄影师同款清理方案
  • poi设置word表格边框
  • 修改Spatial-MLLM项目,使其专注于无人机航拍视频的空间理解
  • Flink Savepoints 总结
  • 一文详解Modbus协议原理、技术细节及软件辅助调试
  • 【甲方安全建设】敏感数据检测工具 Earlybird 安装使用详细教程
  • PyTorch 中 nn.Linear() 参数详解与实战解析(gpt)