android底层开发文档

android底层开发文档

ID:15384360

大小:27.50 KB

页数:6页

时间:2018-08-03

android底层开发文档_第1页
android底层开发文档_第2页
android底层开发文档_第3页
android底层开发文档_第4页
android底层开发文档_第5页
资源描述:

《android底层开发文档》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、汕头大学-黄珠唐tigertang2@gmail.com3.1Android平台的优越性Android是一个非常优秀的操作系统,这已经得到很多厂家和工程实践的验证。但笔者认为,其最大的意义在于这个开源的操作系统给我们带来学习的机会,因为一直以来,我国的IT技术和欧美相比有一定的差距,借着这个机会,我们可以学习目前最新的软件开发技术和框架设计,迎头赶上并弥补先天不足。虽然Android内核基于LINUX,但是ANDROID和LINUX有很大区别,Android的主线内核做了相应优化,主要体现在下面几个方面:·Alarm·Ashmem·Binder·PowerMan

2、agement·LowMemoryKiller·KernelDebugger·Logger其中最主要的部分是Binder,这是不同于LINUX的进程间通信(IPC)的部分,Binder主要是通过用驱动程序来推进进程间通信,以及通过共享内存来提高性能。基于Linux的android操作系统有以下几个方面的优势·Greatmemoryandprocessmanagement优越的内存和进程管理功能·Permissions-basedsecuritymodel基于权限的安全模式·Provendrivermodel被认可的驱动程序模式·Supportforsharedl

3、ibraries支持共享库·Itisalreadyopensource!代码开源3.2H.264硬件编解码的性能指标H.264编解码标准是由ITU-T和ISO/IEC的联合视频组(JVT)开发的最新的数字视频编码标准,它是DPCM和变换编码的混合编码模式,主要特点在于统一的VLC符号编码、高精度、、多模式的位移估计,基于4×4块的整数变换、分层的编码语法等。这些措施使得H.264算法具有很高的编码效率,在相同的重建图像背质量下,能够比H.263节约50%左右的码率。H.264的码流结构非常适合于网络,增强了纠错恢复能力,可以很好的适应基于IP和无线网络的视频数据

4、传输。这里我们采用s3c6410集成的标准H.264硬件编解码,性能可以达到全双工30fps@640x480同时编解码和半双工30fps@720x480或25fps@720x576编解码。3.3UDP与TCP比较UDP协议,即用户数据报协议。UDP提供不可靠的非连接型传输层服务,它允许在源和目的地站点之间传送数据,而不必在传送数据之前建立对话。此外,该协议还不使用TCP使用的CRC校验。当使用UDP时,传输层功能全都发回,而开销却比较低。它主要用于那些不要求TCP协议的非连接型的应用程序。采用UDP的主要优点是传输数据量比较大,在网络环境比较好时,适合音频、视频

5、数据的传输,本系统在基于有线Internet视频传输时,采用的就是UDP的方式,效果很好。但是在基于3G无线网络传输数据时,由于UDP面向无连接和无CRC校验的特性,这种数据传输方式就出现了掉包很严重的问题,图像出现严重模糊。为了解决这个问题,我们在3G无线网络中采用了基于TCP的视频传输实现,很好的解决了在无线网络中数据掉包严重的问题。也许读者会问,使用TCP传输视频数据,速度跟得上吗?答案是肯定的,因为基于H.264的数据压缩率比较高,采用TCP不会影响传输速度,实际上经过测试,也达到了很好的效果。TCP协议,既传输控制协议。TCP提供可靠的面向连接的数据传

6、输协议,是重要的传输层协议,它和UDP不同,传输层软件TCP的目的是允许数据同网络上的另外站点进行可靠的交换。它能提供端口编号的译码,以识别主机的应用程序,而且完成数据的可靠传输。下图为TCP的头信息:图3.1TCP的头信息Linux上TCP和UDP是使用套接字Socket实现的,建立套接字之后UDP直接使用sendto()、recvfrom()传输数据。而TCP实现则在服务器端需要建立监听,通过客户端请求,三次握手协议实现可靠的面向连接的数据传输。详细实现请看软件设计部分和源代码。4.3Android的移植本系统移植了原生android1.6(Donut),并

7、对其进行较大程度的开发。在写本文档时,我们已经将其升级至最新版本Android2.1(Eclair).下面简要介绍其移植过程,编译平台Fedora9Fedora9已经包含了编译android时所需的大部分开发包,我们还需要安装git和gperf.#yuminstallgit-core#yuminstallgperf从sun网站下载JDK5http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-1_5_0_18-

8、linux-i586-r

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。