專利名稱:移動終端及其管理大容量存儲設備的方法
技術領域:
本發(fā)明涉及移動通訊領域,尤其涉及一種移動終端及其管理大容量存儲設備的方法。
背景技術:
智能手機已經(jīng)成為當今的主流手機,Android智能手機在市場上的份額不斷擴大,人們對智能手機的存儲容量也有了新的需求,目前Android 2. 2以上及Android4. 0以下智能手機操作系統(tǒng)在整體上僅支持一個SD卡大容量存儲設備,而不支持多個大容量存儲設備。因此,必須對現(xiàn)有Android智能手機進行改進。
發(fā)明內容
本發(fā)明的目的在于提供一種移動終端及其管理大容量存儲設備的方法,用于同時支持多個大容量存儲設備。一種移動終端,包括VOLD模塊和掛載服務模塊,VOLD模塊包括事件監(jiān)聽服務子模塊,用于判斷事件的物理分區(qū)和邏輯分區(qū)的標識是否匹配;如果匹配,修改對應的邏輯分區(qū)對象狀態(tài),并發(fā)消息給掛載服務模塊;掛載服務模塊接收消息后,對設備狀態(tài)進行解析,判斷掛載目錄是否為SD卡;如果為SD卡,則調用包更新服務,更新安裝包信息,發(fā)送掃描存儲設備消息,啟動掃描進程。進一步的,上述VOLD模塊還包括邏輯分區(qū)管理對象實例子模塊,用于對邏輯分區(qū)進行管理和操作;命令監(jiān)聽對象實例子模塊,用于監(jiān)聽接收掛載服務模塊對邏輯分區(qū)操作命令,調用邏輯分區(qū)管理對象實例模塊對設備進行操作,并返回操作結果;網(wǎng)絡連接管理對象實例子模塊,用于監(jiān)聽對存儲設備的操作事件,并將操作事件發(fā)送給掛載服務模塊;邏輯分區(qū)對象鏈表子模塊讀取配置文件創(chuàng)建邏輯分區(qū)對象鏈表,關聯(lián)邏輯分區(qū)管理對象,以對邏輯分區(qū)操作。進一步的,上述網(wǎng)絡連接管理對象實例子模塊還用于啟動套接字服務連接,并與掛載服務模塊建立長連接;命令監(jiān)聽對象實例子模塊還用于監(jiān)聽是否收到命令,如果收到命令,則分析命令,并調用邏輯分區(qū)管理對象實例子模塊,對設備進行掛載,卸載,格式化操作,并返回操作結果。進一步的,上述移動終端,還包括創(chuàng)建事件監(jiān)聽服務子模塊,用于監(jiān)聽內核發(fā)送來的操作存儲設備的事件;判斷設備路徑和分區(qū)路徑是否匹配;如果匹配,創(chuàng)建供VOLD管理的物理分區(qū)設備。進一步的,上述掛載服務模塊,還用于主動連接VOLD模塊,獲取VOLD模塊的設備列表狀態(tài),如果設備存在且未掛載,則發(fā)送掛載命令給VOLD模塊,完成設備的掛載。本發(fā)明還提供一種移動終端管理大容量存儲設備的方法,包括事件監(jiān)聽服務判斷事件的物理分區(qū)和邏輯分區(qū)的標識是否匹配;如果匹配,修改對應的邏輯分區(qū)對象狀態(tài),并發(fā)消息給掛載服務;掛載服務接收消息后,對設備狀態(tài)進行解析,判斷掛載目錄是否為SD卡;如果為SD卡,則調用包更新服務,更新安裝包信息,發(fā)送掃描存儲設備消息,啟動掃描進程。進一步的,上述移動終端管理大容量存儲設備的方法,還包括V0LD啟動;V0LD創(chuàng)建邏輯分區(qū)管理對象實例,用于對邏輯分區(qū)進行管理和操作;V0LD創(chuàng)建命令監(jiān)聽對象實例,用于監(jiān)聽接收掛載服務對邏輯分區(qū)操作命令,調用邏輯分區(qū)管理對象實例對設備進行操作,并返回操作結果;VOLD創(chuàng)建網(wǎng)絡連接管理對象實例,用于監(jiān)聽對存儲設備的操作事件,并將操作事件發(fā)送給掛載服務;V0LD讀取配置文件創(chuàng)建邏輯分區(qū)對象鏈表,關聯(lián)邏輯分區(qū)管理對象,以對邏輯分區(qū)操作。進一步的,上述移動終端管理大容量存儲設備的方法,還包括網(wǎng)絡連接管理對象實例啟動套接字服務連接,并與掛載服務建立長連接;命令監(jiān)聽對象實例監(jiān)聽是否收到命令,如果收到命令,則分析命令,并調用邏輯分區(qū)管理對象實例,對存儲設備進行掛載,卸 載,格式化操作,并返回操作結果。進一步的,上述移動終端管理大容量存儲設備的方法,還包括創(chuàng)建事件監(jiān)聽服務;監(jiān)聽到內核發(fā)送來的操作存儲設備的事件;判斷設備路徑和分區(qū)路徑是否匹配;如果匹配,創(chuàng)建供VOLD管理的物理分區(qū)設備。進一步的,上述移動終端管理大容量存儲設備的方法,還包括掛載服務啟動,并主動連接VOLD模塊,獲取VOLD模塊的設備列表狀態(tài),如果設備存在且未掛載,則發(fā)送掛載命令給VOLD模塊,完成設備的掛載;應用程序直接調用掛載服務服務接口,對設備進行操作。本發(fā)明可以把EMMC卡或者其他的閃存劃成內部的大容量存儲,節(jié)約了硬件成本,提高系統(tǒng)存儲容量的同時,還能保持與原系統(tǒng)的兼容。
為了易于說明,本發(fā)明由下述的較佳實施例及附圖作以詳細描述。圖I為現(xiàn)有Android智能手機的存儲設備掛載目錄結構圖;圖2為本發(fā)明改進存儲掛載結構圖;圖3所示為本發(fā)明移動終端的結構示意圖;圖4所示為移動終端管理大容量存儲設備的方法的流程圖;圖5所示為步驟401的具體流程圖;圖6所示為步驟402的具體流程圖。
具體實施例方式為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚明白,下文中將結合附圖對本發(fā)明的實施例進行詳細說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互任意組合。圖I為現(xiàn)有Android智能手機的存儲設備掛載目錄結構圖?,F(xiàn)有Android智能手機只有一個外部大容量存儲設備,該大容量存儲設備為圖中所示的SD卡,該SD卡的掛載目錄為/mnt/sdcard。音樂,圖片,視頻等多媒體文件只能保存在該外部SD卡中,另外,應用程序可以安裝到內存和該外部的SD卡中,因此存儲容量有限。圖2為本發(fā)明改進存儲掛載結構圖。圖2中把圖I的外部SD卡掛載目錄,提供給EMMC卡使用,換而言之,把EMMC卡掛載到了目錄/mnt/SdCard。而外部SD卡和U盤就掛載到了 EMMC卡的子目錄下,即夕卜部SD卡掛載到目錄/mnt/sdcard/extmal_sd, U盤掛載到目錄/mnt/sdcard/udisk。不但保證了和原有系統(tǒng)的兼容性,使得Android的音樂,圖庫,視頻,多媒體應用不用改動,還能掃描到外部SD卡和U盤的多媒體文件,相機,錄音機等不用改動就能保存照片或者錄音,視頻文件都保存到了內部存儲器中,而不是原來的保存到SD卡中等,保證了 Android相關應用改動最小化。該掛載結構使得安裝應用軟件到外部SD卡上,變成安裝到了 EMMC卡上,但EMMC卡容量比較大,又是內部卡,所以運行速度也會優(yōu)化,且不影響性能。 對于U盤本發(fā)明需要在內核的USB驅動部分進行修改,本領域的普通技術人員可以根據(jù)實際情況做出修改,本發(fā)明在此不再贅述。圖3所示為本發(fā)明移動終端的結構示意圖;本發(fā)明移動終端包括VOLD (Volume Daemon, V0LD)模塊和掛載服務(Mountservice)模塊。VOLD模塊的主要功能是實現(xiàn)和內核數(shù)據(jù)通信,以及和掛載服務模塊的數(shù)據(jù)通信,接收操作命令,實現(xiàn)對存儲設備的管理。本發(fā)明的VOLD模塊可實現(xiàn)對特定設備的指定分區(qū)的掛載,避免現(xiàn)有Android智能手機不能掛載指定分區(qū)的弊端。VOLD模塊包括事件監(jiān)聽服務子模塊,用于判斷事件的物理分區(qū)和邏輯分區(qū)的標識(mPartldx)是否匹配;如果匹配,修改對應的邏輯分區(qū)對象狀態(tài),并發(fā)消息給掛載服務模塊。掛載服務模塊用于接收消息后,對設備狀態(tài)進行解析,判斷掛載目錄是否為SD卡;如果為SD卡,則調用包更新服務,更新安裝包信息,發(fā)送掃描存儲設備消息,啟動掃描進程。VOLD模塊還包括邏輯分區(qū)管理對象實例子模塊,用于對邏輯分區(qū)進行管理和操作;命令監(jiān)聽對象實例子模塊,用于監(jiān)聽接收掛載服務模塊對邏輯分區(qū)操作命令,調用邏輯分區(qū)管理對象實例模塊對設備進行操作,并返回操作結果;網(wǎng)絡連接管理對象實例子模塊,用于監(jiān)聽對存儲設備的操作事件,并將操作事件發(fā)送給掛載服務模塊;邏輯分區(qū)對象鏈表子模塊讀取配置文件(void, fstab)創(chuàng)建邏輯分區(qū)對象鏈表,關聯(lián)邏輯分區(qū)管理對象,以對邏輯分區(qū)操作。網(wǎng)絡連接管理對象實例子模塊還用于啟動套接字服務連接,并與掛載服務模塊建立長連接;命令監(jiān)聽對象實例子模塊還用于監(jiān)聽是否收到命令,如果收到命令,則分析命令,并調用邏輯分區(qū)管理對象實例子模塊,對設備進行掛載,卸載,格式化操作,并返回操作結果。移動終端還包括創(chuàng)建事件監(jiān)聽服務子模塊,用于監(jiān)聽內核發(fā)送來的操作存儲設備的事件;判斷設備路徑和分區(qū)路徑是否匹配;如果匹配,創(chuàng)建供VOLD管理的物理分區(qū)設備。本發(fā)明通過修改掛載服務模塊的mountservice. java文件,將原來的掛載服務模塊只支持一個SD卡設備,修改成只要是在配置文件(void, fstab)中的設備都支持,即按照圖2所示的目錄結構同時支持EMMC卡,SD卡,U盤。掛載服務模塊還用于主動連接VOLD模塊,獲取VOLD模塊的設備列表狀態(tài),如果設備存在且未掛載,則發(fā)送掛載命令給VOLD模塊,完成設備的掛載。圖4所示為移動終端管理大容量存儲設備的方法的流程圖。本發(fā)明移動終端管理大容量存儲設備的方法,包括步驟401,事件監(jiān)聽服務判斷事件的物理分區(qū)和邏輯分區(qū)的標識(mPartldx)是否 匹配;如果匹配,修改對應的邏輯分區(qū)對象狀態(tài),并發(fā)消息給掛載服務;步驟402,掛載服務接收消息后,對設備狀態(tài)進行解析,判斷掛載目錄是否為SD卡;如果為SD卡,則調用包更新服務,更新安裝包信息,發(fā)送掃描存儲設備消息,啟動掃描進程。其中,步驟401之前還包括V0LD啟動;V0LD創(chuàng)建邏輯分區(qū)管理對象實例,用于對邏輯分區(qū)進行管理和操作;V0LD創(chuàng)建命令監(jiān)聽對象實例,用于監(jiān)聽接收掛載服務對邏輯分區(qū)操作命令,調用邏輯分區(qū)管理對象實例對設備進行操作,并返回操作結果;V0LD創(chuàng)建網(wǎng)絡連接管理對象實例,用于監(jiān)聽對存儲設備的操作事件,并將操作事件發(fā)送給掛載服務;VOLD讀取配置文件(void, fstab)創(chuàng)建邏輯分區(qū)對象鏈表,關聯(lián)邏輯分區(qū)管理對象,以對邏輯分區(qū)操作。其中上述VOLD創(chuàng)建命令監(jiān)聽對象實例,用于監(jiān)聽接收掛載服務對邏輯分區(qū)操作命令,調用邏輯分區(qū)管理對象實例對設備進行操作,并返回操作結果的步驟具體包括網(wǎng)絡連接管理對象實例啟動套接字服務連接,并與掛載服務建立長連接;命令監(jiān)聽對象實例監(jiān)聽是否收到命令,如果收到命令,則分析命令,并調用邏輯分區(qū)管理對象實例,對存儲設備進行掛載,卸載,格式化操作,并返回操作結果。圖5所示為步驟401的具體流程圖。步驟501,創(chuàng)建事件監(jiān)聽服務;步驟502,監(jiān)聽到內核發(fā)送來的操作存儲設備的事件;步驟503,判斷設備路徑和分區(qū)路徑是否匹配;如果匹配,進入步驟504,否則結束;步驟504,創(chuàng)建供VOLD管理的物理分區(qū)設備;步驟505,事件監(jiān)聽服務判斷事件的物理分區(qū)和邏輯分區(qū)的標識(mPartldx)是否匹配;如果匹配,進入步驟506,否則結束;步驟506,修改對應的邏輯分區(qū)對象狀態(tài),并發(fā)消息給掛載服務;圖6所示為步驟402的具體流程圖。步驟601,掛載服務啟動;步驟602,主動連接VOLD模塊,獲取VOLD模塊的設備列表狀態(tài),如果設備存在且未掛載,則發(fā)送掛載命令給VOLD模塊,完成設備的掛載;應用程序直接調用掛載服務服務接口,對設備進行操作;步驟603,對設備狀態(tài)進行解析,判斷掛載目錄是否為SD卡;步驟604,如果為SD卡,則調用包更新服務,更新安裝包信息,發(fā)送掃描存儲設備消息,啟動掃描進程。
本發(fā)明可以把EMMC卡或者其他的閃存劃成內部的大容量存儲,節(jié)約了硬件成本,提高系統(tǒng)存儲容量的同時,還能保持與原系統(tǒng)的兼容。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領域的技術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
1.一種移動終端,包括VOLD模塊和掛載服務模塊,其特征在于 VOLD模塊包括事件監(jiān)聽服務子模塊,用于判斷事件的物理分區(qū)和邏輯分區(qū)的標識是否匹配;如果匹配,修改對應的邏輯分區(qū)對象狀態(tài),并發(fā)消息給掛載服務模塊; 掛載服務模塊接收消息后,對設備狀態(tài)進行解析,判斷掛載目錄是否為SD卡;如果為SD卡,則調用包更新服務,更新安裝包信息,發(fā)送掃描存儲設備消息,啟動掃描進程。
2.如權利要求I所述的移動終端,其特征在于,VOLD模塊還包括 邏輯分區(qū)管理對象實例子模塊,用于對邏輯分區(qū)進行管理和操作; 命令監(jiān)聽對象實例子模塊,用于監(jiān)聽接收掛載服務模塊對邏輯分區(qū)操作命令,調用邏輯分區(qū)管理對象實例模塊對設備進行操作,并返回操作結果; 網(wǎng)絡連接管理對象實例子模塊,用于監(jiān)聽對存儲設備的操作事件,并將操作事件發(fā)送給掛載服務模塊; 邏輯分區(qū)對象鏈表子模塊讀取配置文件創(chuàng)建邏輯分區(qū)對象鏈表,關聯(lián)邏輯分區(qū)管理對象,以對邏輯分區(qū)操作。
3.如權利要求2所述的移動終端,其特征在于 網(wǎng)絡連接管理對象實例子模塊還用于啟動套接字服務連接,并與掛載服務模塊建立長連接; 命令監(jiān)聽對象實例子模塊還用于監(jiān)聽是否收到命令,如果收到命令,則分析命令,并調用邏輯分區(qū)管理對象實例子模塊,對設備進行掛載,卸載,格式化操作,并返回操作結果。
4.如權利要求3所述的移動終端,其特征在于,還包括創(chuàng)建事件監(jiān)聽服務子模塊,用于 監(jiān)聽內核發(fā)送來的操作存儲設備的事件; 判斷設備路徑和分區(qū)路徑是否匹配; 如果匹配,創(chuàng)建供VOLD管理的物理分區(qū)設備。
5.如權利要求4所述的移動終端,其特征在于,掛載服務模塊還用于主動連接VOLD模塊,獲取VOLD模塊的設備列表狀態(tài),如果設備存在且未掛載,則發(fā)送掛載命令給VOLD模塊,完成設備的掛載。
6.一種移動終端管理大容量存儲設備的方法,其特征在于,包括 事件監(jiān)聽服務判斷事件的物理分區(qū)和邏輯分區(qū)的標識是否匹配;如果匹配,修改對應的邏輯分區(qū)對象狀態(tài),并發(fā)消息給掛載服務; 掛載服務接收消息后,對設備狀態(tài)進行解析,判斷掛載目錄是否為SD卡; 如果為SD卡,則調用包更新服務,更新安裝包信息,發(fā)送掃描存儲設備消息,啟動掃描進程。
7.如權利要求6所述的移動終端管理大容量存儲設備的方法,其特征在于,還包括 VOLD啟動; VOLD創(chuàng)建邏輯分區(qū)管理對象實例,用于對邏輯分區(qū)進行管理和操作; VOLD創(chuàng)建命令監(jiān)聽對象實例,用于監(jiān)聽接收掛載服務對邏輯分區(qū)操作命令,調用邏輯分區(qū)管理對象實例對設備進行操作,并返回操作結果; VOLD創(chuàng)建網(wǎng)絡連接管理對象實例,用于監(jiān)聽對存儲設備的操作事件,并將操作事件發(fā)送給掛載服務;VOLD讀取配置文件創(chuàng)建邏輯分區(qū)對象鏈表,關聯(lián)邏輯分區(qū)管理對象,以對邏輯分區(qū)操作。
8.如權利要求7所述的移動終端管理大容量存儲設備的方法,其特征在于,還包括 網(wǎng)絡連接管理對象實例啟動套接字服務連接,并與掛載服務建立長連接; 命令監(jiān)聽對象實例監(jiān)聽是否收到命令,如果收到命令,則分析命令,并調用邏輯分區(qū)管理對象實例,對存儲設備進行掛載,卸載,格式化操作,并返回操作結果。
9.如權利要求8所述的移動終端管理大容量存儲設備的方法,其特征在于,還包括 創(chuàng)建事件監(jiān)聽服務; 監(jiān)聽到內核發(fā)送來的操作存儲設備的事件; 判斷設備路徑和分區(qū)路徑是否匹配; 如果匹配,創(chuàng)建供VOLD管理的物理分區(qū)設備。
10.如權利要求9所述的移動終端管理大容量存儲設備的方法,其特征在于,還包括 掛載服務啟動,并主動連接VOLD模塊,獲取VOLD模塊的設備列表狀態(tài),如果設備存在且未掛載,則發(fā)送掛載命令給VOLD模塊,完成設備的掛載;應用程序直接調用掛載服務服務接口,對設備進行操作。
全文摘要
本發(fā)明涉及一種移動終端及其管理大容量存儲設備的方法。移動終端包括VOLD模塊和掛載服務模塊,VOLD模塊包括事件監(jiān)聽服務子模塊,用于判斷事件的物理分區(qū)和邏輯分區(qū)的標識是否匹配;如果匹配,修改對應的邏輯分區(qū)對象狀態(tài),并發(fā)消息給掛載服務模塊;掛載服務模塊接收消息后,對設備狀態(tài)進行解析,判斷掛載目錄是否為SD卡;如果為SD卡,則調用包更新服務,更新安裝包信息,發(fā)送掃描存儲設備消息,啟動掃描進程。本發(fā)明可以把EMMC卡或者其他的閃存劃成內部的大容量存儲,節(jié)約了硬件成本,提高系統(tǒng)存儲容量的同時,還能保持與原系統(tǒng)的兼容。
文檔編號H04L29/08GK102664929SQ20121009692
公開日2012年9月12日 申請日期2012年4月5日 優(yōu)先權日2012年4月5日
發(fā)明者熊衛(wèi)波 申請人:福興達科技實業(yè)(深圳)有限公司