[20250118]建立完善fetch21.gdb跟踪逻辑读脚本.txt
--//昨天做一些改进,今天加入dba地址转换为文件号以及块号。
$ grep -v "^#" fetch21.gdb | cat -s
set pagination off
set $a=0x0
set $b=0x0
set $c=0x0
set $d=0x0
break __read_nocancel
commands
silent
set $a=0x0
set $b=0x0
set $c=0x0
set $d=0x0
continue
end
break kteinpscan_int1
commands
silent
shell echo -n $( date +"%Y/%m/%d %T.%N : ")
printf "kteinpscan_int1 0x%x file#=%d block_no=%d\n", *($rdi+4), *($rdi+4)>>22,*($rdi+4)&0x3ffff
continue
end
break kdst_fetch if *($rsi+28) != 0x0
commands
silent
shell echo -n $( date +"%Y/%m/%d %T.%N : ")
printf "kdst_fetch 0x%x file#=%d block_no=%d\n", *($rsi+28), *($rsi+28)>>22,*($rsi+28)&0x3ffff
continue
end
break kteinmap
commands
silent
shell echo -n $( date +"%Y/%m/%d %T.%N : ")
printf "kteinmap 0x%x file#=%d block_no=%d\n", *($rdi+4),*($rdi+4)>>22,*($rdi+4)&0x3ffff
continue
end
break kdifxs0 if *($rdi+28) != $a
commands
silent
shell echo -n $( date +"%Y/%m/%d %T.%N : ")
printf "kdifxs0 0x%x file#=%d block_no=%d\n",*($rdi+28),*($rdi+28)>>22, *($rdi+28)&0x3ffff
set $a= *($rdi+28)
continue
end
break kdirfrs if *($rdi+28) != $c
commands
silent
shell echo -n $( date +"%Y/%m/%d %T.%N : ")
printf "kdirfrs 0x%x file#=%d block_no=%d\n", *($rdi+28),*($rdi+28)>>22, *($rdi+28)&0x3ffff
set $c= *($rdi+28)
continue
end
break kdifkc if *($rsi+36) != $d
commands
silent
shell echo -n $( date +"%Y/%m/%d %T.%N : ")
printf "kdifkc 0x%x file#=%d block_no=%d\n", *($rsi+36), *($rsi+36)>>22, *($rsi+36)&0x3ffff
set $d= *($rsi+36)
continue
end
break kdsgrp if *($rdi+28) != $b
commands
silent
shell echo -n $( date +"%Y/%m/%d %T.%N : ")
printf "kdsgrp 0x%x file#=%d block_no=%d\n", *($rdi+28), *($rdi+28)>>22, *($rdi+28)&0x3ffff
set $b= *($rdi+28)
continue
end
--// 简单测试如下,:
@46on 1
select * from emp ;
(gdb) c
Continuing.
2025/01/18 10:36:02.838506605 :kteinpscan_int1 0x3000092 file#=12 block_no= 146
2025/01/18 10:36:02.843545728 :kteinmap 0x3000092 file#=12 block_no= 146
2025/01/18 10:36:02.848896431 :kdst_fetch 0x3000093 file#=12 block_no= 147
2025/01/18 10:36:02.853521374 :kdst_fetch 0x3000094 file#=12 block_no= 148
2025/01/18 10:36:02.857827948 :kdst_fetch 0x3000095 file#=12 block_no= 149
2025/01/18 10:36:02.866693424 :kdst_fetch 0x3000096 file#=12 block_no= 150
2025/01/18 10:36:02.871357813 :kdst_fetch 0x3000096 file#=12 block_no= 150
2025/01/18 10:36:02.876111216 :kdst_fetch 0x3000097 file#=12 block_no= 151
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-3068160/ ,如需转载,请注明出处,否则将追究法律责任。