freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于android的手機通訊協(xié)議應(yīng)用研究與實現(xiàn)(編輯修改稿)

2025-06-23 18:06 本頁面
 

【文章內(nèi)容簡介】 信息。 短信息的常用編碼模式有Text模式和PDU模式[25]。而在Android系統(tǒng)中 蘭州大學(xué)碩士學(xué)位論文 手機終端 短信服務(wù) 中心 手機終端 圖2.2短信服務(wù)過程 用的是PDU模式。為此文章中僅討論PDU模式。PDU是指協(xié)議通訊單元,它規(guī)定 了數(shù)據(jù)中除了用戶發(fā)送的信息外,應(yīng)該包含的字段,而且規(guī)定字段中每個數(shù)據(jù)位 為0或為l所代表的意義。PDU編碼是十六進制的。從終端設(shè)備發(fā)送出去的PDU 編碼包含了大量的信息,系統(tǒng)通過這些信息來完成短信息服務(wù)的全過程。 在通訊協(xié)議的實際應(yīng)用中,短信息應(yīng)用程序必須把用戶輸入的短信息進行 PDU編碼,補全其他字段的內(nèi)容,利用AT命令把數(shù)據(jù)發(fā)送給基帶,然后基帶與 短信服務(wù)中心進行交互。當(dāng)獲得短信息時,應(yīng)用程序?qū)?shù)據(jù)進行解碼,獲取信息, 并顯示給用戶。 2.2.6手機連接互聯(lián)網(wǎng)絡(luò) GPRS(通用分組無線服務(wù))技術(shù)是一種分組交換數(shù)據(jù)處理技術(shù)[26]。使用 GPRS,GSM系統(tǒng)能夠提供高效、穩(wěn)定的連接,并且這種連接是端到端的、廣域的 無線IP連接。GPRS通過分組的方式,讓多個用戶使用同一條信道。當(dāng)用戶需要 傳輸數(shù)據(jù)時,將會在時間片內(nèi)占據(jù)整個信道。那么,用戶就可以利用信道中所有 可用的帶寬,獲得高效、穩(wěn)定的數(shù)據(jù)傳輸。 實現(xiàn)手機上網(wǎng),比較常用的方法有兩種。第一種是使用AT命令來接入GPRS 網(wǎng)?;鶐У墓?yīng)商會提供實現(xiàn)TCP/IP協(xié)議的AT命令集,方便開發(fā)人員處理數(shù)據(jù) 流程。相關(guān)的AT命令的組合,可以實現(xiàn)各種功能,如設(shè)置工作環(huán)境,建立和關(guān) 閉TCP連接,建立和關(guān)閉UDP連接,設(shè)置工作端口,獲?。桑械刂罚瑐鬏敂?shù)據(jù), 檢查連接狀態(tài)等等。這種方法把工作過程分為命令模式和數(shù)據(jù)模式。當(dāng)處理上網(wǎng) 業(yè)務(wù)時,要切換到數(shù)據(jù)模式,通話的時候要切換到命令模式。模式的不斷切換, 要注意的情況很多很復(fù)雜,不利于實現(xiàn)應(yīng)用程序與硬件的交互,而且還會影響效 率。 第二種方法是利用基帶提供的多路復(fù)用功能[27],虛擬出多個通道。例如命 14 蘭州大學(xué)碩士學(xué)位論文 令通道和數(shù)據(jù)通道。那么,通話和短信業(yè)務(wù)可以在命令通道中實現(xiàn),數(shù)據(jù)通道處 理GPRS上網(wǎng)的業(yè)務(wù)。兩者互相獨立,互不影響。上層應(yīng)用不需要知道通道中的 數(shù)據(jù)如何被傳輸?shù)交鶐?,而響?yīng)的消息又是怎樣分發(fā)到合適通道的。上層應(yīng)用只 需要在對應(yīng)的通道中進行讀寫就可以了。然而,在底層實現(xiàn)中,我們要根據(jù)相關(guān) 的協(xié)議,實現(xiàn)數(shù)據(jù)的傳輸和分發(fā)。另外,獲得數(shù)據(jù)通道后,系統(tǒng)需要利用PPP 協(xié)議[28]和IP協(xié)議來連接訪問網(wǎng)絡(luò)。 在實際的應(yīng)用中,我們用到開源的點對點協(xié)議服務(wù)程序pppd與網(wǎng)絡(luò)服務(wù)器 進行PPP協(xié)商。協(xié)商成功后,可以獲?。桑械刂?、域名服務(wù)器地址和網(wǎng)關(guān)地址等 信息。 15 蘭州人學(xué)碩士學(xué)位論文 第3章Android平臺通訊架構(gòu) 通過前面的介紹,讀者應(yīng)該對于手機GSM網(wǎng)絡(luò)有了一定的認(rèn)識,了解了相關(guān) 的通訊協(xié)議,以及了解應(yīng)用協(xié)議實現(xiàn)通訊功能的相關(guān)過程與方法。而我們最終的 目的是在Android平臺中運用這些通訊協(xié)議,實現(xiàn)通話,短信服務(wù),GPRS上網(wǎng) 等功能。本章中,我們將會簡單的闡述Android系統(tǒng)的架構(gòu),了解Android系統(tǒng) 的一些概念,然后詳細(xì)的介紹Android開放的代碼中勾勒出來的通訊架構(gòu)。因為 Android中與通信相關(guān)的開放代碼是針對模擬器來實現(xiàn)的,所以直接運用開源的 代碼是不能在硬件平臺上實現(xiàn)通訊功能。另一方面,由于Android沒有考慮各種 硬件平臺的接口資源,在實際應(yīng)用中,可能會造成資源沖突。為此,我們將結(jié)合 硬件的特性,對架構(gòu)進行適當(dāng)?shù)男薷模岢鲂碌耐ㄓ嵓軜?gòu)。 3.1 Android架構(gòu)簡述 Android架構(gòu)包括應(yīng)用程序,中間件、Linux內(nèi)核。Android架構(gòu)如圖3.1 所示。應(yīng)用程序的實現(xiàn)是基于Java語言,但與標(biāo)準(zhǔn)的Java ME[29]語言有不同。 這是因為Android有自己專用的Java虛擬機,而且開發(fā)應(yīng)用程序時必須用到 Android系統(tǒng)自帶的Java類庫。在Java ME環(huán)境中生成的字節(jié)碼是不能被Android 系統(tǒng)的Java虛擬機所解析。應(yīng)用程序?qū)影▋蓚€部分,一是應(yīng)用程序包,主要 負(fù)責(zé)與用戶之間的交互,是程序的主體界面;另一個是應(yīng)用程序框架,提供系統(tǒng) 中可用的所有應(yīng)用程序接口。運用這些接口,應(yīng)用程序可以訪問硬件資源。 雖囹 圖3.1Pmdmid架構(gòu) 中間件運行在應(yīng)用程序和內(nèi)核之間,是兩者溝通的橋梁,支持各種標(biāo)準(zhǔn)協(xié)議 和接口,滿足各種應(yīng)用的需求。它主要包括各種系統(tǒng)函數(shù)庫、Android的Java 16 蘭州人學(xué)碩士學(xué)位論文 虛擬機以及硬件抽象層。硬件抽象層與應(yīng)用程序框架以及設(shè)備驅(qū)動相關(guān)聯(lián),實現(xiàn) 應(yīng)用程序框架與設(shè)備驅(qū)動之間應(yīng)用程序接口的轉(zhuǎn)換。硬件抽象層以.SO動態(tài)庫文 件的形式存在。 Android的Linux內(nèi)核掌管著存儲器,進程管理,文件系統(tǒng)管理,系統(tǒng)安全, 網(wǎng)絡(luò)堆棧等資源。然而,Android的Linux內(nèi)核是標(biāo)準(zhǔn)Linux內(nèi)核的變種。它為 了適應(yīng)商業(yè)應(yīng)用要求,把設(shè)備驅(qū)動從內(nèi)核空間移動到用戶空間,而且重寫了內(nèi)核 中的一些功能。 3.2 Android通訊架構(gòu)分析 3.2.1架構(gòu)描述 Android通訊架構(gòu)是Android平臺架構(gòu)的子集,符合系統(tǒng)的設(shè)計思路。 Android通訊架構(gòu)如圖3.2所示。 在Android的通訊中,主要用到的應(yīng)用程序就是通話、短信息服務(wù)和數(shù)據(jù)業(yè) 務(wù)(GPRS上網(wǎng))。通話應(yīng)用程序提供撥號界面,通訊記錄,電話本等。短信息服 務(wù)界面中顯示了手機上存儲的所有短信息,以及提供消息編寫和發(fā)送操作的圖形 界面。 在應(yīng)用程序框架層,由通訊資源管理器(Telephony Manager)管理所有的 通訊功能。GSM通訊資源管理器是通訊資源管理器的子集,用來管理與GSM網(wǎng)絡(luò) 相關(guān)的電話功能。在這一層中,我們還需要應(yīng)用各種通訊協(xié)議的規(guī)范,對數(shù)據(jù)進 行編碼和解碼。以短信息服務(wù)為例,用戶在應(yīng)用主界面中輸入數(shù)據(jù),發(fā)送短信息。 GSM通訊資源管理器獲取數(shù)據(jù)后,把目的地址、用戶數(shù)據(jù)等信息按PDU模式構(gòu)造 數(shù)據(jù)包,然后發(fā)送給下一層。當(dāng)GSM通訊資源管理器從下層獲取到消息時,它將 按照協(xié)議對消息進行解包,提取有用的信息,傳輸給應(yīng)用程序,展示給用戶。 另外,數(shù)據(jù)業(yè)務(wù)在應(yīng)用程序?qū)邮且詾g覽器作為與用戶交互的界面。當(dāng)用戶設(shè) 定啟動GPRS上網(wǎng)業(yè)務(wù)時,系統(tǒng)就會進行撥號,然后利用點到點協(xié)議服務(wù)程序與 網(wǎng)絡(luò)服務(wù)器連接,獲?。桑械刂?。最后瀏覽器就可以通過函數(shù)調(diào)用,訪問內(nèi)核, 利用TCP/IP網(wǎng)絡(luò)協(xié)議棧,通過網(wǎng)絡(luò)設(shè)備節(jié)點訪問網(wǎng)絡(luò)資源。 在硬件層,基帶提供了一個通訊接口(一般是串口)作為與上層聯(lián)系的通道。 17 蘭州大學(xué)碩士學(xué)位論文 應(yīng)用程序 通話 短信息服務(wù) 數(shù)據(jù)業(yè)務(wù) 』 …..j口[ 應(yīng)用程序框架 通用通訊管理器 GSM網(wǎng)絡(luò)通訊管理器 ‘丫 弋, Il Socket 中間件(無線接口 ;) 無線接口監(jiān)控程序(did) 硬件抽象層fil.so n’ Linux內(nèi)核 1CP衄 PPP 硬件 1|晰te 基帶 圖3.2 Android通訊架構(gòu) t Read上層應(yīng)用通過調(diào)用Linux內(nèi)核的系統(tǒng)函數(shù)read 0和write 0對串口讀寫,完成與 基帶的通訊過程。 然而,在數(shù)據(jù)業(yè)務(wù)的實現(xiàn)中,Android不是采用AT命令規(guī)范對數(shù)據(jù)進行封 裝,而是采用讀寫基帶的通訊接口的方法。但是,在通話和短信息服務(wù)的實現(xiàn)過 程中,系統(tǒng)已經(jīng)把基帶的通訊接口分配出去了,這樣造成數(shù)據(jù)業(yè)務(wù)啟動時,又需 要請求使用同一個串口,資源發(fā)生沖突。這個問題將在下文給出解決方案。 3.2.2無線接口層 在Android的通信中,中間件部分又稱為無線接口層。它是Android通訊架 構(gòu)中的關(guān)鍵。這是因為無線接口層實現(xiàn)了對硬件基帶的抽象,向上提供各種功能 的操作接口。無線接口層中各種功能的實現(xiàn),實際上就是利用不同的AT命令的 組合,對基帶進行初始化配置,讓它按照相關(guān)協(xié)議進行工作;另一方面,就是迸 18 蘭州人學(xué)碩士學(xué)位論文 行數(shù)據(jù)的傳輸以及應(yīng)用程序接口的轉(zhuǎn)換。 無線接口層這一層是和硬件密切相關(guān)的,不同供應(yīng)商提供的基帶AT指令的 規(guī)范存在差異,而且附帶一些屬于自有功能的AT命令集合。為此,Android平 臺僅僅針對標(biāo)準(zhǔn)AT指令規(guī)范,構(gòu)建了一個無線接口層。在實際的開發(fā)中,必須 要根據(jù)硬件平臺重新改寫。Android中的無線接口層結(jié)構(gòu)如圖3.3所示。 GSM網(wǎng)絡(luò)通訊管理器 RIL.java /\ socket 節(jié) rild 上觚tion ca168。T 硬件抽象層ril.SO J L res?。睢? J I solicited fequest ..respnnRe 1 r unsolicited .JPSpon毆 串口 基帶 圖3.3無線接口層的結(jié)構(gòu)圖 圖3.3中虛線部分為Android的無線接口層,它包括無線接口層監(jiān)控程序 rild以及通訊功能的硬件抽象層ril.SO(以下簡稱ril)。無線接口層監(jiān)控程序 是GSM網(wǎng)絡(luò)通訊管理器和ril溝通的橋梁。無線接口層監(jiān)控程序通過Socket[30] 通訊方法與GSM網(wǎng)絡(luò)通訊管理器進行消息的發(fā)送和接收,巧妙地解決了進程間的 通訊的問題。Socket的服務(wù)器端在無線接口層監(jiān)控程序中構(gòu)建,客戶端在GSM 網(wǎng)絡(luò)通訊管理器中的RIL.java文件中建立。當(dāng)應(yīng)用程序調(diào)用RIL.java中提供的 應(yīng)用程序接口時,進程會把數(shù)據(jù)從Socket通道中發(fā)送給rild。rild根據(jù)傳輸過 來的數(shù)據(jù),調(diào)用匹配的函數(shù)接口function call,讓硬件抽象層ril來進行對應(yīng) 的處理。從硬件抽象層返回消息,稱作response,即響應(yīng)。rild會把返回的數(shù) 據(jù)通過Socket通道傳送給通訊管理器。 在Android中,我們把主動向基帶發(fā)送請求的操作稱之為request,例如撥 19 蘭州大學(xué)碩士學(xué)位論文 號,呼叫轉(zhuǎn)移、發(fā)送短消息等。響應(yīng)request的消息稱為sol icited response, 表示主動請求的響應(yīng)消息。另外,在Android中,我們把基帶主動上報的消息稱 為unsolicited response,表示非請求的響應(yīng)。例如來電,接收到短信息,短 信消息報告等等。在這里,主動請求,主動請求的響應(yīng)消息以及非請求的響應(yīng), 都是AT命令的集合。在硬件抽象層,數(shù)據(jù)的處理需要按照AT命令的規(guī)范進行, 做到把數(shù)據(jù)封裝到AT命令中,再傳輸給與基帶通信的串口。串口回來的數(shù)據(jù), 需要從AT指令中解包,最后傳輸給上層。因為AT指令就是大部分通信協(xié)議的載 體,所以這樣操作才能做到真正應(yīng)用通訊協(xié)議,才能與基帶無縫連接,無縫通信。 通過對Android無線接口層代碼的研究,我們可以發(fā)現(xiàn)Android提供了一個 虛擬的ril。它模擬了實際硬件的功能,針對應(yīng)用程序的函數(shù)調(diào)用,進行合適的 操作。在Android的模擬器中,用到的就是這種功能。為此,在開發(fā)過程中,要 注意兩者之間的區(qū)別,把虛擬ril去除。 3.3新的架構(gòu)的設(shè)計 上文提到Android在處理通話和GPRS上網(wǎng)時,會產(chǎn)生資源的沖突。解決沖 突的辦法有三個,一是增加一個基帶,二是修改Android中關(guān)于GPRS的實現(xiàn)方 法,使用AT命令規(guī)范進行封裝,三是運用多路復(fù)用協(xié)議,虛擬出多個串口資源。 基帶作為手機設(shè)計方案中必備的關(guān)鍵部件,成本相對其他部件來}兌,比較高昂。 增加一個基帶,必然會大大提高手機產(chǎn)品的出廠價,造成產(chǎn)品競爭力低下,而且 利潤空間少。這個方法是一定不會使用的。 另外,修改Android平臺中關(guān)于GPRS的實現(xiàn)方法,這個途徑雖然可行,但 是工作量很龐大且復(fù)雜。在Android平臺上運行的應(yīng)用程序,都可以利用現(xiàn)有的 應(yīng)用程序框架訪問網(wǎng)絡(luò)資源。為此,應(yīng)用程序的用戶必然會特別關(guān)注數(shù)據(jù)的傳輸 效率。我們已經(jīng)知道,使用AT命令實現(xiàn)GPRS,需要不斷的切換數(shù)據(jù)模式和命令 模式,這樣會造成數(shù)據(jù)傳輸?shù)牡托?。有時候,用戶很難接受這種情況。 運用多路復(fù)用協(xié)議,虛擬出多個串口資源提供系統(tǒng)使用,這個方法比較符合 Android系統(tǒng)的需要。串口多路復(fù)用方法的實現(xiàn)有兩個關(guān)鍵點,一是串口的虛擬 化的實現(xiàn);二是多路復(fù)用協(xié)議的實現(xiàn)。這兩個關(guān)鍵點的實現(xiàn)我們將在下一章節(jié)相 關(guān)的部分進行具體分析。 蘭州大學(xué)碩士學(xué)位論文 文章中選擇多路復(fù)用技術(shù)來解決資源沖突的問題。在接下來的部分,我將具 體分析串口多路復(fù)用協(xié)議在系統(tǒng)中的應(yīng)用。 3.3.1串口多路復(fù)用協(xié)議 多路復(fù)用[31]是指在一條通訊信道中,實現(xiàn)多路信號或者多種數(shù)據(jù)流并行傳 輸?shù)募夹g(shù)。運用多路復(fù)用技術(shù),多條低速的數(shù)據(jù)流可以合并到同一條高速的通訊 信道中,以此來避免產(chǎn)生高額的器件成本。 在手機平臺中,主要的通信部件是基帶。而基帶僅僅提供了一個串口讓系統(tǒng) 使用。為了使得在一條串行接口中同時存在多個會話,如語音信號、短信息服務(wù)、 GPRS數(shù)據(jù)業(yè)務(wù)等,供應(yīng)商在基帶中實現(xiàn)了串口多路復(fù)用協(xié)議。在開發(fā)中,用戶 需要在一條物理串口接口上實現(xiàn)多個數(shù)據(jù)鏈路連接,也就是說,在系統(tǒng)中以此串 口為主,虛擬出多個虛擬串口,供上層應(yīng)用讀寫。串口多路復(fù)用模型如圖3.4 所示。 曰 曰 日 囂眨 目一 日一 曰=日一燃 日一 日、\ 、————————————————、-,————————————————/ 多路復(fù)用監(jiān)控程序 圖3.4串口多路復(fù)川模型 1,2,3分別表示3種不同信道中的數(shù)據(jù)流,ttySO是與基帶通訊的串口,
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1