王光陣
上海與德通訊技術(shù)有限公司,上海 200233
智能手機(jī)研發(fā)流程
王光陣
上海與德通訊技術(shù)有限公司,上海 200233
隨著時(shí)代的發(fā)展,通信技術(shù)以前所未有的速度迅猛發(fā)展,智能手機(jī)得以持續(xù)開(kāi)發(fā)。基于此,介紹了智能手機(jī)的軟件硬件平臺(tái)。
通信技術(shù);手機(jī)研發(fā);Android
如今是一個(gè)高速發(fā)展的信息時(shí)代,移動(dòng)通信技術(shù)發(fā)展尤其迅猛。隨著人們對(duì)通信需求的不斷提高,為實(shí)現(xiàn)人們?cè)谌魏螘r(shí)間(Whenever),任何地點(diǎn)(Wherever)都可以以任何方式(Whatever)與其他任何人(Whomever)實(shí)現(xiàn)信息交換[1],以及滿足人們對(duì)語(yǔ)音、數(shù)據(jù)等多種業(yè)務(wù)并存的多媒體通信的需求,智能手機(jī)脫穎而出。研發(fā)技術(shù)人員應(yīng)充分認(rèn)識(shí)到手機(jī)開(kāi)發(fā)流程的意義和重要性。
1.1 Android的構(gòu)架綜述
Android是基于Linux平臺(tái)的開(kāi)源手機(jī)操作系統(tǒng)。該平臺(tái)由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組成,號(hào)稱是首個(gè)為移動(dòng)終端打造的真正開(kāi)放和完整的移動(dòng)軟件,所以 Android是很多開(kāi)發(fā)公司的首選。Android平臺(tái)支持各種先進(jìn)的網(wǎng)絡(luò)、繪圖、3D處理能力,可以用來(lái)提供更好的使用者體驗(yàn)。Android系統(tǒng)是由操作系統(tǒng)(Linux)、中間件以及核心應(yīng)用程序組成的軟件棧(softwarestack)。通過(guò)AndroidSDK提供的API以及相應(yīng)的開(kāi)發(fā)工具,程序員可以很方便地開(kāi)發(fā)Android平臺(tái)上的應(yīng)用程序。Android是一個(gè)包括操作系統(tǒng),中間件以及一些重要應(yīng)用程序的專門(mén)針對(duì)移動(dòng)設(shè)備的層次結(jié)構(gòu)的軟件集[2]。作為一個(gè)層次結(jié)構(gòu)的軟件集,一定有一個(gè)層次的系統(tǒng)構(gòu)架,圖1為Android的構(gòu)架圖:

圖1 Android的構(gòu)架圖
可以看出,該系統(tǒng)從下到上包括 Linux內(nèi)核層、Libraries和運(yùn)行時(shí)環(huán)境層、應(yīng)用程序框架層、應(yīng)用程序?qū)铀膶咏Y(jié)構(gòu)[3]。在 Android構(gòu)架中,底層的 Linux內(nèi)核則采用的是C語(yǔ)言,libraries采用C或者C++,但是應(yīng)用程序?qū)印?yīng)用程序框架層和運(yùn)行時(shí)環(huán)境中的Android核心庫(kù)采用 Java語(yǔ)言編寫(xiě),也就是說(shuō),Android雖然底層用的是C或者C++,但是應(yīng)用程序的開(kāi)發(fā)則用的是Java。之所以采用這樣的模式,可能是因?yàn)橄鄬?duì)于C或者C++,Java的開(kāi)發(fā)周期更短。
1.2 內(nèi)核層
Android作為一個(gè)開(kāi)源的操作系統(tǒng),其內(nèi)核采用了同樣開(kāi)源的、被業(yè)界認(rèn)為是相當(dāng)穩(wěn)定的 Linux,其中Linux內(nèi)核包括以下功能模塊:安全(Security)、存儲(chǔ)器管理(Memory Management)、進(jìn)程管理(Process Management)、網(wǎng)絡(luò)堆棧(Network Stack)、驅(qū)動(dòng)程序模型(Driver Model)等,另外也在給其上層的軟件和下層硬件間建立起一個(gè)抽象層(Abstraction Layer)。如Android在Linux2.6的內(nèi)核上修改,使Linux更加適應(yīng)ARM平臺(tái)。
(1)增加一個(gè)基于ARM構(gòu)架的Gold Fish平臺(tái)作為虛擬機(jī)的虛擬CPU;
(2)增加了YAFFS2FLASH系統(tǒng)文件;
(3)增加了Android相關(guān)的驅(qū)動(dòng)。例如Android的IPC(進(jìn)程間通信機(jī)制)binder,使用這個(gè)能使運(yùn)行的進(jìn)程為其他進(jìn)程提供服務(wù);Android的日志系統(tǒng)(Logger)和內(nèi)存控制臺(tái)(Ram_console);同時(shí)Google還重寫(xiě)了電源管理(Power);
(4)增加了新的共享方式Ashmem(匿名共享內(nèi)存),多個(gè)應(yīng)用程序可以這種方式共享內(nèi)存獲取信息,為進(jìn)程間提供大量共享內(nèi)存,同時(shí)為內(nèi)核提供回收和管理這個(gè)內(nèi)存的機(jī)制。
2.1 手機(jī)套片
手機(jī)套片主要指基帶芯片、Memory、RF芯片、無(wú)線芯片和電源管理芯片等。目前手機(jī)芯片平臺(tái)有很多,可以依據(jù)不同的需求選擇不同的平臺(tái)。
2.2 其他外圍器件其他外圍器件主要是電阻、電容、電感、傳感器等,為了實(shí)現(xiàn)具體功能搭配套片使用。[3]
2.3 項(xiàng)目流程
根據(jù)輸出的產(chǎn)品定義書(shū),選擇器件,搭建原理圖電路:
(1)堆疊確認(rèn);
(2)根據(jù)輸出DXF文件導(dǎo)入PADS工具進(jìn)行擺件布線;
(3)走線檢查、主板仿真;
(4)輸出各種文件如發(fā)板文件、夾具文件等;
(5)修改調(diào)試解Bug。
手機(jī)開(kāi)發(fā)流程具體表現(xiàn)為市場(chǎng)需求、產(chǎn)品立項(xiàng)、系統(tǒng)設(shè)計(jì)、EVT、DVT、PVT、MP結(jié)案清庫(kù)存等階段,在出問(wèn)題較多的項(xiàng)目里程碑節(jié)點(diǎn)尤其需要注意,千萬(wàn)小心。
本文主要介紹智能手機(jī)研發(fā)流程,從軟硬件平臺(tái)著手流程概況,還需要在實(shí)際的具體工作中不斷優(yōu)化,加以完善。
[1]韋惠民,李國(guó)民.移動(dòng)通信技術(shù)[M].北京:人民郵電出版社,2010.
[2]吳偉陵.移動(dòng)通信中的關(guān)鍵技術(shù)[M].北京:北京郵電大學(xué)出版社,2013.
[3]周緒宏.智能手機(jī)系統(tǒng)軟件設(shè)計(jì)與研究[D].上海:上海交通大學(xué),2007.
The process of smart phones’ development
Wang Guangzhen
Shanghai Wind Communication Technologies Co., Ltd., Shanghai 200233
with the development of the times, communication technology has developed at an unprecedented speed, and smart phones have been continuously developed. Based on this, the software and hardware platform of smart phone is introduced.
communication technology; mobile phone research and development; Android
TP311.52
A
1009-6434(2017)3-0033-02