ARM Cortex-A8/A9开发板 | ARM11开发板ARM11开发套件 | ARM9开发板ARM9开发套件 | 飞思卡尔I.MX28I.MX6开发板 |
tiny210/mini210开发板 | mini6410开发板/套餐 | Tiny6410开发板无线套件 | mini2440开发板/套餐 | micro2440开发板带核心板 | 友善开发板配件 模块 | QQ2440 V3 SBC-2410X |
FL2440 OK2440-IV V4 | OK2440-III OK2440V3 | TE2440-II TE2440V2 | OK6410 S3C6410 ARM11 | FL6410/OK6410B ARM11 | TE6410 S3C6410 ARM11 | TE-9263 AT91SAM9263 | 开发板配件 模块和其他 |
Xilinx开发板/fpga开发套件 | altera开发板/fpga开发套件 | 基于FMC FPGA/DSP子卡 |
BeagleBoard原厂开发板 | PandaBoard原厂开发板 |
TI DM3730 DevKit8500D | TI系列 omap3530开发板 | ATMEL系列 开发板 | Samsung系列 开发板 | 开发板配件-仿真器 模块 | NXP LPC3250 mini3250 |
Tiny210 三星S5PV210 | Mini210/Mini210s开发板 | Tiny4412开发板Cortex-A9 | Tiny6410开发板 ARM11 | mini2440开发板 ARM9 | micro2440开发板 ARM9 | mini6410开发板 ARM11 | 友善ARM开发板配件 模块 |
keil ARM仿真器/开发工具 | STM32开发板 Cortex-M3 | NXP LPC开发板Cortex-M3 | ATMEL系列 ARM开发板 | Luminary EKK8962开发板 | Freescale i.MX31开发板 | 三星s3c2440 s3c6410开发板 |
FL2440 OK2440-IV V4 | OK6410 S3C6410 ARM11 | FL6410/OK6410B ARM11 | OK210/-A Cortex-A8 | TE2440-II TE2440V2 | TE6410 S3C6410 ARM11 | TE-9263 AT91SAM9263 | ARM开发板配件 模块等 |
Real6410开发板/套餐 | Real210开发板/Real2410 | WIFI GPS GPRS模块摄像头 |
Xilinx开发板/开发套件KIT | Altera开发板/开发套件KIT | 配套模块 |
NXP LPC开发板 ARM7 | Cortex-M3 STM32开发板 | 最小系统模块类(初学者勿选) | 开发工具 仿真器 调试器 | TFT液晶屏LCD 液晶模块 |
DM642开发板/DM642实验箱 | DM6446开发板/DSP实验箱 | DSP仿真器 液晶屏 摄像头等 |
DM3730/AM3715/AM3359 | OMAP3530AM1808AM3517 | 飞思卡尔Cortex-A9开发板 | ATMEL系列ARM开发板 | NXP LPC3250 LPC1788 | Samsung系列ARM开发板 | STM32系列F207/F407 | ARM开发板配件-仿真器 模块 |
Realv210 S5PV210开发板 | Real6410开发板 ARM11 | WIFI GPS GPRS模块摄像头 |
NXP LPC开发板 ARM7 | Cortex-M3 STM32开发板 | ARM小系统模块(初学勿选) | 开发工具 ARM仿真器 调试器 | TFT液晶屏LCD 液晶模块 |
keil ARM仿真器/开发工具 | STM32开发板 Cortex-M3 | NXP LPC开发板Cortex-M3 | ATMEL系列 ARM开发板 | Luminary EKK8962开发板 | Freescale i.MX31开发板 | 三星s3c2440 s3c6410开发板 |
Exynos4412开发板A9四核 | UT-S5PV210 S5PC100 | UT-S3C6410开发板 ARM11 | idea 6410开发板 ARM11 | UT-S3C2450开发板 ARM9 | UT-S3C2416开发板 ARM9 | UT-S3C6410核心板 工控 |
Xilinx开发板 FPGA开发套件 | altera开发板 FPGA开发套件 | FMC模块 配件 下载线 |
DM642开发板/DM642实验箱 | DM6446开发板/DSP实验箱 | DSP仿真器 液晶屏 摄像头等 |
s3c2410 ARM9 FS2410 | s3c2440开发板 ARM9 | s3c44B0开发板 ARM7 | s3c6410 2450 2443/13 | PXA270 PXA320 PXA255 | Atmel 9200 9261 9G20 | Philips NXP开发板YL-LPC | FS-EP9315开发板ARM9 | LCD液晶屏TFT真彩/触摸屏 | ARM仿真器/仿真调试工具 | ARM开发板配套ARM核心板 |
三星s3c2410 s3c44B0 | 三星s3c6410 s3c2443 | Intel PXA270 PXA320 | UP-CUP OMAP5910平台 | FPGA Xilinx altera平台 | 配件-仿真器 模块 液晶屏LCD | 龙芯开发板UP-DRAGON-I | 物联网教学科研设备 | EDA/FPGA/SOPC教学科研 |
utu2440-F-V4.5 含核心板 | utu2440-S-V4.1 单板结构 | YC2440-F-V5.1开发板 豪华型 | YC-ePC-A系列人机界面 | Mars-EDA套件CPLD FPGA | 触摸屏LCD 摄像头 WI-FI模块 |
ARM开发板/开发平台 | FPGA开发板/开发平台 | 编程器/烧写器下载器烧录 | ZLG 仿真器ARM FPGA DSP | ZLG周立功逻辑分析仪 |
DSP初学者开发套件(DSK) | DSP仿真器/仿真系统 | DSP开发板/DSP试验箱 | DaVinci系列多媒体平台 | Xilinx FPGA大学计划产品 | SEED教学实验系统 | FPGA/DSP FPGA开发板 | TI原厂开发板套件/CCS软件 |
ARM开发板 | XSCALE开发板 | ARM仿真器 | SOPC开发板 | DSP开发板 | 达芬奇系列DSP开发平台 | DSP仿真器 | DSP实验箱 | DSP专业研究平台 | ARM实验箱系列 |
广嵌实验室项目产品 | GEC2440/GEC6410开发板 |
泰克Tektronix示波器 | 普源RIGOL示波器 | USB虚拟示波器 |
UT-S5PC100 UT-S5PV210 | UT-S3C6410开发板 ARM11 | idea 6410开发板 ARM11 | UT-S3C2450开发板 ARM9 | UT-S3C2416开发板 ARM9 | UT-S3C6410核心板 工控 | 开发板模块wifi gps等 |
EMA OMAP3530开发板 | EMA OMAP 3530核心板 |
三星s3c2410 s3c44B0 | 三星s3c6410 s3c2443 | Intel PXA270 PXA320 | UP-CUP OMAP5910平台 | FPGA Xilinx Altera平台 | 配件-仿真器 模块 液晶屏LCD | 龙芯系列 UP-DRAGON-I |
utu2440-F-V4.5 含核心板 | utu2440-S-V4.1 单板结构 | YC2440-F-V5.1开发板 豪华型 | 触摸屏LCD 摄像头 WI-FI模块 | Mars-EDA套件CPLD FPGA | ePC系列工控一体机ARM9 A8 |
ARM开发板/开发平台 | FPGA开发板/开发平台 | 编程器/烧写器下载器烧录 | ZLG 仿真器ARM FPGA DSP | ZLG周立功逻辑分析仪 |
DSP初学者开发套件(DSK) | DSP仿真器 | DSP开发板 | DSP实验箱 | Xilinx FPGA大学计划产品 |
ARM开发板 | XSCALE开发板 | ARM仿真器 | SOPC开发板 | DSP开发板 | 达芬奇系列DSP开发平台 | DSP仿真器 | DSP实验箱 | DSP专业研究平台 | ARM实验箱系列 |
ARM开发板S3C6410等 | Cortex-A8/ARM11仿真器 | ADSP Blackfin开发板 | FPGA Spartan-3E开发板 |
GEC2410开发套件ARM9 | GEC2440开发套件ARM9 |
泰克 示波器 |
固然对移植Android很感兴趣,苦于手上没有符合的移动硬件平台,苦闷阿。连合开辟社区的一些hacking news纸上谈兵,说说我以是为的理论上的移植步调吧,欢迎交换,要是有朋侪移植告成,不吝见示!
通过前两天对Android的Linux平台 以及启动进程的开端学习,我以为Android的意义不但仅是手机平台那么大略,通过对其框架,布局的阐发,我们可以将Android应用到任意移动硬件平台上,乃至本身研发出新的更好的框架。连Google本身也说,我们的目标是,让我们颁布的强大的平台可以或许应用到数千种差别的移动配置上。这是可以明白的,Google便是如许,它的每个战略都比常理要更进一步。不推出专属的硬件,而是一个通用的移动配置的软件平台,使Android可以更方便的快速霸占手机操纵体系的市场,而终极可以到达的份额也会非常的可观。
固然,这都是后话了,group上这几天的内核话题便是,我们怎样让Android在现有的硬件平台上跑起来,而不是仅仅用模仿器来模仿它?这个命题预计对全部hacker都有巨大的吸引力,要是Android能在本身的手机平台上跑起来,全部的开辟,就忽然变得故意义了。我不是说如今的开辟没故意义,终究GoogleN位数的奖金在那边摆着的,呵呵,不过对付上层开辟者来说,终极目标还是应用的实际性和盛行性,对吧?应用有没有实际代价,实际硬件平台上跑一跑就知道了。
从Android现有的开源环境看,全部的hacking已经有一个比较明白的引导方向了,便是寄托Benno开始放出的要领来hack种种image并阐发一些东西,从我之前的两篇文章也可以看出大抵步调。我们如今可以或许得到的东西,包括ramdisk image,systemimage以及data image,固然另有open source的Linux kernel。以是,全部的事变都应该从这几个东西入手。
先看看kernel部分。由于Android基于Linux,因此全部的目标移植平台都应该容许运行Linux,对付实行阶段的我们来说,最好是找一款默认便是采取Linux操纵体系并提供美满的develop environment的配置,如许,我们只必要找出Google提供的Linux2.6.23kernel和现有的kernel有什么差别,把全部必要的修改做成patch,patch到现有体系上,就有大概告成移植整个Android,无须重新编译Google的Linux 2.6.23 kernel,然后绞尽脑汁想怎么port到某个配置上。先下载一个standard Linux2.6.23 kernel,然后利用下令
diff -ruN linux-2.6.23/ Google-linux-2.6.23/ >lk.patch
打开lk.patch,God,有3万多行。细致阐发一下,大部分都是和Qemu以及goldfish有关的。我们要做的事变,是让Android在真实平台上跑起来,以是不管是用于假造处理惩罚器的Qemu还是SDK模仿的硬件平台Goldfish,都不是我们所必要的,要在patch内里去失他们,由于我们盼望运行在真实的硬件平台上。恩,说实话,是一个很贫苦的事变,你要阐发又30000多行的patch阿……不过内里有一超长段是关于yaffs的补丁,要是你目标平台所带的内核已经支持yaffs了,就没须要要了。这是我修改后的patch ,放在googlepages上的,要是哪天又被调和了我也没有步伐。
下一步,便是让打了Android patch的内核运行在你的目标硬件上,详细步调是和不消硬件的开辟环境相接洽的。固然,还必要导入Android的rootfs以及filesystem。将他们用mkfs.jffs2构建成jffs文件体系即可。
必要细致的是,这个符合的硬件平台是必要挑选的,看看Android模仿器内里的信息:
# cat /proc/cpuinfo
Processor : ARM926EJ-S rev 5 (v5l)
BogoMIPS : 331.77
Features : swp half thumb fastmult vfp edsp java
Google默认的是ARM926EJ-S内核。这就在肯定程度上限定了我们可以或许port的平台选择,Benno曾经试验在Openmoko上移植Android ,末了失败了,缘故起因便是ARM926EJ-S采取的是ARMv5TEJ指令集,而Openmoko的ARM920T采取的是ARMv4T指令集。以是,不但仅是必要能运行兼容EABI的Linux的配置那么大略。
以上是理论步调的逻辑阐发,由于我如今手上没有试验平台,以是也无法验证,要是有朋侪末了告成移植了Android,多多交换。
博航网 www.broadon.net 版权所有
京ICP备10051899号-2 京公网安备110108006479号