摘要:
分布式存储系统中,元数据服务器通常是一个集中管理者,通常由它选择(根据一些负载均衡算法)合适的存储节点来存储文件数据,这就形成了文件元数据中的映射元数据部分,映射元数据记录文件数据分布信息。 常用的实现方法为存储节点周期性的向元数据服务器报告状态信息,元数据服务器根据这些节点的信息选择负载最小的存储节点作为本次请求的数据服务者,这就要求元数据服务器为每个文件维护一个数据分布链,当文件很大,而数据... 阅读全文
posted @ 2013-04-19 14:08
ydzhang
阅读(639)
评论(0)
推荐(0)
摘要:
Iometer简介
Iometer 是一个工作在单系统和集群系统上用来衡量和描述I/O子系统的工具。 Iometer 既是工作负载生成器(也就是说,它可以进行输入输出操作,以便增加系统的负荷),它还是一个测量工具(也就是说,它检查并且记录I/O 操作的性能和对系统的影响)。它可以被配置为模拟任何程序或者基准测试程序的磁盘和网络I/O的负载,或者用来产生整个综合的I/O负载。它也可以用来产生并测... 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(937)
评论(0)
推荐(0)
摘要:
链表(list)和哈希表(hlist)是内核常用到的两个工具,负责组织内核中很多的数据结构,如在进程管理中用于组织进程,文件系统中的inode节点链表,dentry链表,vfsmount链表等等。
链表使用struct list_head内嵌结构来将其寄生的结构组织成双向循环链表,并且表头跟普通节点的结构相同,非常容易理解。
但哈希表不同,其表头跟普通节点采用不同的数据结构,并且节点的组织也不是... 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(573)
评论(0)
推荐(0)
摘要:
#include <iostream>#include <cstdlib>using namespace std;/* 重载new应返回void*类型,如果内存分配请求成功,就返回指向内存的指针;* 如果失败,则遵循规定抛出一个std::bad_alloc类型的异常* 重载operator new需要注意的一些问题,参见:* http://blog.csdn.net/xushiweizh... 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(245)
评论(0)
推荐(0)
摘要:
C++的虚函数(Virtual Function)是通过一张虚函数表(Virtual Table)来实现的。简称为V-Table。 在这个表中,主是要一个类的虚函数的地址表,这张表解决了继承、覆盖的问题,保证其容真实反应实际的函数。这样,在有虚函数的类的实例中这个表被分配在了
这个实例的内存中,所以,当我们用父类的指针来操作一个子类的时候,这张虚函数表就显得由为重要了,它就像一个地图一样,指明了实... 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(142)
评论(0)
推荐(0)
摘要:
C++的设计者Bjarne Stroustrup下了很大的功夫想使用户自定义类型尽可能地和固定类型的工作方式相似,这就是为什么你可以重载运算符,写类型转换函数,控制赋值和拷贝构造函数。 对于类类型,当重载赋值运算符时,需注意以下几个原则: 1.
operator=尽量返回*this的引用; 2.
在operator=中对所有的数据成员赋值; 3.
在operator=中检查给自己赋值的... 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(219)
评论(0)
推荐(0)
摘要:
循环展开就是通过在每次迭代中执行更多的数据操作来减小循环开销的影响。其基本思想是设法把操作对象线性化,并且在一次迭代中访问线性数据中的一小组而非单独的某个。这种思想主要适用于计算循环索引和测试循环条件的开销部分所占比重过大(相对于循环体内执行的指令而言),连续执行一组相同的指令,能提高指令的cache命中率,如下例所示,对LoopTest的一片存储空间进行初始化,分别测试普通循环,和8个一组的展开... 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(1926)
评论(0)
推荐(0)
摘要:
2010级新生存储知识培训PPT 祝各位师弟师妹学有所成! 管理员在2009年8月13日编辑了该文章文章。 --> --> 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(122)
评论(0)
推荐(0)
摘要:
Linux系统下一切都是文件,可以像使用普通文件一样使用设备,可直接操作设备扇区内容,这种方式不经过文件系统。 #include <stdio.h>#include <stdlib.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <libgen.h>#include <unistd.h>st... 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(577)
评论(0)
推荐(0)
摘要:
常量指针与指针常量直接从语义上理解,看const限定那个范围。const int *p 其中的const在*p之前,也就是说*p是常量,不能改变。同样int *const p 其中的const在p之前,所以p是常量,不能改变。位段的符号structtest{inta:2;/*表示范围-2~1 */unsignedintb:2;/*表示范围0-3 */};intmain(){structtestt;... 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(132)
评论(0)
推荐(0)
浙公网安备 33010602011771号