BSP
司马如风
热爱生活热爱极限运动热爱你们哈哈哈哈
展开
-
while(1)比for(;;)更省资源
1、while(1)比for(;;)更省资源反汇编之后对比2、volatile关键字一个定义为volatile的变量是说这变量可能会被意想不到地改变。精确说,又花钱在用到这个变量时必须每次都重新读取这个变量的值,而不是使用保存在寄存器里的备份。只有只读的状态寄存器的参数是const还可以是volatile3、动态内存分配可能发生内存碎片,碎片收集的问题,变量的持行时...原创 2018-08-24 18:33:34 · 367 阅读 · 0 评论 -
Linux驱动的学习方法《一》--------驱动简介
1.Linux驱动的学习方法Linux内核中有上百个驱动,知识点多且杂,对于想学习驱动的同学来说,需要尽快掌握基础知识:如开发板的基本使用,硬件基础知识,开发环境的搭建,Linux常用工具,内核的编译以及烧写,Linux shell命令,C语言基础,Linux内核的简单裁减和配置,Linux系统编程等等没有上面的基础知识,驱动的学习无疑是在建空中楼阁。Linux操作系统相当于“一个球...转载 2019-08-02 18:01:58 · 1218 阅读 · 0 评论 -
了解init.rc
##服务启动机制system/core/init/init.c文件main函数中parse_config_file(init.rc)读取并解析init.rc文件内容。将service信息放置到system/core/init/init_parser.cpp的service_list中system/core/init/init.c文件main函数继续执行restart_servie_if_ne...原创 2019-08-05 17:45:36 · 191 阅读 · 0 评论 -
内存管理第一谈:段式管理和页式管理
内存管理第一谈:段式管理和页式管理 对于内存管理这个操作系统中庞大的体系,实在是容易让人望而止步,市面上介绍这块知识的书籍其实很多,但是由于书面语言的缘故,总感觉有些东西晦涩难懂,先后看过的书籍有《操作系统基本原理》、《linux内核完全注释》、《深入理解linux内核》、《linux内核源代码情景分析》,不过依然只是明白了一个大体的框架,对于具体的一些细节,还是迷迷糊糊的。下面内容只是...转载 2018-07-01 18:41:24 · 997 阅读 · 0 评论 -
操作系统——分段式内存管理
操作系统——分段式内存管理 操作系统——分段式内存管理分页式的优点从计算机的角度出发,提高了内存的利用率,提升了计算机的性能,以分页通过硬件机制实现,对用户透明分段式的优点考虑到用户和程序员,已满足方便编程、信息保护和共享、动态增长、动态链接等多方面需求分段式内存管理分段:按照用户进程中的自然段划分逻辑空间,例如:用户的进程由主程序、两个子程序、栈和一段数据组成,五...转载 2018-07-01 18:36:49 · 785 阅读 · 0 评论 -
分段与分页
分段:解决了地址空间不隔离和程序运行的地址不确定。 基本方法是把一段与程序所需要的内存空间大小的虚拟空间映射到某个地址空间。 分页:解决了内存使用效率低。 基本方法是把地址空间人为地等分成固定大小的页,每页的大小由硬件决定,或硬件支持多种大小的页,由操作系统决定。一般为4kb或4MB。 ...原创 2018-07-04 09:33:36 · 223 阅读 · 0 评论 -
段机制与页机制
一 分段机制 1、什么是分段机制 分段机制就是把虚拟地址空间中的虚拟内存组织成一些长度可变的称为段的内存块单元。 2、什么是段 每个段由三个参数定义:段基地址、段限长和段属性。 段的基地址、段限长以及段的保护属性存储在一个称为段描述符的结构项中。 3、段的作用 段可以用来存放程序的代码、数据和堆栈,或者用来存放系统数据结构。 4、段的存储地址...转载 2017-10-31 20:05:01 · 2788 阅读 · 0 评论 -
异常向量表的创建
.text @;代码段 ---.XXXXX伪操作@;软中断中的中断号,一般用于系统调用函数。@;open 0x2 read 0x3 write 0x4 tabel:@;创建异常向量表@;nop-空指令-只占用指令执行时间,不执行任何内容b reset @;0x0 复位异常b undef_handler @;0x4 未定义异常b swi_handler_num @;0x8...原创 2017-10-03 11:05:03 · 531 阅读 · 0 评论 -
Linux设备树语法详解
Linux设备树语法详解概念Linux内核从3.x开始引入设备树的概念,用于实现驱动代码与设备信息相分离。在设备树出现以前,所有关于设备的具体信息都要写在驱动里,一旦外围设备变化,驱动代码就要重写。引入了设备树之后,驱动代码只负责处理驱动的逻辑,而关于设备的具体信息存放到设备树文件中,这样,如果只是硬件接口信息的变化而没有驱动逻辑的变化,驱动开发者只需要修改设备树文件信息,不需要改写驱动代...转载 2018-09-02 17:23:44 · 177 阅读 · 0 评论 -
objdump命令的使用
objdump命令的使用 objdump命令是Linux下的反汇编目标文件或者可执行文件的命令,它还有其他作用,下面以ELF格式可执行文件test为例详细介绍: objdump -f test显示test的文件头信息 objdump -d test反汇编test中的需要执行指令的那些section objdump -D test与-d类似,但...转载 2018-08-24 19:16:44 · 3771 阅读 · 0 评论