自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (5)
  • 收藏
  • 关注

原创 5.Linux内存管理----其他工程问题以及调优

文章目录一、DMA与cache的一致性一、DMA与cache的一致性1、解决方法: (1) 一致性DMA: 访问 DMA 内存区域是不带有cache的,这样cpu和外设看到的DMA的内存数据时时刻刻都是一致的  api函数:  void * dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle, gfp_t flag);  void dma_free_coherent(stru

2020-12-13 12:45:00 180

原创 4.Linux内存管理----内存与IO交换

Linux内存管理第四课----内存与IO交换文章目录Linux内存管理第四课----内存与IO交换一、Page Cache二、free命令详解三、read/write 和 mmap四、swap 和 zRam五、页面回收和LRU一、Page Cache1.page cache解释:在Linux读写文件时,用于缓存文件的逻辑内容,从而加快磁上映像和数据的访问。2.产生page cache 的操作:read/write,mmap(内存映射)(1)read/write ①read: 当cpu首

2020-12-13 12:44:39 206

原创 3.Linux内存管理----进程中的内存消耗、泄露

文章目录一、VMA(virtual memory area)二、pagefault(缺页中断)三、用户空间的虚拟内存在实际物理内存的分布四、判断内存泄露一、VMA(virtual memory area)1.VMA(虚拟内存空间)概述    一个进程用结构体task_struct结构体描述。task_struct中包含内存结构体mm_struct ;mm_struct 包含虚拟内存结构体vm_area_struct。    vm_area_struct中,包含虚拟内存的用户空间的地址范围,以及该内存

2020-12-13 12:44:03 188

原创 2.Linux内存管理----内存动态申请、释放

文章目录一、内核态、用户态的内存申请和释放二、内核内存申请api三、进程申请内存的过程四、OOM(内存溢出:Out of Memory)一、内核态、用户态的内存申请和释放    Linux最底层的物理内存是通过buddy算法进行管理的,但是buddy的最小单位为页,如果我们想申请一个字节的时候,该怎么办。     在Linux内核态中,以字节为单位的申请是通过slab算法进行管理的;用户态中是通过libc进行管理的。slab和libc相当于一个二级内存分配管理器。    1、slab----内核态的

2020-12-13 12:43:27 515

原创 1.Linux内存管理----CPU寻址

文章目录一、内存寻址一、内存寻址1、cpu寻址    linux系统中,从cpu角度去访问的地址是虚拟地址;cpu将虚拟地址发送给MMU(l内存管理单元,Memory Management unit),MMU去寻找实际内存的物理地址。虚拟地址到物理地址映射关系的实现可以称之为地址转换(Address Translation)。    用户空间中,进程A切换到进程B时,MMU会把物理会把进程B的页表的基地址加载到MMU。2、页表项    页表的高20bit,表示虚拟地址的页码;低12位表示该页码的

2020-12-13 12:42:50 226

原创 解决:UBIFS error (ubi0:0 pid 684): ubifs_iget: failed to read inode 11731, error -2

文章目录一、问题日二、产生问题原因三、解决方法四、涉及到ubif文件挂载的指令一、问题日[ 31.256321] UBIFS error (ubi0:0 pid 684): ubifs_iget: failed to read inode 11731, error -2[ 31.265311] UBIFS error (ubi0:0 pid 684): ubifs_lookup: dead directory entry 'core.test.0.d8ab38090e5b49faa8f42f3

2020-11-21 19:55:09 1390

原创 Uboot网络启动根文件系统

文章目录一、静态IP启动Kernel Command二、DHCP 启动Kernel Command三、两者区别一、静态IP启动Kernel Commandconsole=ttyO0,115200n8 \root=/dev/nfs \nfsroot=10.10.41.224:/home/mozzie/nfsroot/rootfs,v3,nolock rw \ip=10.10.41.123:10.10.41.224:10.10.41.1:255.255.255.0::eth0:off二、DHCP

2020-11-21 18:18:49 497

原创 Linux更换内核Logo

文章目录一、bmp转化为ppm一、bmp转化为ppm(1) bmptoppm pic.bmp > temp1.ppm //生成ppm(2) ppmquant 224 temp1.ppm > temp2.ppm //转换成224颜色(3) pnmnoraw temp2.ppm > logo.ppm //转换成ascii格式

2020-11-21 17:55:57 300

原创 Systemd文件系统设置程序开机自启动 并 实现自启动程序的打印输出 (arm linux)

开发环境 :处理器: AM335x SDK:06_03_00_106文章目录一、编写测试程序二、创建启动脚本三、原因详解一、编写测试程序1、编写测试程序 test.c#include <stdio.h>#include <unistd.h>void main () { while (1) { printf("this is a test programmer !\n"); sleep(1

2020-10-02 17:50:44 2728 1

原创 首篇博客占个坑

首篇博客,先占个位

2020-10-02 14:50:21 104

STM32 DP83848 网络驱动程序

STM32 DP83848 网络驱动程序 ,已经跑通,并且长期测试无问题,如果你使用的是RL-TCP NeT 此代码可以无缝移植。

2018-11-07

STM32 驱动AD5412

AD5412 已经验证没问题了,拿过来就可以直接用的 ......................

2017-07-13

STM32驱动AD7708代码例程

已经跑通了 可以直接用

2017-07-08

STM32驱动CAN

STM32CAN 驱动 软件收发 硬件中断收发 ID 过滤器详细配置

2017-07-05

STM32 CAN 驱动(软件 收发 中断收发 )

代码已经写好 直接移植就可以(CAN 控制器 TJA1040/1050 )。

2017-07-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除