Fork me on GitHub
侧边栏
上一页 1 ··· 56 57 58 59 60 61 62 63 64 ··· 133 下一页
摘要: CPU缓存什么东西?当然这个问题很多人有可能觉得比较傻,CPU缓存什么,肯定是缓存数据(代码)啊,要不然还能缓存啥,这个确实没问题,但是CPU到底缓存什么样的数据呢?因为对CPU来说,无论是指令,还是数据,都是数据,他如果要缓存,缓存的单位是啥?要缓存的内容是啥呢? 接下来咱们一点点解析这部分的内容 阅读全文
posted @ 2023-11-01 22:34 yooooooo 阅读(55) 评论(0) 推荐(0)
摘要: 于是乎,我们想到了总线,用一个统一的接口协议,设计出一个符合要求的总线,然后将ARM核和各种外设模块挂载在总线上,这样,命令和数据似乎便可以在CPU和外设之间自由穿梭。 1 AMBA总线 AMBA,英文全称为Advanced Microcontroller Bus Architecture,即高级微 阅读全文
posted @ 2023-10-30 14:24 yooooooo 阅读(542) 评论(0) 推荐(0)
摘要: 0.AMBA总线概括 AMBA(Advanced Microcontroller Bus Architecture) 总线是由ARM公司提出的一种开放性的片上总线标准,它独立于处理器和工艺技术,具有高速度低功耗等特点。 系统芯片中各个模块之间需要有接口来连接; 总线作为子系统之间共享的通信链路; 其 阅读全文
posted @ 2023-10-29 17:59 yooooooo 阅读(1377) 评论(0) 推荐(1)
摘要: CCI(Cache Coherent Interconnect)是ARM中的cache一致性控制器。 CCI-400将互连和一致性功能结合到一个模块中。它支持多达两个ACE 主节点的连接,例如: Cortex®-A7 processor Cortex-A15 processor Cortex-A17 阅读全文
posted @ 2023-10-15 10:39 yooooooo 阅读(331) 评论(0) 推荐(0)
摘要: 之前介绍通过命令行配置和使用ftrace功能,但是实际中,我们也会希望抓C/C++程序中某段代码的调度情况。笔者前不久就遇到这种问题,某个函数调用时延概率超过100ms,是为什么?这时候就需要在他们代码中使能ftrace抓执行此函数时候,任务的调度情况。 观察某段代码执行过程中的情况,ftrace提 阅读全文
posted @ 2023-10-10 10:14 yooooooo 阅读(149) 评论(0) 推荐(0)
摘要: 1 图 1 Linux profiling 手段一览 软件埋点: 手动埋点:主动调用 trace 函数来实现埋点。 Android systrace 即是这样一个例子,如图 2 和 图 3 所示 自动埋点:借助工具链,自动埋点,对函数的 entry 和 return 进行 hook。 Linux f 阅读全文
posted @ 2023-10-09 23:13 yooooooo 阅读(470) 评论(0) 推荐(1)
摘要: Linux内核的tracing buffer是一种用于存储内核跟踪数据的特殊缓冲区。它用于记录内核中发生的事件和活动,以帮助开发人员进行性能分析和故障排查。该缓冲区可以在内核运行时启用,并且可以通过特定的跟踪工具和API进行访问和分析。跟踪缓冲区可以包含一系列事件和数据,如函数调用、中断、系统调用、 阅读全文
posted @ 2023-10-09 22:37 yooooooo 阅读(64) 评论(0) 推荐(0)
摘要: 在Linux内核中,"backport printk"和"front printk"都是用于记录内核消息和调试信息的机制,但它们的工作方式和使用场景有一些区别。 "backport printk"是一种在内核中记录消息和调试信息的机制,可以将这些信息输出到控制台、串口、网络等目标。它通常用于在内核启 阅读全文
posted @ 2023-09-27 16:50 yooooooo 阅读(58) 评论(0) 推荐(0)
摘要: 1 简介 这个文档记录了用 kGDB 调试 Linux 内核的全过程,都是在前人工作基础上的一些总结。以下操作都是基于特定板子来进行,但是大部分都能应用于其他平台。 要使用 KGDB 来调试内核,首先需要修改 config 配置文件,打开相应的配置,配置内核启动参数,甚至修改串口驱动添加 poll 阅读全文
posted @ 2023-09-10 17:33 yooooooo 阅读(1206) 评论(0) 推荐(0)
摘要: 问题描述 内核调试中最常见的一个问题是:内核Panic后,如何快速定位到出错的代码行? 就是这样一个常见的问题,面试过的大部分同学都未能很好地回答,这里希望能够做很彻底地解答。 问题分析 内核Panic时,一般会打印回调,并打印出当前出错的地址: kernel/panic.c:panic(): #i 阅读全文
posted @ 2023-09-07 23:43 yooooooo 阅读(606) 评论(0) 推荐(1)
上一页 1 ··· 56 57 58 59 60 61 62 63 64 ··· 133 下一页