系统框架
applicationjava应用程序
applicationfarmeworkjava应用程序框架子
librarics/androidruntimec/c++本地库/android运行时环境
linuxkernelLinux内核与驱动
对内核的依赖:
电源管理
文件系统
内存管理
进程管理
网络协议栈
驱动模型
本地框架;
bionic标准系统函数库
webCoreweb浏览器引擎使用
surfaceflinger用于2d和3d显示
opencore基础多媒体框架,最新版使用stagefright
skia2d图形引擎
3Dlibraries3d加速
sqLite轻型关系数据库
虚拟机
每个android应用程序都用一个自已的Dalvik虚拟机来执行
java文件经过编译器编译,通过sdk中的dx工具转化为.dex格式后交虚拟机执行
android运行库
java核心库
dalvik虚拟机
系统移植工作:
1驱动移植:
安装交叉编译环境
编译内核
常见驱动:
输入设备
输入子系统
文件目录:D:\tools\linux-3.0.16\linux-3.0.16\drivers\input
核心代码:input.c
事件部分的实现:
各类子设备:
文件目录D:\tools\linux-3.0.16\linux-3.0.16\drivers\input
joystick摇杆
keyboard按键
touchscreen触摸
mouse鼠标
显示设备
Framebuffer显存的一个映像,可以直接进行读写操作
代码路径:D:\tools\linux-3.0.16\linux-3.0.16\drivers\video\nvidia
设备节点:dev/fb*
摄像头
视频采集
视频输出
直接传输视频
设备节点文件:deb/video/videox
音频
有三种硬件接口:
pcm(pulsecodemodulation脉冲编码调制)
Iis(inter-ICsound)
ac97(Auciocodec1997)
声卡驱动中有两种音频框架
Oos(opensoundsystem)开发声音系统
Alsa提供音频和midi(musicalinstrumentdigitallinterface)的支持
MTD
内存技术设备(memorytechnologydevice)flash
代码路径:D:\tools\linux-3.0.16\linux-3.0.16\drivers\mtd
设备节点文件dev/block/mtdblockx
MMC
MultiMediaCard
代码路径:D:\tools\linux-3.0.16\linux-3.0.16\drivers\mmc
设备节点:dev/block/mmcblkx
WIFI
代码路径:
有线:D:\tools\linux-3.0.16\linux-3.0.16\drivers\net
无线:D:\tools\linux-3.0.16\linux-3.0.16\drivers\net\wireless
分享到:
相关推荐
【Android学习笔记】 Android是一个开源的移动操作系统,主要应用于智能手机和平板电脑。它由Google主导并开源,基于Linux内核。学习Android开发,你需要熟悉Java或Kotlin语言,理解Android SDK、Android Studio...
"android开发笔记1"主要针对6410开发板,提供了移植Android 2.1系统的详尽步骤,是Android初学者理想的自学资源。下面将根据提供的标签和文件名称,深入讲解相关知识点。 1. Android开发环境搭建:在开始Android...
在“android开发笔记3”中,我们可以深入学习到Android应用程序开发的关键步骤,特别是针对6410开发板的系统移植过程。这篇笔记是为初学者量身定制的,旨在帮助他们快速掌握Android开发的核心技能。 首先,我们关注...
在“android开发笔记5”中,我们主要关注的是在6410开发板上移植Android 2.1操作系统的过程,这对于Android开发初学者来说是一份非常实用的学习资料。以下是这个主题下的一些关键知识点: 1. **开发板介绍**:6410...
【Android开发笔记4】主要聚焦在6410开发板上移植Android 2.1系统的实践过程,这对于初学者来说是一份极其宝贵的资料。这里我们将深入探讨Android开发的基础知识,特别是UI编程,以及如何在特定硬件平台上进行系统...
这份“Java学习笔记(必看经典).doc”文档将涵盖Java的核心概念和重要知识点,对于初学者和有经验的开发者来说都是宝贵的参考资料。 首先,Java的基础部分通常包括以下几个方面: 1. **Java语法基础**:这是所有...
【Android开发板笔记7】是针对Real6410开发板的一份详实的学习资料,旨在帮助开发者快速提升Android技术能力。这份笔记结合了实际硬件平台,深入浅出地讲解了Android系统在嵌入式设备上的应用与优化,是Android...
"android开发笔记2"是一份专为6410开发板设计的学习资源,旨在帮助初学者逐步理解并实践Android 2.1的移植过程。这份笔记以详尽的步骤指导,使得开发者的技术水平能够快速提升。 首先,我们来看"新版Android开发...
Cocos2D-X2.2.3学习笔记9(处理重力感应事件,移植到Android添加两次返回退出游戏效果) http://blog.csdn.net/hucblog/article/category/2242181
Java基础学习笔记(印象笔记) Java 是一种广泛使用的面向对象编程语言,最初由 Sun Microsystems(现为 Oracle Corporation)于1995年发布。它具有简单、易学、可移植、安全和高性能等特点。 Java 是一种跨平台语言...
"华清嵌入式课程学习笔记"是一份针对嵌入式工程师的宝贵资料,涵盖了该领域的核心概念、技术和实践应用。下面将详细阐述嵌入式系统的相关知识点。 1. 嵌入式系统定义:嵌入式系统是指被设计用于执行特定任务的...
本文将深入探讨CoolReader在安卓Android系统上的实现原理,以及如何利用开源源码进行二次开发。 首先,让我们了解一下CoolReader的基本功能。作为一款阅读器,它支持多种格式的电子书,如EPUB、FB2、PDF等,提供...
4. **可移植性**:Python已移植到众多操作系统,包括Linux、Windows、Mac等,确保代码在不同平台上都能运行。 5. **解释性**:Python程序可以直接从源代码运行,无需预编译成机器码,提高了开发效率。 6. **面向对象...
通过学习这些笔记和教程,开发者可以深入了解Android系统移植的流程,同时掌握UI设计和数据管理的基本技能,为后续的Android开发工作打下坚实基础。无论是对硬件平台的熟悉还是软件开发的实践,都能从这些资料中获益...
Tensorflow 1.5.0 的学习笔记(资料整理) 适合初学者入门(PDF幻灯片形式,400多页幻灯片),是最近一段时间的Tensorflow的学习笔记(实验环境为Mac OS10.13.2)。内容包含了: 1.Tensorflow简介,2.Python数值计算...
- **android-x86_64-7.1-r2.iso**:此版本基于Android 7.1(代号为Nougat),是一个较稳定的版本,适用于希望在旧一点的硬件上运行Android系统的用户。 - **android-x86_64-8.1-rc2.iso**:基于Android 8.1(代号为...
ffmpeg学习笔记3 编译fdk-aac(Win10+android-ndk-r22)生成的arm64-v8a动、静态库 https://blog.csdn.net/aggs1990/article/details/124577004 CSDN审核可能较慢,如无法下载,可以过段时间再回来看下 仅供相关爱好者...