暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
XLOG段文件跳号现象分析
736
11页
0次
2019-10-03
5墨值下载

段文件跳号现象分析
一、原理
当执行

时,我们经常看到的结果是:生成一个新

文件,名称为:时间线
加
,段文件名为之前的段文件号。那么做这个动作的时机是什么时候呢?是否只有这一
种现象,会不会有其他现象?先透露下,当执行

动作前,最后一个

日志是

时,段文件号会加
。下面我们对其流程做详细分析,并通过

理解其原理。
做这个动作的函数是

,调用时机为

进程退出的时刻,见堆栈:
!"#$##%"&$#"'&()*+),-./##012+34+
+34+ "#&#'05
%/#
6*###%"&$#"'&()*+),-./##012+34+
6##**.+'3#"##%/##01243-*
6(##**.)+-#"#78"#%/##12(*4
6)##**.4)'#"#078"#%&($#&*'.('3/##123+
63##**.),)#"#07#%&7/##12+).-
6+##**.)+.-#"#78"#%&$#&*((4./##12)-,
6-##**.)4-#"#"#%&$#&*((4./##"12((.
具体代码行为恢复完成之后:
9:
读取
!"9:
恢复
9:
:
;"'
为当前回放日志最后
的位置,
;"'
为当前退出时回放日志的时间线。当

目录下有
"1"0
文
件即该机器是备时
<
为
=;
。

函数调用流程如下:首先通过
"'
即回放最后的位置计算出段文
件日志号:
">&#%"'#9#/#?#%@0A"AB/
;
>&#"'#?
%@0A"AB/
。如果
">
等于
>
,表示回放位置为文件中间位置,
在调用
C0
生成一个新文件,并将上个

文件内容拷贝到新文件中;段文件号
相同,时间线加
。如果
">
不等于
>
,即回放位置正好是文件大小
的末尾处,或者正好是

这个日志,那么调用
C0"
函数进行初始化文件:
of 11
5墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜