各Android版本的Linux内核表(待续)以及如何下载相应的android源码
一.Android版本与Linux内核的关系
http://www.cnblogs.com/qiengo/archive/2012/07/16/2593234.html
| 英文名 | 中文名 | Android版本 | Linux内核版本 |
| No | 无 | 1.1 | |
| Cupcake | 纸杯蛋糕 | 1.5 | 2.6.27 |
| Donut | 甜甜圈 | 1.6 | 2.6.29 |
| Eclair | 松饼 | 2.0 | 2.6.29 |
| Eclair | 松饼 | 2.1 | 2.6.29 |
| Froyo | 冻酸奶 | 2.2 | 2.6.32 |
| Gingerbread | 姜饼 | 2.3 | 2.6.35 |
| Honeycomb | 蜂巢 | 3.0 | ? |
| ... | ... | ... | ... |
二.下载源码分为2大部分
- Android源码;
- Android内核(Android Linux Kernel)
三.如何下载Android内核
$git clone git://android.git.kernel.org/kernel/common.git
四.如何查看Android内核的版本(代码级查看)
在内核代码目录:
运行命令:
$git branch –a
如下:
[root@localhost common]# git branch -a (查看版本) * android-2.6.36 remotes/origin/HEAD -> origin/android-2.6.36 remotes/origin/android-2.6.35 remotes/origin/android-2.6.36 remotes/origin/archive/android-2.6.25 remotes/origin/archive/android-2.6.27 remotes/origin/archive/android-2.6.29 remotes/origin/archive/android-2.6.32 remotes/origin/archive/android-gldfish-2.6.29 remotes/origin/archive/android-goldfish-2.6.27
五.如何获得指定版本的Linux内核
要想下载2.6.29内核,只要最后执行一下(进入下载后的目录):
$git checkout remotes/origin/archive/android-2.6.29 (即上面列出的版本分支)
此时下载到的是2.6.29版本内核了
六.如何获得Android某个版本的源码
例如获得Android1.5的源码
$repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake
$repo sync
Android 1.5:Cupcake(杯子蛋糕)
Android 1.6:Donut(甜甜圈)
Android 2.0 / 2.1:Eclair(闪电泡芙)
Android 2.2:Froyo(冷冻忧格)
Android 3.0:Gingerbread(姜饼)
Android 3.5:Honeycomb(蜂巢)
Android 4.0:Ice Cream(冰淇淋)
本质上:
想取某个branch而不是主线上的代码,我们需要用-b参数制定branch名字
七.如何获取Android当前主干上最新版本的所有的sourcecode
$repo init -u git://android.git.kernel.org/platform/manifest.git
八.如何获取需要某一个project的代码
比如kernel/common,就不需要repo了,直接用Git即可
$git clone git://android.git.kernel.org/kernel/common.git
九.列出本地所有分支
git branch
十.如何获取某个branch的代码
如果需要某个branch的代码,用git checkout即可。
比如我们刚刚获取了kernel/common的代码,那就先进入到common目录,然后用下面的命令:
git checkout origin/android-goldfish-2.6.27 -b goldfish
这样我们就在本地建立了一个名为goldfish的android-goldfish-2.6.27分支,代码则已经与android-goldgish-2.6.27同步。
各Android版本的Linux内核表(待续)以及如何下载相应的android源码的更多相关文章
- Android逆向之旅---动态方式破解apk进阶篇(IDA调试so源码)
Android逆向之旅---动态方式破解apk进阶篇(IDA调试so源码) 来源 https://blog.csdn.net/jiangwei0910410003/article/details/51 ...
- C#/WPF/WinForm/.NET程序代码实现软件程序开机自动启动的两种常用方法的示例与源码下载带详细注释-源码代码-注册表方式-启动目录快捷方式
C#/WPF/WinForm/.NET程序代码实现软件程序开机自动启动的两种常用方法的示例与源码下载带详细注释-源码代码-注册表方式-启动目录快捷方式 C#实现自动启动的方法-两种方法 源码下载地址: ...
- 在Ubuntu上为Android系统编写Linux内核驱动程序(老罗学习笔记1)
这里,我们不会为真实的硬件设备编写内核驱动程序.为了方便描述为Android系统编写内核驱动程序的过程,我们使用一个虚拟的硬件设备,这个设备只有一个4字节的寄存器,它可读可写.想起我们第一次学习程序语 ...
- 在Ubuntu上为Android系统编写Linux内核驱动程序
文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6568411 在智能手机时代,每个品牌的手机都有 ...
- 查看LINUX发行商版本与LINUX内核版本
查看LINUX发行商版本:[root@server-mysql ~]# cat /etc/issue Red Hat Enterprise Linux Server release 6.3 (Sant ...
- 云服务器-Ubuntu更新系统版本-更新Linux内核-服务器安全配置优化-防反弹shell
购入了一台阿里云的ESC服务器,以前都用CentOS感觉Yum不怎么方便,这次选的Ubuntu16.04.7 搭好服务之后做安全检查,发现Ubuntu16.04版本漏洞众多:虽然也没有涉及到16.04 ...
- 【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)
作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csd ...
- Android图片加载框架最全解析(二),从源码的角度理解Glide的执行流程
在本系列的上一篇文章中,我们学习了Glide的基本用法,体验了这个图片加载框架的强大功能,以及它非常简便的API.还没有看过上一篇文章的朋友,建议先去阅读 Android图片加载框架最全解析(一),G ...
- linux应用之Lamp(apache+mysql+php)的源码安装(centos)
Linux+Apache+Mysql+Php源码安装 一.安装环境: 系统:Centos6.5x64 Apache: httpd-2.4.10.tar.gz Mysql: mysql-5.6.20-l ...
随机推荐
- URAL 1139 City Blocks(数论)
The blocks in the city of Fishburg are of square form. N avenues running south to north and Mstreets ...
- xsd与xsl文件的区别
请问xsd与xsl文件的区别在哪里呢? 我刚学xml,一开始用xmlspy学的,然后生成了一个xsd的文件,但在网上下的源程序是有一个xsl文件的,很不明之间有什么区别的,为什么别人的程序不用xs ...
- 夺命雷公狗---DEDECMS----2快速入门之玩转dede四大表之间的关系
比如一个小说网站,网站里面有很多类型让我们的小说网他里面有很多种分类,如: 玄幻....奇幻....仙侠....武侠....文学....异界....都市....军事....历史....灵异....悬疑 ...
- yii Html中的a标签使用
1.use yii\helpers\Html; <?php echo Html::a('编辑',['edit','id'=>$info['goods_id']])?> 2.有确认框的 ...
- 给图像添加logo
#include <opencv2\opencv.hpp>#include"ProcessPixels.h"using namespace cv;using names ...
- SqlServer 中如何查看某一个Sql语句是复用了执行计划,还是重新生成了执行计划
我们知道SqlServer的查询优化器会将所执行的Sql语句的执行计划作缓存,如果后续查询可以复用缓存中的执行计划,那么SqlServer就会为后续查询复用执行计划而不是重新生成一个新的执行计划,因为 ...
- java基础整理1
1.匿名对象:new persion().tell();这样的,它只开辟栈内存,没有栈引用的关系 2.构造方法的名称必须与类名称一致,构造方法的声明处不能有任何返回值类型的声明,不能在构造方法中使用r ...
- 161115、MyBatis 通过包含的jdbcType类型
MyBatis常用jdbcType类型 BIT FLOAT CHAR TIMESTAMP OTHER UNDEFINEDTINYI ...
- 各种数据库连接代码(java)
SqlServer2000 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); URL = "j ...
- $IFS和set
$IFS是内部字段分隔符的缩写.它决定Bash解析字符串时将怎样识别字段,或单词分界线.默认为(空格.制表符.换号) 修改$IFS: [xiluhua@vm-xiluhua][~/shell_scri ...