免费智能真题库 > 历年试卷 > 网络工程师 > 2021年上半年 网络工程师 上午试卷 综合知识
  第4题      
  知识点:   Android   操作系统
  关键词:   操作系统   开发   开源   移动设备        章/节:   操作系统知识       

 
基于Android的移动端开发平台是一个以( )为基础的开源移动设备操作系统
 
 
  A.  Windows
 
  B.  Unix
 
  C.  Linux
 
  D.  DOS
 
 
 

 
  第11题    2024年上半年  
   29%
在Linux 系统中,鼠标,键盘等以字节位单位进行输入输出的设备属于(11)。 
  第6题    2022年下半年  
   37%
下列功能模块中,不属于操作系统内核功能模块的是()。
  第4题    2020年下半年  
   31%
下列操作系统中,不是基于linux内核的是( )。
   知识点讲解    
   · Android    · 操作系统
 
       Android
        Android是基于Linux开放性内核的操作系统,是Google公司在2007年11月5日发布的手机操作系统。Android早期由原名为Android的公司开发,Google公司在2005年收购Android公司后,继续对Android系统进行开发和运营。
               Android系统的优势
               Android系统目前的市场占有率仍在急剧提高,这主要得益于其以下优势。
               . 平台的开放性允许任何厂商加入,使其拥有了更多的开发者,新的应用和创意可以不断地出现。
               . 摆脱了运营商的束缚,让手机更加贴近互联网。
               . 应用程序都是基于Java开发的,Java具有一次编写、四处运行的跨平台性,实现了在所有的Android设备中运行,真正做到了硬件无关性,降低了开发者的负担。
               . 提供了标准的API和SDK开发包,手机厂商可以根据需要自行开发或者使用已有的程序,从而打造出富有特色的Android平台。
               Android的体系架构
               Android采用了软件堆层的架构,一共分为四层,自下向上分别是Linux内核层、系统运行库层、应用框架层和应用层,如下图所示。
               
               Android体系结构
               ①Linux内核层。
               Android基于Linux 2.6内核提供系统的核心服务,如安全性、内存管理、进程管理、网络协议栈和驱动模型。内核层的驱动包括显示驱动、键盘驱动、Flash内存驱动、照相机驱动、音频驱动、蓝牙驱动、Wi-Fi驱动、Binder IPC驱动、Power Manager驱动。其中,Binder IPC驱动用来提供进程之间通信的功能。
               系统运行库层主要包括两个部分,一是程序库(Libraries),二是Android运行库(RunTime)。程序库通过Android应用程序框架为开发者提供服务,主要包括以下几种。
               . 系统C库。从BSD继承而来的标准C系统函数库,是专门为基于嵌入式的Linux设备制定的。
               . 媒体库。该库支持多种常用的音频、视频格式的回放和录制,同时支持静态图像文件。编码格式包括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。位图和矢量字体显示。
               . SQLite。轻量级的关系型数据库。
               所有Android应用程序都运行在它自己的进程中,该进程是一个Dalvik虚拟机的实例。Dalvik虚拟机是由Google公司自主研发的,它被设计成一个设备,可以同时高效地运行多个虚拟系统。Dalvik在保证API兼容的同时,针对移动手机进行了优化,以占用更小的资源,提高了运行效率。Dalvik虚拟机依赖于底层Linux内核提供的功能,如线程机制和内存管理机制。
               Android应用程序的开发基于应用程序框架(Application Framework)和组件,开发人员拥有同核心应用程序一样的APIs访问权限。应用程序后面是一系列的服务和系统,其中包括以下几种。
               . 视图(Views)。构造应用程序的视图部分,包括列表(Lists)、文本框(Textboxes)、按钮(Buttons)等。
               . 内容提供器(Content Providers)。提供一种实现数据互访和共享的机制。
               . 资源管理器(Resources Marager)。负责管理非代码的访问,如本地字符串、图片资源及涉及布局的XML文件。
               . 通知管理器(Notification Manager)。用于将提示信息显示在状态栏上。例如,当收到短信的时候在状态栏上显示新信息。
               . 活动管理器(Activity Manager)。用于管理应用程序的生命周期,并提供应用页面的退出机制。
               ②应用程序(Application)。
               Android的应用程序通常涉及用户界面和用户交互。Android本身提供了桌面(Home)、联系人(Contact)、电话(Phone)和浏览器(Browsers)等众多的核心应用。所有核心应用都使用Java编写,开发者可以使用应用程序框架层的API实现自己的程序,这也是Android开源优势的体现。
               从总体架构上看,Android平台显示出了自身的特点,如集成了WebKit浏览器、Dalvik虚拟机等模块。这些模块的应用也成为Android开发的焦点,开发者可以利用Android提供的模块接口开发出具有特色的应用程序。
 
       操作系统
        编写嵌入式软件有两种选择:一是自己编写内核;二是使用现成的操作系统。如果嵌入式软件只需要完成一项非常小的工作,例如在电动玩具、空调中,就不需要一个功能完整的操作系统。但如果系统的规模较大、功能较复杂,那么最好还是使用一个现成的操作系统。可用于嵌入式系统软件开发的操作系统有很多,但关键是如何选择一个适合开发项目的操作系统,可以从以下几点进行考虑:
        (1)操作系统提供的开发工具。有些实时操作系统只支持该系统供应商的开发工具,因此,还必须从操作系统供应商处获得编译器、调试器等;而有的操作系统应用广泛,且有第三方工具可用,因此选择的余地比较大。
        (2)操作系统向硬件接口移植的难度。操作系统到硬件的移植是一个重要的问题,是关系到整个系统能否按期完工的一个关键因素。因此,要选择那些可移植性程度高的操作系统,以避免因移植带来的种种困难。
        (3)操作系统的内存要求,有些操作系统对内存有较大要求。
        (4)操作系统的可剪裁性、实时性能等。
   题号导航      2021年上半年 网络工程师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第4题    在手机中做本题