假设您要在数据库中使用 10 个磁盘。利用 ASM,您不需要在 OS 端创建任何东西,该特性将把一组物理磁盘集合成一个逻辑实体(称为磁盘组)。
磁盘组类似于一个分段(和可选镜像)文件系统,但具有重要的差异:它不是一个用于存储用户文件的通用文件系统,锋模耐并且它不进行缓冲。由于后面的原因,磁盘组提供了直接作为原始设备来访问这个空间,并仍提供文件系统的便利性和灵活性的好处。
ASM它提供了以平台无关的文件系统、逻辑卷管理以及软RAID服务。ASM可以支持条带化和磁盘镜像,从而实现了在数据库被加载的情况下添加或移除磁盘以及自动平衡I/O以删除“热点”。它还支持直接和异步的I/O并使用Oracle9i中引入的Oracle数据管理器API(简化的I/O系统调用接口)。
扩展资料:
ASM使用独特的镜像算法:不镜像磁盘,而是镜像盘区。作为结果,为了在产生故障时提供连续的保护,只需要磁盘组中的空间容量,而不需要预备一个热备(hot spare)磁盘。
不建议用户创建不同尺寸的故障组,因为这将会导致在分配辅助盘区时产生银春问题。ASM将文件的主盘区分配给磁盘组中的一个磁盘时,它会将该盘区的镜像副本分配给磁盘组中的另一个磁盘。给定磁盘上的主盘区将在磁盘组中的某个伙伴磁码猛盘上具有各自的镜像盘区。
ASM确保主盘区和其镜像副本不会驻留在相同的故障组中。磁盘组的冗余可以有如下的形式:双向镜像文件(至少需要两个故障组)的普通冗余(默认冗余)和使用三向镜像(至少需要3个故障组)提供较高保护程度的高冗余。
参考资料:百度百科-ASM
1. 这是内核源码的头文件,一般人不敢说都熟悉滴。2. 以linux开头的的头文件,如<linux/file.h>对应源码目录树的include/linux/file.h
3. 以asm开头的头文件,如<asm/file.h>对应源码目录树的arch/***/include/asm/file.h, 其中***对应某个具体的清仔平台。
4. 仔细研读并读懂过linux源码1/10的人,绝对是高手中的高手,不会出现在这里回答问题。
5. 我是菜鸟,春正源码只看了一点。
6. 劝楼主答森汪别浮躁,想学内核驱动,要能静的下来,认真看书。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)