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. HDU 4758 Walk Through Squares( AC自动机 + 状态压缩DP )

    题意:给你两个串A,B, 问一个串长为M+N且包含A和B且恰好包含M个R的字符串有多少种组合方式,所有字符串中均只含有字符L和R. dp[i][j][k][S]表示串长为i,有j个R,在自动机中的状态 ...

  2. 团队项目-第四次Scrum 会议

    时间:10.26 时长:30分钟 地点:线上 工作情况 团队成员 已完成任务 待完成任务 解小锐 编写project和projectGenerator类 编写下一步的规格说明 陈鑫 采用creator ...

  3. jQuery选择器之类选择器

    类选择器,顾名思义,通过class样式类名来获取节点. 描述: $('.class') 类选择器,相对于id选择器来说,效率相对会低一些,但是优势就是可以多选. 同样的jQuery在实现上,对于类选择 ...

  4. PHP可变变量的简单使用

    知识点: 可变变量:简单说就是将一个变量的值用作另外一个变量的命名上,例如$a = 'b';$$a就是$b HTML代码: <!doctype html> <html> < ...

  5. [LOJ#6259]「CodePlus 2017 12 月赛」白金元首与独舞

    [LOJ#6259]「CodePlus 2017 12 月赛」白金元首与独舞 试题描述 到河北省 见斯大林 / 在月光下 你的背影 / 让我们一起跳舞吧 うそだよ~ 河北省怎么可能有 Stalin. ...

  6. [洛谷P3857][TJOI2008]彩灯

    题目大意:有$n$盏灯,$m$个开关($n,m\leqslant 50$),每个开关可以控制的灯用一串$OX$串表示,$O$表示可以控制(即按一下,灯的状态改变),$X$表示不可以控制,问有多少种灯的 ...

  7. MFC 加载资源文件里的png

    static bool LoadImageFromResource(IN CImage* pImage, IN UINT nResID, IN LPCWSTR lpTyp) { if ( pImage ...

  8. 转:android service总结

    1.Service的种类   按运行地点分类: 类别 区别  优点 缺点   应用 本地服务(Local) 该服务依附在主进程上,  服务依附在主进程上而不是独立的进程,这样在一定程度上节约了资源,另 ...

  9. 【ZOJ4062】Plants vs. Zombies(二分)

    题意:有n个植物排成一排,标号为1-n,每株植物有自己的生长速度ai,每对植物浇一次水,该株植物就长高ai, 现在机器人从第0个格子出发,每次走一步,不能停留,每一步浇一次水,总共可以走m步,问最矮的 ...

  10. Flask-Migrate拓展数据库表结构

    # 转载请留言联系 在我们用 sqlchemy 模块创建完几个表时,如果在实际生产环境中,需要对表结构进行更改,应该怎么办呢?总不能把表删除了吧,这样数据就会丢失了. 更好的解决办法是使用数据库迁移框 ...