基于覆盖测试的linux内核裁剪

来源 :中北大学 | 被引量 : 0次 | 上传用户:Glorygwj
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
嵌入式系统是一种以应用为中心,完成某项特定功能的计算机系统。受资源限制,嵌入式系统应尽可能做到成本低,效率高。设计过程包括处理器选择,硬件设计,操作系统移植,应用程序设计四部分。这四部分中处理器选择,硬件设计,应用程序设计都可以根据功能需要直接设计,但嵌入式操作系统则需要根据现有的成熟的操作系统裁剪,定制而来。由于操作系统代码极多,在定制,裁剪过程中需要耗费大量的时间,而且只能做到有限的裁剪。  本文针对这一问题设计一种新的linux内核裁剪方法:编写插桩程序在操作系统内核代码中每个函数入口处插入一变量自加的语句,通过变量的值来统计函数调用次数。对嵌入式系统覆盖测试后通过在内核中添加的系统调用读出这一数据,根据这一数据裁剪去调用次数为0的函数,对内核实现函数级的裁剪。同时,在文中详细论述了这一方法在x86架构下实现与测试的过程,以及向嵌入式系统推广的方法。测试结果表明,这一方法能够裁剪掉内核定制工具不能裁剪的多余函数,也可以给内核定制过程提供参考数据,使得系统更为精简,定制裁剪过程更为方便。  本文的主要内容有:  (1)插桩程序编写:提取关键字集合,总结正则表达式,生成DFA状态转换表,编写插桩程序,能够在正确的位置插入正确的语句,并编写了分布式代码插桩程序,进一步减少了插桩时间。  (2)内核数据获取:分析x86保护模式,linux内核进程管理,内存分布,系统调用过程,修改linux内核,在其中添加系统调用,解决用户进程访问内核数据的权限,寻址等问题,可以实时读取所插入的数据,也可以把数据写入文件。  (3)覆盖测试与数据分析:结合上述两点内容,对内核插桩后,并编译,安装内核,编写应用程序读取插桩数据,并分析数据,根据数据裁剪部分内核,测试运行。
其他文献
汉语言文学是我国传统文化的代表,在初中阶段教育中占有重要地位.广大教师要充分认识汉语言学习的重要性,不断创新教学模式,提升教学水平,提高学生汉语言学习的兴趣,促进学生
近几年的小学校园内各项教学质量不断向高标准看齐,在另一方面也要求小学教师对课程教学模式不断进行创新改革,而小学语文课程也不例外,小学语文古诗词的教学策略更引起了教
Dlk2(Delta-like2 homolog)属EGF样跨膜蛋白,与同家族成员Dlk1(Delta-like1 homolog)高度同源。现有研究发现Dlk1在包括脂肪生成和肌肉生成在内的多个发育过程中发挥重要作用
语文是基础教育课程体系中的一门重点教学科目,随着教学体制的改革及发展,初中的语文教育也有了很大改善.本文根据语文教育目前存在的主要问题,提出了更新教师教学观念,打造
文言文在高中语文教学中占据很大的篇幅,也是学生学习的难点,因为文言文是古代的文学形式,在用词用句上与现在的写作方式有很大差异,所展现的时代背景和寓意与现代人们的思想
阿尔茨海默症(Alzheimers disease,AD)的一个主要病理特征是神经元外β-amyloid(Aβ)聚集形成的淀粉样斑,Aβ级联假说是AD发病机制的主流学说。β-淀粉样蛋白前体蛋白(β-Amylo
期刊
近年来的基础和临床研究提示内皮祖细胞(endothelialProgenitor cells,EPCs)可以治疗缺血性心脏病以及各种疾病引起的肢体缺血,也可以用于组织工程的血管构建,或者作为基因治疗
做好家庭教育指导既是新时期班主任工作职责的拓展,也是提高班主任工作水平的新途径.帮助家长转变家庭教育的观念,提高家长的思想境界,向孩子传递正能量;读名人传记,身边成功