安卓系统源码有多大(如何编译一个精简的Android系统)

2026-04-13 20:30:01 :0

安卓系统源码有多大(如何编译一个精简的Android系统)

“安卓系统源码有多大”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看安卓系统源码有多大(如何编译一个精简的Android系统)!

本文目录

如何编译一个精简的Android系统

本次试验使用的android源码是4.2,编译的架构是mini-mips。
一、所做的工作
1、修改build/target/product/mini.mk,去掉一些不必要的模块(例如Phone、DownloadManager等)
2、修改SystemServer.java,屏蔽一些service,让系统能够启动起来(例如,Location Manager、Telephony Registry)
3、修改dalvik/vm/native/dalvik_system_Zygote.cpp,注释掉因为检查不到外部存储而导致dalvik abort的地方 (这是googel的一个bug,在2013年1月份已解决,如果用这以后的代码不用修改此处)
4、修改WindowManagerService.java,把发送BOOT_TIMEOUT消息的时间改为0(之前为30秒)
二、系统优化后的效果(验证工作均在mips模拟器上进行)
1、节省运行内存,下面是全编译与mini编译的内存使用状态的对比
1)full build
MemTotal: 499360 kB
MemFree: 242064 kB
2)mini build
MemTotal: 499360 kB
MemFree: 395192 kB
2、缩短开机启动时间
在虚拟机上的启动时间
1)full build-29秒
2)mini build-14秒
3、只启动home程序,其余的应用程序均被移除
三、保留android的开发环境
1、adb,ddms,apkinstall等,都能正常工作
2、在eclipse中编写的android应用程序能够运行在该mini-android之上
四、开机自动启动指定应用程序
本次测试使用Gallery.apk应用程序,修改其源码后可以实现随系统的启动而自动启动的功能。

为什么android的源码那么大

1.Android是一种以Linux为基础的开放源码操作系统,2.主要使用于便携设备。目前尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。3.Android操作系统最初由Andy Rubin开发,最初主要支持手机。2005年由Google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上。4.Android的主要竞争对手是苹果公司的iOS以及RIM的Blackberry OS。2011年第一季度,Android在全球的市场份额首次超过塞班系统,

一个安卓系统占用多大的容量

Android系统占用手机内存的大小随着版本的不同而不同,一般在100-1000M不等。
  安卓系统的优化相比于IOS和WP要差一些,而且垃圾和碎片问题十分严重,另外安卓相比IOS是真后台,如果后台运行很多软件对内存占用是非常高的。
  Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备

编译整个模块的android源码需要多大的空间

  • 预留100G或以上空间用于存放源码及编译产出,本人编译的KitKat 源码(带.repo目录)+编译产出在80G左右

  • 第一次下载好Android源代码工程后,我们通常是在Android源代码工程目录下执行make命令,经过漫长的等待之后,就可以得到Android系统镜像system.img了。以后如果我们修改了Android源代码中的某个模块或者在Android源代码工程新增一个自己的模块,是不是还是执行make命令呢?答案是否定的,Google为我们准备了另外的命令来支持编译单独的模块,以及重新打包system.img的命令。在继续学习Android源代码之前,就让我们先来看看这个命令吧。
    一. 首先在Android源代码目录下的build目录下,有个脚本文件envsetup.sh,执行这个脚本文件后,就可以获得一些有用的工具:
    USER-NAME@MACHINE-NAME:~/Android$ . ./build/envsetup.sh
    注意,这是一个source命令,执行之后,就会有一些额外的命令可以使用:
    - croot: Changes directory to the top of the tree.
    - m: Makes from the top of the tree.
    - mm: Builds all of the modules in the current directory.
    - mmm: Builds all of the modules in the supplied directories.
    - cgrep: Greps on all local C/C++ files.
    - jgrep: Greps on all local Java files.
    - resgrep: Greps on all local res/*.xml files.
    - godir: Go to the directory containing a file.
    这些命令的具体用法,可以在命令的后面加-help来查看,这里我们只关注mmm命令,也就是可以用它来编译指定目录的所有模块,通常这个目录只包含一个模块。
    二. 使用mmm命令来编译指定的模块,例如Email应用程序:
    USER-NAME@MACHINE-NAME:~/Android$ mmm packages/apps/Email/
    编译完成之后,就可以在out/target/product/generic/system/app目录下看到Email.apk文件了。Android系统自带的App都放在这具目录下。另外,Android系统的一些可执行文件,例如C编译的可执行文件,放在out/target/product/generic/system/bin目录下,动态链接库文件放在out/target/product/generic/system/lib目录下,out/target/product/generic/system/lib/hw目录存放的是硬件抽象层(HAL)接口文件,后面的文章里面,我们会陆续提及到,敬请关注。
    三. 编译好模块后,还要重新打包一下system.img文件,这样我们把system.img运行在模拟器上时,就可以看到我们的程序了。
    USER-NAME@MACHINE-NAME:~/Android$ make snod
    四. 参照Ubuntu上下载、编译和安装Android最新源代码一文介绍的方法运行模拟器:
    USER-NAME@MACHINE-NAME:~/Android$ emulator
    这样一切就搞定了。

关于安卓系统源码有多大和如何编译一个精简的Android系统的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

安卓系统源码有多大(如何编译一个精简的Android系统)

本文编辑:admin

更多文章:


怎么开通app(app怎么开启)

怎么开通app(app怎么开启)

本篇文章给大家谈谈怎么开通app,以及app怎么开启对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录app怎么开启怎样开通智能电视小度app小米穿戴如何开启app权限华为手机APP怎么账号怎么开襄阳出行app乘车码怎么开通手机

2026年7月24日 23:45

dll文件可以反编译吗(c++dll反编译后如何运行)

dll文件可以反编译吗(c++dll反编译后如何运行)

其实dll文件可以反编译吗的问题并不复杂,但是又很多的朋友都不太了解c++dll反编译后如何运行,因此呢,今天小编就来为大家分享dll文件可以反编译吗的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录c++dll反

2026年5月13日 09:30

apacheii评分英文全称(apache危重病评分有什么意义)

apacheii评分英文全称(apache危重病评分有什么意义)

各位老铁们,大家好,今天由我来为大家分享apacheii评分英文全称,以及apache危重病评分有什么意义的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本

2026年3月8日 22:45

怎样停止apache(如何在 ubuntu 下关闭 apache 服务器的开机自启动)

怎样停止apache(如何在 ubuntu 下关闭 apache 服务器的开机自启动)

今天给各位分享如何在 ubuntu 下关闭 apache 服务器的开机自启动的知识,其中也会对如何在 ubuntu 下关闭 apache 服务器的开机自启动进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录如何在

2026年9月4日 05:45

java验证手机号码是否正确的代码(java里怎么判断用户输入的手机号是否合法)

java验证手机号码是否正确的代码(java里怎么判断用户输入的手机号是否合法)

大家好,今天小编来为大家解答以下的问题,关于java验证手机号码是否正确的代码,java里怎么判断用户输入的手机号是否合法这个很多人还不知道,现在让我们一起来看看吧!本文目录java里怎么判断用户输入的手机号是否合法求解这个判断电话号码的j

2026年9月23日 21:00

oracle数据库开发教程(如何新建一个oracle数据库)

oracle数据库开发教程(如何新建一个oracle数据库)

各位老铁们,大家好,今天由我来为大家分享oracle数据库开发教程,以及如何新建一个oracle数据库的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目

2025年6月29日 10:30

rm文件修复(如何修复RM视频文件)

rm文件修复(如何修复RM视频文件)

各位老铁们好,相信很多人对rm文件修复都不是特别的了解,因此呢,今天就来为大家分享下关于rm文件修复以及如何修复RM视频文件的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录如何修复RM视频文件视频文件损坏怎么修复

2026年2月28日 10:45

linux打印命令(linux中如何用sed命令打印行号:内容)

linux打印命令(linux中如何用sed命令打印行号:内容)

大家好,今天小编来为大家解答以下的问题,关于linux打印命令,linux中如何用sed命令打印行号:内容这个很多人还不知道,现在让我们一起来看看吧!本文目录linux中如何用sed命令打印行号:内容linux从操作系统后台打印出所有路由的

2026年5月31日 01:45

nginx 修改referer(如何配置Nginx做高可用)

nginx 修改referer(如何配置Nginx做高可用)

“nginx 修改referer”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看nginx 修改referer(如何配置Nginx做高可用)!本文目录如何配置Nginx做高可用nginx安装完后发现nginx.conf文件中

2025年12月15日 07:45

css所有标签及其属性汇总(HTML,CSS里面关于 id,class,name 属性的区别和用法)

css所有标签及其属性汇总(HTML,CSS里面关于 id,class,name 属性的区别和用法)

这篇文章给大家聊聊关于css所有标签及其属性汇总,以及HTML,CSS里面关于 id,class,name 属性的区别和用法对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录HTML,CSS里面关于 id,class,name

2025年10月19日 14:45

安徽企业信用信息查询系统(中国企业信用网是正规网站吗安徽)

安徽企业信用信息查询系统(中国企业信用网是正规网站吗安徽)

本篇文章给大家谈谈安徽企业信用信息查询系统,以及中国企业信用网是正规网站吗安徽对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录中国企业信用网

2026年5月15日 20:30

网页设计教程谁的好(我想学网页制作 ,从哪开始好 用什么软件 有什么视频教程推荐的么)

网页设计教程谁的好(我想学网页制作 ,从哪开始好 用什么软件 有什么视频教程推荐的么)

大家好,如果您还对网页设计教程谁的好不太了解,没有关系,今天就由本站为大家分享网页设计教程谁的好的知识,包括我想学网页制作 ,从哪开始好 用什么软件 有什么视频教程推荐的么的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本

2026年9月21日 17:45

合同评审表单模板(合同评审意见一般怎么写)

合同评审表单模板(合同评审意见一般怎么写)

各位老铁们,大家好,今天由我来为大家分享合同评审表单模板,以及合同评审意见一般怎么写的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录合同评审意见一般

2025年9月28日 11:45

resilient是什么意思(resilient是什么意思)

resilient是什么意思(resilient是什么意思)

本篇文章给大家谈谈resilient是什么意思,以及resilient是什么意思对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录resili

2026年8月9日 16:30

进入准备模式英文(英文“准备开始”怎么说呢)

进入准备模式英文(英文“准备开始”怎么说呢)

各位老铁们,大家好,今天由我来为大家分享进入准备模式英文,以及英文“准备开始”怎么说呢的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录英文“准备开始

2025年6月2日 15:30

dataerror(安装系统时出现7-zip:Data error是什么原因)

dataerror(安装系统时出现7-zip:Data error是什么原因)

大家好,如果您还对dataerror不太了解,没有关系,今天就由本站为大家分享dataerror的知识,包括安装系统时出现7-zip:Data error是什么原因的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录安

2025年7月22日 00:15

mustery怎么读(mystery应该读‘密死坠’还是‘密死特瑞’)

mustery怎么读(mystery应该读‘密死坠’还是‘密死特瑞’)

大家好,关于mustery怎么读很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于mystery应该读‘密死坠’还是‘密死特瑞’的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对

2026年7月12日 23:30

c语言函数调用自己函数(c语言中主函数能调用自己吗)

c语言函数调用自己函数(c语言中主函数能调用自己吗)

本篇文章给大家谈谈c语言函数调用自己函数,以及c语言中主函数能调用自己吗对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录c语言中主函数能调用自己吗C语言中如何调用文件中的自定义函数C语言中能否在一个自定义函数中调用另一个自定义

2025年9月3日 01:00

建筑工地图片(建筑施工现场应该挂哪些标志牌在哪些地方挂设)

建筑工地图片(建筑施工现场应该挂哪些标志牌在哪些地方挂设)

大家好,关于建筑工地图片很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于建筑施工现场应该挂哪些标志牌在哪些地方挂设的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助

2026年1月18日 00:00

数据库管理模型有哪些(数据仓库的模型有哪些)

数据库管理模型有哪些(数据仓库的模型有哪些)

本篇文章给大家谈谈数据库管理模型有哪些,以及数据仓库的模型有哪些对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录数据仓库的模型有哪些目前大多

2026年3月18日 05:30

近期文章

regularly up(翻译英文、)
2026-09-25 00:30:01
本站热文

electronics软件(labcenter electronics是什么软件)
2025-05-22 23:45:02 浏览:134
博客是微博吗(博客是微博吗)
2025-05-22 22:45:01 浏览:111
diversity and distribution(悬赏英语短文)
2025-05-23 16:15:02 浏览:107
ios软件开发前景(iOS就业前景怎么样)
2025-05-22 23:00:01 浏览:102
next month(有The next month这个单词吗,和 next month有什么区别)
2025-05-23 02:30:01 浏览:102
patron(patron是什么意思)
2025-05-23 10:30:02 浏览:95
标签列表

热门搜索