linux高级数据存储
linux内此存储模式由5部分组成,自低向上的顺序:
物理卷,内核块设备驱动,内核文件系统驱动,虚拟文件系统,应用程序数据结构;
系统中所有的文件仅按此模式存储,无论是数据还是元数据,均在此模式下统一于内核输入输出系统(kernel I/O system)处理;
在windows中主要以文件后缀名的方式区分文件数据结构,unix中则以文件头部的数据结构区分;
VFS(virtual file system)是linux档案系统对外的接口,任何要使用档案系统的程序,都必须由这一层提供;
VFS是一个异构文件系统之上的软件粘合层,
VFS别称可堆叠文件系统(stackable filesystem),VFS可以无缝的使用多个不同类型的文件系统,相当于把多个文件系统堆叠在一起,通过VFS,可以为访问文件系统的多种提供一个统一的抽象接口;
VFS最早由sun公司提出以实现NFS(Linux,solaris,freebsd都使用VFS);
VFS的作用就是采用标准的unix系统调用读写不同物理介质上的不同文件系统;
VFS是一个可以让open(),write(),read()系统函数调用不用关心底层的存储介质和文件系统类型就可以工作的粘合层,在古老的DOS操作系统中,要想访问本地文件系统之外的文件系统需要使用特殊的工具才能进行,而在linux下,通过VFS,一个抽象的通用访问接口屏蔽了底层文件系统和物理介质的差异,每一种类型文件系统的代码都掩藏了实现细节,因此对于VFS和内核的其他部分,每一种类型的文件系统看起来都是一样的!
文件系统驱动调用底层内核块设备驱动,读取本地硬件设备(IDE,SCSI),逻辑设备(LVM,RAID),远程设备(ISCSI,GNDB-global block driver device);
卷被应用于通过内核块设备驱动读取,是数据存储传输结构最小逻辑定义单元;
http://share.csdn.net/slides/1654
linux高级数据存储的更多相关文章
- C#学习记录二:高级数据存储方式
1,结构 结构和类的区别主要在于存储和访问方式,结构是一种值 数据类型,而类是一一种引用数据类型.所谓值数据类型存储个人理解是存在堆里面的,所谓引用数据类型存储在了栈里面,相当于存储了一个指针. 结构 ...
- java调用Linux执行Python爬虫,并将数据存储到elasticsearch--(环境脚本搭建)
java调用Linux执行Python爬虫,并将数据存储到elasticsearch中 一.以下博客代码使用的开发工具及环境如下: 1.idea: 2.jdk:1.8 3.elasticsearch: ...
- JavaScript高级编程———数据存储(cookie、WebStorage)
JavaScript高级编程———数据存储(cookie.WebStorage) <script> /*Cookie 读写删 CookieUtil.get()方法根据cookie的名称获取 ...
- 23. javacript高级程序设计-数据存储
1. 数据存储 1.1 cookie HTTP Cookie, cookie,最初用来在客户端存储回话信息. (1). 限制,不同浏览器对特定域名下的cookie 的个数有限制,每个域名下最好不要操过 ...
- 直接在安装了redis的Linux机器上操作redis数据存储类型--String类型
一.概述: 字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型 ...
- 网易大数据之数据存储:HDFS
一.HDFS基础架构 1.HDFS特点:水平扩展.高容错性.廉价硬件.开源生态系统 2.Hadoop生态圈 1).分布式存储系统(HDFS),2).资源管理框架(YARN),3).批处理框架(MapR ...
- 探索etcd,Zookeeper和Consul一致键值数据存储的性能
这篇博文是探索三个分布式.一致性键值数据存储软件性能的系列文章中的第一篇:etcd.Zookeeper和Consul,由etcd团队所写,可以让我们全面地了解如何评估三个分布式一致存储软件的性能.翻译 ...
- 安卓android sharepreference数据存储,保存输入框里面的数据
Fragment 里面 使用轻量级的数据存储sharepreference ,代码思路清晰.保存输入框里面的数据,实现按钮保存. 个人项目中简单清晰代码: 赵存档 编写 ,可以参考: 类继承Fragm ...
- zookeeper原理解析-数据存储
Zookeeper内存结构 Zookeeper是怎么存储数据的,什么机制保证集群中数据是一致性,在网络异常,当机以及停电等异常情况下恢复数据的,我们知道数据库给我们提供了这些功能,其实zookeepe ...
随机推荐
- java 基础学习
a+b: import java.util.Scanner; public class Main { public static void main(String args[]){ Scanner c ...
- 函数xdes_get_offset
/********************************************************************//** Returns page offset of the ...
- bzoj2794
这题我得到一个经验,bool型的dp一定要想办法把bool去掉来表示更多的东西(1933也是这个道理) 暴力大家都会,这里有两个限制条件 一个限制条件我们可以排序不断加入,另一个呢 我们可以用f[i] ...
- UVa 1400 (线段树) "Ray, Pass me the dishes!"
求一个区间的最大连续子序列,基本想法就是分治,这段子序列可能在区间的左半边,也可能在区间的右半边,也有可能是横跨区间中点,这样就是左子区间的最大后缀加上右子区间的最大前缀之和. 线段树维护三个信息:区 ...
- UVa 11889 (GCD) Benefit
好吧,被大白书上的入门题给卡了.=_=|| 已知LCM(A, B) = C,已知A和C,求最小的B 一开始我想当然地以为B = C / A,后来发现这时候的B不一定满足gcd(A, B) = 1 A要 ...
- ElasticSearch Remote Code Execution (CVE-2014-3120)
Elasticsearch is a powerful open source search and analytics engine. The vulnerability allows attack ...
- Jqgrid入门-操作表格的数据(二)
上一篇中,Jqgrid已经可以从服务端获得数据,并显示在Grid表格中了.下面说一下,如何操作表格及其数据. jqGrid有很多方法函数,用来操作数据或者操作Grid表格本身.jq ...
- linq xml读取
<?xml version="1.0" encoding="UTF-8" ?> <cache> <chatOld> < ...
- ti processor sdk linux am335x evm /bin/setup-targetfs-nfs.sh hacking
#!/bin/sh # # ti processor sdk linux am335x evm /bin/setup-targetfs-nfs.sh hacking # 说明: # 本文主要对TI的s ...
- HDU 1269 迷宫城堡 (强连通分量,常规)
题意: 判断所给的有向图是否是一个强连通图. 思路: 如果连通分量大于1则必定No,如果强连通分量大于1也是No.tarjan算法求强连通分量. #include <cstdio> #in ...