submandatos ext y extp
Los submandatos ext y extp muestran un área específica de una estructura.
Formato
ext [-p] EffectiveAddress delta [tamaño | recuento]
extp [-p] PhysicalAddress delta [tamaño | recuento]
Parámetros
| Elemento | Descripción |
|---|---|
| -p | Indica que el argumento delta es el desplazamiento a un puntero a la siguiente área. |
| EffectiveAddress | Especifica la dirección efectiva o virtual en la que se deben empezar a visualizar los valores. Se pueden utilizar símbolos, valores hexadecimales o expresiones hexadecimales para especificar la dirección. |
| PhysicalAddress | Especifica la dirección física o real en la que se deben empezar a visualizar los valores. Se pueden utilizar símbolos, valores hexadecimales o expresiones hexadecimales para especificar la dirección. |
| Delta | Especifica el desplazamiento al área siguiente que se va a visualizar o el desplazamiento desde el principio del área actual a un puntero a la siguiente área. Este argumento es un valor hexadecimal. |
| talla | Especifica el valor hexadecimal que indica el número de palabras que se deben visualizar. |
| Recuento | Especifica el valor hexadecimal que indica el número de entradas a recorrer. |
Si no se especifica el distintivo -p , estos submandatos muestran el número de palabras indicado en el argumento de tamaño. A continuación, incrementan la dirección del delta y muestran los datos en dicha ubicación. Este procedimiento se repite para el número de veces indicado en el parámetro recuento .
Si se especifica el distintivo -p , estos submandatos muestran el número de palabras indicadas por el parámetro tamaño . A continuación, la siguiente dirección desde la que se van a visualizar los datos se determina utilizando el valor de la dirección actual más el desplazamiento indicado en el parámetro delta (por ejemplo, *(addr+delta)). Este procedimiento se repite para el número de veces indicado en el parámetro recuento .
Si existe una matriz, se puede recorrer mostrando el área especificada para cada entrada de la matriz. Estos submandatos también se pueden utilizar para atravesar una lista enlazada que muestra el área especificada para cada entrada.
Otro
No hay alias.
Ejemplos
A continuación se muestra un ejemplo de cómo utilizar los submandatos exp y expt :
KDB(0)> ppda
Per Processor Data Area [0101A9C0]
csa..............000000000184EE00
mstack...........000000000184BE00
fpowner..........0000000000000000
curthread........F100060004066400
syscall..........00000000003CDA21
worst_run_pri................00FF
run_pri........................FF
v_pnda...........000000000126CCB0
cpunidx......................0000
wait_thread......F100060004066400
ppda_pal[0]..............00000000
ppda_pal[1]..............00000000
ppda_pal[2]..............00000000
ppda_pal[3]..............00000000
phy_cpuid....................0000
sradid.......................0000
pvpa.............0000000001130400
slb_reload...................0000
slb_index....................0000
slb_stoimask.................0000
slb_stoibits.................0000
slb_stab_mask....0000000000000000
slb_g_start......0000000000000000
slb_g_nesids.....0000000000000000
slb_ksp_start....0000000000000000
slb_ksp_nesids...0000000000000000
slb_glp_start....0000000000000000
slb_glp_nesids...0000000000000000
slb_glp_tbl......0000000000000000
slb_lgpg_start...0000000000000000
slb_lgpg_nesids..0000000000000000
slb_slbsave......0000000000000000
slb_recurse_cnt..............0000
slb_stab_addr....0000000000000000
KDB(0)> ext -p 000000000184EE00 0 10 2 // csa address from the ppda
mststack+020E00: F0000000 2FF47600 00000000 00000000 ..../.v.........
mststack+020E10: 00000000 00000000 00000000 00000000 ................
mststack+020E20: 00000000 00000000 A0000000 000010B2 ................
mststack+020E30: 00000000 000302A0 00000000 0003023C ...............<
__ublock+000000: 00000000 00000000 00000000 00000000 ................
__ublock+000010: 00000000 00000000 00000000 00000000 ................
__ublock+000020: 0B000000 00000000 A0000000 00009032 ...............2
__ublock+000030: 00000000 00025138 00000000 00028828 ......Q8.......(
KDB(0)> ext 000000000184BE00 3000 10 2 // mstsave address from the ppda
mststack+01DE00: 00000000 0184EE00 00000000 00000000 ................
mststack+01DE10: 00000000 00000000 00000000 00000000 ................
mststack+01DE20: 00000000 00000000 A0000000 000090B2 ................
mststack+01DE30: 00000000 0000944C 00000000 0009A798 .......L........
mststack+020E00: F0000000 2FF47600 00000000 00000000 ..../.v.........
mststack+020E10: 00000000 00000000 00000000 00000000 ................
mststack+020E20: 00000000 00000000 A0000000 000010B2 ................
mststack+020E30: 00000000 000302A0 00000000 0003023C ...............<
KDB(0)>