android安卓系统架构.docx_第1页
android安卓系统架构.docx_第2页
android安卓系统架构.docx_第3页
android安卓系统架构.docx_第4页
android安卓系统架构.docx_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

android安卓系统架构android system architecture and their operating systems, using a layered architecture. From the chart to see, android is divided into four layers, from the top to the lower are the application layer, application framework layer, layer and runtime system linux core layer.1. ApplicationAndroid together with a set of core application packages distributed with the application package including email client, SMS Short Message program, calendar, maps, browser, contact management programs. All applications are written using JAVA.2. Application FrameworkDevelopers also have full access to the core application framework API uses. The application architecture simplifies the reuse of components; any application can publish its function blocks and any other application can use it publish function blocks (but must follow security restrictions framework). Similarly, the application reuse mechanism also allows users to easily replace the component.Hidden behind each application is a series of services and systems, including;* Rich and scalable view (Views), it can be used to build applications, which includes a list (lists), grid (grids), a text box (text boxes), buttons (buttons), and even an embeddable web browser device.* Content provider (Content Providers) allows applications to access data from another application (such as a contact database), or share their own data* Resource Manager (Resource Manager) to provide access to non-code resources such as localized strings, graphics, and layout file (layout files).* Notification Manager (Notification Manager) allows applications to display a custom message in the status bar.* Activity Manager (Activity Manager) to manage the application lifecycle and provides common navigation retract function.For more details and how to write an application from scratch, refer to how to write an Android application.3. The system runtime1) LibraryAndroid contains some C / C + libraries, which can be different Android system components. They provide services through the Android application framework for developers. The following are some of the core library:* System C library - a BSD to inherit from the standard C system library (libc), which is designed for embedded linux based devices customized.* Media Libraries - based on PacketVideo OpenCORE; The library supports many popular audio and video format playback and recording, support still image files. Encoding formats including MPEG4, H.264, MP3, AAC, AMR, JPG, PNG.* Surface Manager - display management subsystem, and a plurality of applications provides seamless integration of 2D and 3D layers.* LibWebCore - a new web browser engine used to support the Android browser and an embeddable web view.* SGL - the underlying 2D graphics engine* 3D libraries - based on OpenGL ES 1.0 APIs to achieve; the library can use hardware 3D acceleration (if available) or the use of highly optimized 3D software acceleration.* FreeType - bitmap (bitmap) and vector (vector) font.* SQLite - a for all applications available, powerful lightweight relational database engine.2) Android RuntimeAndroid includes a core library, the library provides most of the core functionality JAVA programming language core library.Every Android application runs in its own process to run, have a separate instance of the Dalvik virtual machine. Dalvik is designed as a device can efficiently run multiple virtual systems. Dalvik virtual machine (.dex) of Dalvik executable file, the file format for the small memory usage optimized. While the virtual machine is register, all the classes are compiled via the JAVA-based compiler, and then through the SDK dx tool transforming into .dex format executed by the virtual machine.Dalvik VM relies on some of the linux kernel functions, such as thread and mechanisms underlying memory management mechanism.4.Linux kernelAndroids core system services rely on the Linux 2.6 kernel, such as security, memory management, process management, network stack, and driver model. Linux kernel also as an abstraction layer between the hardware and software stack.android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。1.应用程序Android会同一系列核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。2.应用程序框架开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。隐藏在每个应用后面的是一系列的服务和系统, 其中包括; * 丰富而又可扩展的视图(Views),可以用来构建应用程序, 它包括列表(lists),网格(grids),文本框(text boxes),按钮(buttons), 甚至可嵌入的web浏览器。 * 内容提供器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据 * 资源管理器(Resource Manager)提供 非代码资源的访问,如本地字符串,图形,和布局文件( layout files )。 * 通知管理器 (Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。 * 活动管理器( Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。有关更多的细节和怎样从头写一个应用程序,请参考 如何编写一个 Android 应用程序.3.系统运行库1)程序库Android 包含一些C/C+库,这些库能被Android系统中不同的组件使用。它们通过 Android 应用程序框架为开发者提供服务。以下是一些核心库: * 系统 C 库 - 一个从 BSD 继承来的标准 C 系统函数库( libc ), 它是专门为基于 embedded linux 的设备定制的。 * 媒体库 - 基于 PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。 * Surface Manager - 对显示子系统的管理,并且为多个应用程序提 供了2D和3D图层的无缝融合。 * LibWebCore - 一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。 * SGL - 底层的2D图形引擎 * 3D libraries - 基于OpenGL ES 1.0 APIs实现;该库可以使用硬件 3D加速(如果可用)或者使用高度优化的3D软加速。 * FreeType -位图(bitmap)和矢量(vector)字体显示。 * SQLite - 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。2)Android 运行库Android 包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dal

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论