Description of asm disk header definition using kfed in oracle

Source: Internet
Author: User
Tags reserved

Description of key parameters for kfed to read data disk headers
% Kfed read/dev/raw/raw1
   
Kfbh. endian: 1; 0x000: 0x01
Kfbh. hard: 130; 0x001: 0x82
Kfbh. type: 1; 0x002: KFBTYP_DISKHEAD
Kfbh. datfmt: 1; 0x003: 0x01
Kfbh. block. blk: 0; 0x004: T = 0 NUMB = 0x0
Kfbh. block. obj: 2147483648; 0x008: TYPE = 0x8 NUMB = 0x0
Kfbh. check: 2932902794; 0x00c: 0xaed08b8a
Kfbh. fcn. base: 0; 0x10: 0x00000000
Kfbh. fcn. wrap: 0; 0x014: 0x00000000
Kfbh. spare1: 0; 0x018: 0x00000000
Kfbh. spare2: 0; 0x01c: 0x00000000
Kfdhdb. driver. provstr: ORCLDISK; 0x000: length = 8
Kfdhdb. driver. reserved [0]: 0; 0x008: 0x00000000
Kfdhdb. driver. reserved [1]: 0; 0x00c: 0x00000000
Kfdhdb. driver. reserved [2]: 0; 0x010: 0x00000000
Kfdhdb. driver. reserved [3]: 0; 0x014: 0x00000000
Kfdhdb. driver. reserved [4]: 0; 0x018: 0x00000000
Kfdhdb. driver. reserved [5]: 0; 0x01c: 0x00000000
Kfdhdb. compat: 168820736; 0x020: 0x0a100000
Kfdhdb. dsknum: 0; 0x024: 0x0000
Kfdhdb. grptyp: 1; 0x026: KFDGTP_EXTERNAL
Kfdhdb. hdrsts: 3; 0x027: KFDHDR_MEMBER
Kfdhdb. dskname: ASM01_0000; 0x028: length = 10
Kfdhdb. Kgname: ASM01; 0x048: length = 5
Kfdhdb. fgname: ASM01_0000; 0x068: length = 10
Kfdhdb. capname:; 0x088: length = 0
Kfdhdb. crestmp. hi: 32837774; 0x0a8: HOUR = 0xe DAYS = 0x4 MNTH = 0x4 YEAR = 0x7d4
Kfdhdb. crestmp. lo: 1555722240; 0x0ac: USEC = 0x0 MSEC = 0x29c SECS = 0xb MINS = 0x17
Kfdhdb. mntstmp. hi: 32837774; 0x0b0: HOUR = 0xe DAYS = 0x4 MNTH = 0x4 YEAR = 0x7d4
Kfdhdb. mntstmp. lo: 1563864064; 0x0b4: USEC = 0x0 MSEC = 0x1ab SECS = 0x13 MINS = 0x17
Kfdhdb. secsize: 512; 0x0b8: 0x0200
Kfdhdb. blksize: 4096; 0x0ba: 0x1000
Kfdhdb. ausize: 1048576; 0x0bc: 0x00100000
Kfdhdb. mfact: 113792; 0x0c0: 0x0001bc80
Kfdhdb. dsksize: 9075; 0x0c4: 0x00002373
Kfdhdb. pmcnt: 2; 0x0c8: 0x00000002
Kfdhdb. fstlocn: 1; 0x0cc: 0x00000001
Kfdhdb. altlocn: 2; 0x0d0: 0x00000002
Kfdhdb. f1b1locn: 2; 0x0d4: 0x00000002
Kfdhdb. redomirrors [0]: 0; 0x0d8: 0x0000
Kfdhdb. redomirrors [1]: 0; 0x0da: 0x0000
Kfdhdb. redomirrors [2]: 0; 0x0dc: 0x0000
Kfdhdb. redomirrors [3]: 0; 0x0de: 0x0000
Kfdhdb. ub4spare [0]: 0; 0x0: 0x00000000
...
Kfdhdb. ub4spare [60]: 0; 0x1d0: 0x00000000
Kfdhdb. acdb. aba. seq: 0; 0x1d4: 0x00000000
Kfdhdb. acdb. aba. blk: 0; 0x1d8: 0x00000000
Kfdhdb. acdb. ents: 0; 0x1 DC: 0x0000
Kfdhdb. acdb. ub2spare: 0; 0x1de: 0x0000
 
Breakdown:
 
Kfbh. endian
Kf3.h/* endianness of writer */
Little endian = 1
Big endian = 0
 
Kfbh. hard
Kf3.h/* H. A.R. D. magic # and block size */
 
Kfbh. type
Kf3.h/* metadata block type */
 
Kfbh. datfmt
Kf3.h/* metadata block data format */
 
Kfbh. block
Kf3.h/* block location of this block */
Blk -- Disk header shocould have T = 0 and NUMB = 0x0
Obj -- Disk header shocould have TYPE = 0x8 NUMB = <disknumber>
Blk and obj values are derived from a series of macros in kf3.h. See
"KFBL Macros" in kf3.h for more information.
 
Kfbh. check
Kf3.h/* check value to verify consistency */
 
Kfbh. fcn
Kf3.h/* change number of last change */
   
Kfdhdb. driver
Kf3.h/* OSMLIB driver reserved block */
If no driver is defined "ORCLDISK" is used.
    
Kfdhdb. compat
Kf3.h/* Comaptible software version */
Example: 0x0a100000
You get:
A = 10 1 = 1 so 10.1.0.0.0
 
Kfdhdb. dsknum
Kf3.h/* OSM disk number *
This is the disk number. The first disk being "0". There can be up
Ub2 disks in a diskgroup. This allows for 65336 disks 0 through 65335.
 
Kfdhdb. grptyp
Kf3.h/* Disk group type */
 
Kfdhdb. hdrsts
Kf3.h/* Disk header status */
This is what is used to determine if a disk is available or not
The diskgroup. 0x03 is the correct value for a valid status.
 
Kfdhdb. dskname/* OSM disk name */
Kfdhdb. Kgname/* OSM disk group name */
Kfdhdb. fgname/* Failure group name */
Kfdhdb. capname/* Capacity grp, unused */
Kf3.h
 
Kfdhdb. crestmp/* Creation timestamp */
Kfdhdb. mntstmp/* Mount timestamp */
Kf3.h To derive the hi and low time' from an unformated dump use
"KFTS Macros" in kf3.h.
 
Kfdhdb. secsize
Kf3.h/* Disk sector size (bytes )*/
This is the physical sector size of the disk in bytes. All I/O's to
Disk are described in physical sectors. This must be a power of 2.
Ideal value wocould be 4096, but most disks are formatted with 512 byte
Sectors. (from asmlib. h)
 
Kfdhdb. blksize
Kf3.h/* Metadata block (bytes )*/
     
Kfdhdb. ausize
Kf3.h/* Allocation Unit (bytes )*/
 
Kfdhdb. mfact
Kf3.h/* Stride between phys addr AUs */
   
Kfdhdb. dsksize
Kf3.h/* Disk size in AUs */
Mulitply by AUs to get actual size of disk when added.
       
Kfdhdb. pmcnt
Kf3.h/* Permanent phys addressed AUs */
Number of physically addressed allocation units.
 
Kfdhdb. fstlocn
Kf3.h/* First FreeSpace table blk num */
Used to find freespace.
 
Kfdhdb. altlocn
Kf3.h/* First Alocation table blk num */
Used to find alocated space.
 
Kfdhdb. f1b1locn
Kf3.h/* File Directory blk 1 AU num */
Beginging for file directory.

 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.