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

正文內容

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

2025-06-23 18:06 本頁面
 

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