上一页 1 ··· 7 8 9 10 11 12 13 下一页
摘要: 设备驱动程序简介 以Linux为代表的的开源操作系统有许多优点,其中之一就是让更多的人了解操作系统的细节,方便地进行理解、修改和验证操作系统,让操作系统更民主化。学习开发设备驱动程序是切入了解操作系统的最有效方式。 人们对Linux驱动程序开发的感兴趣的原因有很多,首先是新硬件不断面世,其次是人们需 阅读全文
posted @ 2021-07-11 22:30 zephyr~ 阅读(471) 评论(0) 推荐(0) 编辑
摘要: 在Linux系统下搞嵌入式开发,交叉编译器那肯定是必备工具。用的场合多了,就会见到各种各样的编译工具。 交叉编译工具链概念 本地编译 在当前PC编译出来的可执行程序,可在当前PC环境中执行。即在当前PC环境下编译出了相同CPU体系结构的可执行程序。如x86 PC编译的可执行程序可运行在x86的CPU 阅读全文
posted @ 2021-06-27 22:20 zephyr~ 阅读(2606) 评论(0) 推荐(0) 编辑
摘要: # 前言 嵌入式开发离不开硬件设备:开发板、外设等,但如果只是想研究Linux内核的架构/工作模式,修改一些代码然后烧写到开发板中验证,这样未必有些复杂。然而qemu可以避免频繁在开发板上烧写版本,如果仅仅是内核方面的调试,qemu完全可以完美地胜任。仿真能解决以下痛点: - 真实单板难以获取时,可 阅读全文
posted @ 2021-06-20 18:39 zephyr~ 阅读(7237) 评论(0) 推荐(2) 编辑
摘要: # Markdown是什么 Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档。 ## Markdown解决什么问题 - Markdown是纯文本格式,方便在不同平台之间迁移和展示。 - Markdown支持多种多样的格式 ## Markdown学习资料 Markdo 阅读全文
posted @ 2021-06-20 17:32 zephyr~ 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 内核中的调试支持 内核开发者在内核中建立了很多调试功能。但是这些调试功能会造成额外的输出,并且导致性能下降,因此发行版厂商通常会禁止发行版内核中的这些功能。但是作为一名内核开发者,调试需求具有更高优先级,从而乐意接受额外的调试支持而带来的性能损失。 这里列出内核开发的几个配置选项,除特殊指出,所有这 阅读全文
posted @ 2021-05-16 11:27 zephyr~ 阅读(2711) 评论(0) 推荐(0) 编辑
摘要: tags工具介绍 一般来说,如果我们想要研究一个c/c++项目的源码,我们首先要做的是为该项目生成tags文件,tags文件种类有很多,比如 ctags、etags、cscope、gtags 等,有关他们的区别可以参考下面链接里的内容: https://github.com/oracle/openg 阅读全文
posted @ 2021-04-21 09:43 zephyr~ 阅读(779) 评论(0) 推荐(0) 编辑
摘要: 性能优化分为宏观和微观两个层面。宏观层面包括业务架构的重构和创新。微观层面包括算法优化、编译优化、工具分析、高性能编码,独立于具体业务逻辑,有广泛的适应性,更易于实施。 能不做的尽量不做,必须做的高性做,是性能优化的两个meta rule。提升处理能力和降低计算量是性能优化的两个方向。 微观上从减少 阅读全文
posted @ 2021-01-06 17:29 zephyr~ 阅读(237) 评论(0) 推荐(0) 编辑
摘要: cpufreq概述 cpufreq的核心功能,是通过调整CPU的电压和频率,来兼顾系统的性能和功耗。在不需要高性能时,降低电压和频率,以降低功耗;在需要高性能时,提高电压和频率,以提高性能。 cpufreq软件框架 对下,cpufreq基于clock、regulator、pmu等模块实现频率和电压的 阅读全文
posted @ 2020-11-02 20:48 zephyr~ 阅读(2944) 评论(0) 推荐(0) 编辑
摘要: Memory ordering 为了提高指令执行速度,最新的arm处理器不再one bye one的执行指令,采取了一系列的措施来提高指令执行速度,包括重排序指令、存储访问方式(cache/buffer)。如下图是程序指令和实际ARM中可能的指令执行顺序: 存储类型 ARM有两种存储类型normal 阅读全文
posted @ 2020-10-22 17:14 zephyr~ 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 为什么需要cache 我们应该知道程序是运行在 RAM之中,RAM 就是我们常说的DDR(例如: DDR3、DDR4等)。我们称之为main memory(主存)。当我们需要运行一个进程的时候,首先会从磁盘设备(例如,eMMC、UFS、SSD等)中将可执行程序load到主存中,然后开始执行。在CPU 阅读全文
posted @ 2020-10-18 23:10 zephyr~ 阅读(3542) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 下一页