笔记
文章平均质量分 94
chargehero
这个作者很懒,什么都没留下…
展开
-
yaffs2源码学习3:文件创建与删除
yaffs2源码学习3:文件创建与删除一、基本概念二、文件创建2.1 create file or directory2.2 link file2.3 write file三、文件删除3.1 Unlink file3.2 soft delete file3.3 delete file一、基本概念在研究文件系统前,先对文件系统中涉及的基本的概念进行定义。域(field):是基本数据单元。一个域包含一个值。记录(record):是一组相关的域的集合,它可以看做是应用程序的一个单元。文件(file):原创 2021-07-23 08:33:12 · 787 阅读 · 0 评论 -
yaffs2源码学习2:chunk和block
yaffs2学习2:chunk和block一、Nand Flash介绍二、Chunk相关操作2.1 chunk记录数据的种类2.2 chunk的使用情况2.3 写入chunk2.4 删除chunk三、Block相关操作3.1 block的内容3.2 block的删除一、Nand Flash介绍非易失性闪速存储器Flash具有速度快、成本低、密度大的特点,被广泛应用于嵌入式系统中。Flash存储器主要有NOR和NAND两种类型。NOR型比较适合存储程序代码;NAND型则可用作大容量数据存储。一块Nand原创 2021-07-12 17:08:53 · 1312 阅读 · 0 评论 -
yaffs2源码学习1:ECC校验
yaffs2源码学习1:ECC校验一、原理篇二、代码篇2.1 unsigned char数的非零bit位个数2.2 unsigned char的校验码2.3 256字节校验码2.4 256字节数据校验在yaffs2中,关于ECC校验的代码比较独立,我们的源码分析之旅从这里开始。其所有代码都在子目录下的yaffs_ecc.c中,很容易找到。一、原理篇关于ECC校验的原理在网上有非常详细的过程,这里只描述一下关键思路,更加详细的过程请读者自行搜索。对于8个bit信息,其ECC校验码如下:对这8bit信原创 2021-07-09 20:43:21 · 1252 阅读 · 0 评论 -
TLSF算法2:位图的相关计算
TLSF算法2:位图的相关计算一、最大非零位二、最小非零位三、某一位置1四、某一位置0五、实验验证从上一篇文章我们知道了,在TLSF算法分配内存时,给定一个所需大小r,怎么计算出相关的二级位图的索引fl和sl,在具体讲TLSF的结构之前,我们先讲一下在有关位图操作的一些算法。主要包括32位数的最小非零位和最大非零位,和将一个32位数的某一位置0或者置1,这一共四个操作。一、最大非零位这个原理和上一篇文章中将到的求fl的算法一样,通过对半查找之后再采用空间换时间的方式直接在一个数组中查找出相关值就可以了原创 2020-07-07 14:20:00 · 458 阅读 · 0 评论 -
TLSF算法1:二级索引的计算
TLSF算法(一)分配中的位图计算一、什么是TLSF算法二,f的确定三、s的确定四、实验结果一、什么是TLSF算法在嵌入式系统中,内存需要在分配和释放时有一个确定的相应时间,才能进一步分析其实时任务的可调度性。因此TLSF算法是一个十分适用嵌入式领域的动态内存分配算法。在关于TLSf算法的经典文章中《TLSF: a New Dynamic Memory Allocator for Real-Time Systems》详细介绍了TLSF算法相关知识。TLSF算法使用隔离匹配机制来实现良好匹配策略。基本的原创 2020-06-18 23:12:06 · 2612 阅读 · 0 评论