摘要
提出一种Android系统非应用层软件的管理和优化方法,使用户能够方便地管理并更新系统非应用层软件,删除系统内多余的程序文件,减小系统体积消除潜在安全隐患。通过构建文件及模块之间的依赖关系将非应用层软件自动划分为软件包,以包为单位对非应用层软件进行更新、删除、查看等操作;利用C/C++函数的扩展调用图查找并删除系统内未被任何代码依赖的无用代码,实现了包含软件源构造器、软件源服务器和包管理客户端在内的Android包管理和优化系统。测试结果表明,相比传统下载系统镜像刷写flash以及OTA(over the air)等系统更新方式,通过包管理器更新系统在灵活性、额外流量开销、安装方便性及安装速度方面都有一定优势,优化后的系统总体积减少了约3433.3KB。
A method of managing and optimizing software below the application layer of Android framework,which allowed users to manage and upgrade these software conveniently,and delete redundant program files for reducing the size of system and eliminating potential risk,was put forward.By constructing the dependency relationship between files and modules,below-application-layer software was automatically divided into packages,through which software was upgraded,installed,deleted or checked.At the same time,by using the C/C++extended call graph(ECG),codes independent on any other codes were found and deleted.The Android package management and optimization system was implemented as three major parts including package constructor,source server and client package manager.Results of tests show that,compared to conventional Android updating methods(system image installation and OTA patch dispatch),updating through the package manager shows advantages in flexibility,extra traffic cost,installation convenience and installation speed.After optimization,the size of Android system reduces by about 3433.3KB.
出处
《计算机工程与设计》
北大核心
2016年第5期1375-1383,共9页
Computer Engineering and Design
基金
"核高基"科技重大专项课题"开源操作系统内核分析和安全性评估"分课题基金项目(2012ZX01039-004-8
2012ZX01039-004-34)
国家自然科学基金项目(61272086)