B+ tree:

base head:

budgeting: 空闲空间评估

bud: 一个日志使用的eraseblock

cnode:

commit: 更新index到flash上的过程

commit start node:

common header: 所有节点类型的公共头部(除了LPT area)

data head: Journal head used for data nodes. Potentially UBIFS could have more than one data head which would assist in keeping data nodes for each file grouped together rather than interspersed. However presently there is only one data head.

directory entry node: 包含目录项的节点

dirty space: flash上被废弃节点,padding 节点以及padding数据占据的空间

eraseblock: flash memory最小可擦除单位,一般是page的2^n倍

extended attribute entry node: 一个节点包含扩展属性的名字和inode number。难道是扩展属性的真正内容保存在inode number所指向的文件中?

freeable LEB: main area中的一个LEB仅包含空闲空间和dirty空间,看起来就是可回收LEB

free space: flash上的可写空间,应该是page的倍数吧,毕竟page是写的最小单位

garbage collection: 回收dirty空间获取free space

garbage collection head: Journal head used by the garbage collector. In order to move and reindex nodes, the garbage collector just feeds them back through the journal.

garbage collection LEB number: 保留给garbage collection的LEB, 一个 LEB保留给GC

index:UBIFS wandering tree的上部分,保存着index nodes

index LEB: 一个LEB仅仅保存index nodes

index node: 一个节点保存这index物理结构。包含子节点的key以及on-flash位置,应该类似XFS文件系统的 index node

inode: 一个文件系统对象。在UBIFS中,一个inode可以代表一个regular文件,一个目录,一个符号链接,一个特殊文件,或者一个属性值(果然,属性值是以文件方式保存的)

in-the-gaps method: When the file system becomes full, the index cannot grow in size and consequently must be updated in-place. This is done by writing index nodes in-the-gaps created by obsolete index nodes.

journal: 日志就像个小型的 JFFS2文件系统,存储nodes without an on-flash index, 这样可以成组的更新index。和JFFS2类似,必须在mount时扫描日志

journal head: The position on-flash where the next node will be written. UBIFS adopts a multiheaded journal with two main heads: the base head and the data head.

key: index 的key, index保存所有子节点的位置以及他们的key,通过index中的key来获得相应的节点。key是64-bit值,32位是inode number。3 bits是node类型,其余29bits依赖与node的类型。UBIFS也支持改变key的格式到128-bits。32bits的inode number是谁的inode number呢?

LEB: Logical eraseblock由UBI映射为physical eraseblock

LEB properties: main area LEBs有三个重要的属性需要记录在LEB properties, 这三个属性是: 空闲空间数目, dirty空间数目,以及是否LEB包含index nodes

LNC: 页节点cache用来存储目录项和扩展属性项

log: The part of the journal that records where the buds are.

LPT: LEB properties tree, 一个wandering tree用来记录LEB属性

main area: 用来存放data和index的LEBs区域

master mode: 节点用来保存所有on-flash位置可变的结构的position。 具体哪些是on-flash 且位置可变的结构?

minimal I/I unit:flash memory的最小写入单位

node: JFFS2 UBIFS类文件系统的node结构的逻辑部件

nnode: Internal node of the LPT.

orphan area: the node used to store orphan information.

padding bytes: 当需要pad的空间对于padding node太小时padding的字节

padding node: 一个用来填充的node,通常用在最小写单位的边缘位置

PEB: Physical eraseblock,被UBI映射为logical eraseblock

pnode: Leaf node of the LPT which contains the actual LEB property values.

recovery: 在unclean unmount后,UBIFS 用来修复文件系统的功能

replay: 文件系统 mount时,需要重新index日志中的节点

reference code: Log nodes that store the LEB numbers of buds and their offset.

shrinker: 当系统内存缺少时,释放掉内存。UBIFS的shrinker从TNC中释放znodes

superblock node: 超级块记录着几乎永远不便的文件系统参数

TNC: Tree Node Cache, 缓存在cache中的UBIFS index。

truncate node: 一个node记录 文件被truncated并且尺寸变小

unclean unmount: 文件系统没有机会写入所有的cached data以及metadata, 比如系统掉电。

wandering tree:

znode: index node在内存中的对象

UBIFS 术语的更多相关文章

  1. Spring代理模式及AOP基本术语

    一.代理模式: 静态代理.动态代理 动态代理和静态代理区别?? 解析:静态代理需要手工编写代理类,代理类引用被代理对象. 动态代理是在内存中构建的,不需要手动编写代理类 代理的目的:是为了在原有的方法 ...

  2. Spring 代理模式及AOP基本术语

    一.代理模式: 静态代理.动态代理 动态代理和静态代理区别?? 解析:静态代理需要手工编写代理类,代理类引用被代理对象. 动态代理是在内存中构建的,不需要手动编写代理类 代理的目的:是为了在原有的方法 ...

  3. 基本术语表【WF】

    术语 定义 activity(活动) Windows Workflow Foundation 中的程序行为单元. 可将单个活动组合在一起,形成更复杂的活动. activity action(活动操作) ...

  4. 如何设置SharePoint 2013 的根网站集下的“更改此术语的目标页面”

    起因: 首先看问题截图Figure 1,在术语驱动的页面中设置更改此术语的目标页面,会被警告“该URL 不指向某个页面”,原因是我所找到的这个目标页面是一个非aspx结尾的URL链接. Figure ...

  5. Spring 3.0 AOP (一)AOP 术语

    关于AOP.之前我已写过一个系列的随笔: <自己实现简单的AOP>,它的关注点在于实现.实现语言是C#,实现方式为 自定义实现 RealProxy 抽象类.重写Invoke方法,以便进行方 ...

  6. UDS(ISO14229-2006) 汉译(No.3术语与定义)

    下列术语适用于本文档. 3.1 integer 类型 定义正负整数的数据类型. 注:integer类型取值范围未在本文档定义. 3.2 diagnostic trouble code 由车载诊断系统获 ...

  7. ubifs概述

    UBIFS无排序区块图像文件系统(Unsorted Block Image File System, UBIFS)是用于固态存储设备上,并与LogFS相互竞争,作为JFFS2的后继文件系统之一.真正开 ...

  8. C++术语俗解

    C++作为一种复杂的编程语言,其最晦涩的莫过于各个术语. 以下就经常使用的术语,逐个俗解(特别声明:为了对术语的更好理解与记忆,仅代表个人的俗识,若有不妥之处望给予指正),分享共勉. 内存:一片计算机 ...

  9. 引用、引用和术语定义<abbr><acronym><address><bdo><blockquote><q><cite><dfn>

    <abbr>-缩写 <acronym>-首字母缩写  <address>-地址 <bdo>-文字方向 <blockquote>-长的引用 & ...

随机推荐

  1. SPOJ 364 Pocket Money 简单DP

    跟矩阵链乘同类型的题…… 输出用%llu不是%I64u…… 几组数据: 141+2*4+3*4+5*00*5*6+7*3+23+0+6+7+0+44*5+7*1*1+12*0+3*4*0+5*6+7+ ...

  2. SpringBoot Rabbitmq接收消息

    官网地址:https://docs.spring.io/spring-boot/docs/2.1.3.RELEASE/reference/htmlsingle/#boot-features-amqp ...

  3. 锚点自适应 map area coords

    最近做MOBILE的HTML5开发,人体图和页面一样,需要自适应不同的手机屏幕,蛋疼的是coords里面的标记是固定的,图片自适应后,锚点的标记就会产生空白区域,看了下https://github.c ...

  4. NSOperation 开发

    目录 1.简介 2.Operation对象 3.自定义Operation对象 4.通过Operation Queues运行Operation对象 5.手动运行Operation对象 一.简介 Coco ...

  5. 【bzoj4756】[Usaco2017 Jan]Promotion Counting 离散化+树状数组

    原文地址:http://www.cnblogs.com/GXZlegend/p/6832263.html 题目描述 The cows have once again tried to form a s ...

  6. POJ 3421 X-factor Chains | 数论

    题意: 给一个x,求最长的排列满足开头是1,结尾是x,前一个数是后一个数的因子 输出长度和这样序列的个数 题解: 把x分解质因数,质因数个数就是答案,接下来考虑怎么求个数 显然这是一个可重集合全排列问 ...

  7. 设置RobotFramework的ftplibrary中,将Upload_file操作的异常改为回显错误信息。

    测试中需要通过FTP通道,将数据发送给服务器,而这个上传的数据要被阻断.在结合RobotFramework测试中,安装的ftplibrary,使用upload_file操作,如果上传动作失败,会抛出异 ...

  8. 日常收集整理些js经典实例

    跨浏览器添加事件 //跨浏览器添加事件 function addEvent(obj,type,fn){ if(obj.addEventListener){ obj.addEventListener(t ...

  9. 3.3 Lucene检索原理

    Lucene是一个高效的,基于Java的全文检索库[1].所以在介绍Lucene的检索功能之前,我们要先了解一下全文检索以及Lucene的索引结构. 一.全文检索的基本原理 1. 数据的分类 什么是全 ...

  10. hibernate中Configuration类的作用

    问题:我们在获得一个SessionFactory对象的时候经常是写下面这行代码: SessionFactory sessionFactory = new Configuration().configu ...