程序分析,是指以整个生产过程为研究对象,研究分析完整的工艺程序,从第一个工作地到最后一个工作地,是否存在多余、重复、不合理的作业,作业顺序是否合理,搬运是否太多,等待是否太长等现象,并制定改进方案的一种分析技术。[1]对计算机程序行为进行自动分析的过程,主要包括静态分析和动态分析两种策略。
中文名
程序分析
外文名
Program Analysis
拼音
chéng xùfēn xī
注音
ㄔㄥˊ ㄒㄩˋㄈㄣ ㄒㄧ
简介
程序分析主要应用在程序优化、程序正确性验证等方面。相关技术包括类型系统、抽象解释、程序验证和模型检查等等。
程序分析是以某种语言书写的程序为对象,对其内部的运作流程进行分析。程序分析的目的主要有三点:一是通过程序内部各个模块之间的调用关系,整体上把握程序的运行流程,从而更好地理解程序,从中汲取有价值的内容。二是以系统优化为目的,通过对程序中关键函数的跟踪或者运行时信息的统计,找到系统性能的瓶颈,从而采取进一步行动对程序进行优化。最后一点,程序分析也有可能用于系统测试和程序调试中。当系统跟踪起来比较复杂,而某个BUG又比较难找时,可以通过一些特殊的数据构造一个测试用例,然后将分析到的函数调用关系和运行时实际的函数调用关系进行对比,从而找出错误代码的位置。
概念
程序分析是对产品生产过程的工序状态进行记录、分析和改善的必要有效的IE手法,它是把工艺过程中的物流过程及人的工作流程以符号形式进行记录、设计的方法,通过它可以反映工序整体的状态,从而有效地掌握现有流程的问题点,并研究制定改善对策,以提高现有流程效率。
这里特别强调的是程序分析的目的性,任何工作开始之前最为重要的是要抱有鲜明的目的,才能在工作中明确方向达到目标。因此我们要明确IE程序分析的目的是消除产品生产过程中的全部浪费与不合理,从而提高效率。所以加工、检查、停滞、搬运任何工序并不因为其存在而合理,衡量的标准是创造价值的合理,否则是浪费。由此看来除加工以外的任何过程都有浪费的嫌疑。掌握全部生产过程包括工艺过程、检验过程、运输过程的实际状态发现并去除过程浪费与不合理,是程序分析的主要目的和作用。
目的
程序分析的目的有如下几点:
1、准确掌握工艺过程的整体状态
工艺流程的顺序; 明确工序的总体关系; 各工序的作业时间确认; 发现总体工序不平衡的状态。 2、发现工序问题点
发现并改进产生浪费的工序; 发现工时消耗较多的工序,重排简化此工序; 减少停滞及闲余工序; 合并一些过于细分或重复的工作。
方法通过静态分析方式和动态分析方式相结合,实现应用程序行为分析检测。静态分析通过Android的静态反汇编和反编译获取应用程序的源代码和资源配置文件,然后通过检测源代码中是否包含敏感行为特征,实现静态行为分析检测。动态分析结合沙箱系统,实现程序的动态运行并输出行为日志,然后对输出的行为日志分析,实现对应用程序动态行为分析检测。静态分析由于某些程序精心构造,无法对一些未将特征编码在代码文件中行为进行分析,在检测时无法获取潜在的应用程序行为动态分析由于自动运行行为的随机性,不能完全触发应用程序 *** 作。两种方式都存在这不足,所以本课题在实现分析系统时采取了动静态分析相结合方式,以更全面的实现Android应用程序的行为分析检测,为安全分析提供依据。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)