开发者社区> cometwo123> 正文

Google手机Android操作系统面试题

简介:
+关注继续查看

    Google 手机 Android操作系统面试题 
 

  1﹑Android 手机操作系统的四层架构? 
 
    架构框架以此从上到下: 
 
   1.Applications   (应用程序(应用层)); 
 
   Android 会同一系列核心应用程序包一起发布,该应用程序包包括 email 客户端,SMS
短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用 JAVA 语
言编写的。 
 
   2.Application FrameWork    (应用程序扩展层(框架)); 
 
  由于 Android 的手机操作系统是,基于 Liunx 2.6 系统之上封装而成。所以开发人员可也
以直接访问核心程序所使用的API框架,该核心应用程序的API框架设计简化了组件的重用,
任何一个核心应用程序(模块)都暴露出它的功能作用,并且其他应用程序也都可以使用该核
心应用程序(模块)的功能(不过的遵守该核心应用程序框架的安全性限制)。同样,该应用
程序的重用机制也使用户方便使用应程序的相关组件。 
 
   API 框架隐藏的核心应用程序是一系列的应用程序的服务和系统应用,其中包括如下:  
 
  (Android 手机中的 View 是最基本的一个 UI 类) 
 
    丰富而又可扩展的视图(手机界面所显示的组件(Activity上所显示的))组件,可以用
来构建应用程序  如:(视图)Views,  网格(grids),  文本框(text boxes),  按钮(button),  放
置图片区(imageview),文本编辑区  (edittext),  文本显示区(textview), 
 
   3.Android RunTime Libraries   (Android 系统运行库); 
 
   4.Liunx Kernel   (Android  系统最底层核心系统 Liunx) 
 
Android  的核心系统服务依赖于 Liunx 2.6 内核,如系统安全,内存管理,进程管理,网
络协议栈和驱动模型。Liunx 内核也同时作为硬件和软件栈之间的抽象层。 
  
  
 
   2、 Android dvm的进程和 Linux 的进程,  应用程序的进程是否为同一个概念 
 
   DVM 指 dalivk 的虚拟机。每一个 Android 应用程序都在它自己的进程中运行,都拥有
一个独立的 Dalvik 虚拟机实例。而每一个 DVM 都是在 Linux  中的一个进程,所以说可以
认为是同一个概念。 
 
   3、sim卡的 EF  文件有何作用 
 
   sim 卡的文件系统有自己规范,主要是为了和手机通讯,sim 本  身可以有自己的操作
系统,EF就是作存储并和手机通讯用的 
 
   4、嵌入式操作系统内存管理有哪几种,  各有何特性 
 
    页式,段式,段页,用到了 MMU,虚拟空间等技术 
 
   5、  什么是嵌入式实时操作系统, Android 操作系统属于实时操作系统吗? 
 
    嵌入式实时操作系统是指当外界事件或数据产生时,能够接受并以足够快的速度予以
处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并
控制所有实时任务协调一致运行的嵌入式操作系统。主要用于工业控制、  军事设备、  航空
航天等领域对系统的响应时间有苛刻的要求,这就需要使用实时系统。又可分为软实时和硬
实时两种,而 android 是基于 linux 内核的,因此属于软实时。 
 
   6、一条最长的短信息约占多少 byte? 
 
  中文 70(包括标点),英文 160,160 个字节 
 
   7、 android 中的动画有哪几类,它们的特点和区别是什么? 
 
    两种,一种是 Tween 动画、还有一种是 Frame 动画。Tween 动画,这种实现方式可以
使视图组件移动、放大、缩小以及产生透明度的变化;另一种 Frame 动画,传统的动画方
法,通过顺序的播放排列好的图片来实现,类似电影。 
 
   8、handler机制的原理 
    andriod 提供了 Handler  和 Looper  来满足线程间的通信。Handler  先进先出原则。
Looper类用来管理特定线程内对象之间的消息交换(Message Exchange)。 
 
   1)Looper:  一个线程可以产生一个 Looper 对象,由它来管理此线程里的 Message 
Queue(消息队列)。 
 
   2)Handler:  你可以构造 Handler 对象来与 Looper 沟通,以便 push 新消息到 Message 
Queue 里;或者接收 Looper从 Message Queue 取出)所送来的消息。 
 
   3) Message Queue(消息队列):用来存放线程放入的消息。 
 
   4)线程:UI thread  通常就是 main thread,而 Android 启动程序时会替它建立一个
Message Queue。 
 
   9、说说mvc 模式的原理,它在 android 中的运用 
 
   MVC(Model_view_contraller)”模型_视图_控制器”。 MVC 应用程序总是由这三个部
分组成。 Event(事件)导致 Controller改变 Model 或View,或者同时改变两者。只要 Controller
改变了 Models 的数据或者属性,所有依赖的 View 都会自动更新。类似的,只要 Controller
改变了 View,View会  从潜在的 Model 中获取数据来刷新自己。 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
ArrayList这样回答还拿不到offer?
这是我实习的第二个月。今天讲述的是ArrayList。大家肯定对这个很熟悉,比如日常开发过程中,不管是前后端分离开发还是不分离开发,都会利用接口调用SQL语句查询数据。查询到的结果是存入ArrayList里的。问题来了!
3 0
用惯了其他人的库,自己来实现一个动图图表生成工具,真香!
用惯了其他人的库,自己来实现一个动图图表生成工具,真香!
6 0
docker 简介和安装
Docker 的应用场景 • Web 应用的自动化打包和发布。 • 自动化测试和持续集成、发布。 • 在服务型环境中部署和调整数据库或其他的后台应用。 • 从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环
5 0
云起实验室第一期学习
云起实验室第一期学习
6 0
SLS日志服务
SLS日志服务
4 0
Fastjson 使用
fastjson 是阿里巴巴的开源 JSON 解析库,它可以解析 JSON 格式的字符串,支持将 Java Bean序列化为JSON字符串,也可以从 JSON 字符串反序列化到 JavaBean。 功能完备: 支持泛型,支持流处理超大文本,支持枚举,支持序列化和反序列化扩展。 下载 jar包 或者配置 maven 依赖:
3 0
R文档沟通|Dashboards入门(3)
前面推了两期有关dashboards的推文,可见:R文档沟通|Dashboards入门(1);R文档沟通|Dashboards入门(2)
5 0
五分钟学 | Flask 使用 JQuery 上传数据并展示在页面上
今天分享一个动态上传数据的知识点,我们知道,传统的通过 form 来上传文件,会导致 web 页面重新刷新,这样有些功能就无法实现了,比如说我当前页面存在某些表单,如果页面刷新,那么已经填写的表单就会丢失甚至重复提交等等问题。而 JQuery 可以很好的帮我们动态更新页面,实现不刷新页面就可以上传文件的功能,一起来看吧!
5 0
一个Web二级菜单的实现(俺新手随便写的)
任务描述 一、整体要求: 1、要求页面整洁、美观,与提供的页面效果图、结构保持一致,文字、背景的颜色不统一要求 2、要求HTML代码和CSS代码书写、命名符合规范 二、 具体要求
5 0
+关注
1030
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载