操作系统内核代码热点动态检测技术研究.pdf
上传人:qw****27 上传时间:2024-09-12 格式:PDF 页数:5 大小:171KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

操作系统内核代码热点动态检测技术研究.pdf

操作系统内核代码热点动态检测技术研究.pdf

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

,$$"年,月C+J<=(K<)?ED(<)D<U.<DG)A9A6@!!!!!!!!!!!!!!!!!第#期·计算机及网络技术应用·操作系统内核代码热点动态检测技术研究"杨!宁""!卢显良(电子科技大学!成都!"#$$%&)摘要:分析了’()*+,-&内核中采用的基于蒙特卡罗方法的代码热点检测算法和实现机制,指出了其中的不足,并在此基础上提出了改进措施。关键词:代码热点;蒙特卡罗方法;动态检测中图分类号:./0#"!!文献标识码:1!!文章编号:#"2,3&%%$(,$$")$#3$$&&3$&!"#"$%&’()*+)$,-&*"."&.-)/0"&’)-12"#(34"%)"56(7"8(.#9(.#-):9"%$.-)/;+#.",45)67()6,’*8(5)9(5)6(:)(;<=>(?@ABC9<D?=A)(DED(<)D<5)F.<DG)A9A6@ABHG()5!HG<)6F*!"#$$%&)<=#.%$&.:I>AJ<=5?()6>@>?<K(>?G<KA>?(KJA=?5)?>@>?<K>AB?L5=<,>A?G<J<=BA=K5)D<ABMEN<=O)<9(>5N<@B5D?A=?A?G<LGA9<DAKJ*?<=>@>?<K<BB(D(<)D@P.G<=<BA=<,(?(>)<D<>>5=@?AF<?<D?5)FAJ?(OK(Q<?G<DAF<>?G5?=*)KA>?B=<R*<)?9@,G<)D<?G<DAF<>5=<D599<FGA?>JA?>P.G(>J5J<=5)59@><>5K<DG5)(>KS5><FTA)?<H5=9AK<?GAF,LG(DG(>*><FS@’()*+,-&N<=)<9?AF<?<D?GA?>JA?AB?G<N<=)<9F@)5K(D599@P.G<B95L5)F?G<=<K<F@G5;<59>AS<<)J=<><)?<FG<=<()P4"+>(%7#:DAF<GA?>JA?;TA)?<H5=9AK<?GAF;F@)5K(DF<?<D?()6我们称前者为静态分析的方法,称后者为动态检测前言#!的方法。显然,动态检测的方法更能得出真实可靠操作系统内核是计算机系统中最为重要的系统的结论。软件。操作系统内核各个部分的运行性能直接影响’()*+,-&内核实现了代码热点的动态检测。着整个系统的性能。因此,对操作系统内核的性能本文介绍该技术所依据的蒙特卡罗方法的基本思不断地进行优化,是一件非常必要的工作。想,然后对’()*+操作系统内核运用该方法实现代但是,现代操作系统内核代码非常庞大,所以码热点检测的算法及其实现进行了分析,并在此基优化要有针对性地进行。根据程序的时间局部性原础上对于其中的不足之处提出了改进措施。理可知,优化的基本原则是,对经常运行的代码或蒙特卡罗方法的基本思想者函数进行优化。我们称被经常运行的那一部分代,!码为代码热点。如果能有效地找出内核代码实际运蒙特卡罗方法又叫随机抽样或者统计试验方行时的代码热点,则优化的针对性就更强,优化后法,是属于随机模拟的一种方法。’()*+,-&内核性能的提升就更高。使用该方法实现了代码热点的检测和统计。代码热点可以通过阅读代码进行分析和估计,当所求解的问题是某种事件出现的概率,或者也可以在操作系统实际运行时动态地检测和统计。是某个随机变量的期望值时,它们可以通过某种"[收稿日期],$$%3$V3$V""[作者简介]杨!宁(#V2&—),男,硕士研究生,研究方向:操作系统。—&&—万方数据!00/年!月$$$$$$$$$$$$$$$$$$$实$验$科$学$与$技$术第#期“试验”的方法得到这种事件出现的频率,或者这合用蒙特卡罗方法求解。个随机变量的期望值,并用它们作为问题的解。这%"%$算法及其实现就是蒙特卡罗方法的基本思想。蒙特卡罗方法通过首先,应明确要检测的是某个代码段(函数)抓住事物运动的几何数量和几何特征,利用数学方是否为代码热点,而不是针对某条指令。然后,将法来加以模拟,即进行一种数字模拟实验。它是以整个内核代码段分为!5!"块(称"为伸缩因一个概率模型为基础,按照这个模型所描绘的过子)。设离散随机变量#,其可能取值为$($50,程,通过模拟实验的结果,作为问题的近似解。可#,⋯,!6#)。事件{#5$}的意义为,在一次采以把蒙特卡罗解题归结为三个主要步骤:构造或描样中,+,-值落在了序号为$的代码块内。存在述概率过程;实现从已知概率分布抽样;建立各种%(0%%%!6#)使得&{#5%}537*(&{#5$}),估计量。这三个步骤的具体描述如下。此时序号为%(0%%%!6#)的代码块为代码热!"#