專利名稱:一種進(jìn)行應(yīng)用程序調(diào)度的方法及應(yīng)用程序調(diào)度模塊的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,尤其涉及一種進(jìn)行應(yīng)用程序調(diào)度的方法及應(yīng)用程 序調(diào)度模塊。
背景技術(shù):
SM應(yīng)用程序工具包(SIM Application Toolkit,以下簡稱SAT)是SIM、 UIM等用戶識(shí)別模塊與移動(dòng)設(shè)備(ME, Mobile Equipment)間接口上的應(yīng)用 程序工具包。早期的SIM只能被動(dòng)地執(zhí)行移動(dòng)設(shè)備給它的指令并返回執(zhí)行狀 態(tài)和結(jié)果,SAT通過定義一個(gè)標(biāo)準(zhǔn)化的新狀態(tài)字使SIM可以發(fā)出主動(dòng)命令 (Proactive Command),讓手機(jī)設(shè)備完成某些任務(wù)。這就4吏得在SIM/UIM中 借助程序主動(dòng)為用戶提供功能豐富、操作簡便的菜單成為可能。也就是說, 用戶可以用可視化、交互式的手段對(duì)存儲(chǔ)在SDWUIM中的內(nèi)容進(jìn)行數(shù)據(jù)輸入 和菜單操作。
但是現(xiàn)有的協(xié)議規(guī)范中,SM/U1M與移動(dòng)設(shè)備之間只能保持一個(gè)主動(dòng) Session過程,而且絕大部分SM/UIM的操作系統(tǒng)中也只能運(yùn)行單個(gè)進(jìn)程。 這樣,如果用戶在使用一個(gè)應(yīng)用程序過程中,臨時(shí)需要使用其他的應(yīng)用程序, 只能先退出當(dāng)前應(yīng)用程序,再啟動(dòng)新的應(yīng)用程序,等新應(yīng)用程序使用完后, 又要先關(guān)新應(yīng)用程序,再啟動(dòng)原應(yīng)用程序,然后再重復(fù)執(zhí)行一遍和網(wǎng)關(guān)的一 系列交互,才能回到原先退出時(shí)的應(yīng)用程序頁面。這既浪費(fèi)了時(shí)間,又浪費(fèi) 了通信資源。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種進(jìn)行應(yīng)用程序調(diào)度的方法及應(yīng)用程 序調(diào)度^t塊,能在需要使用其它應(yīng)用程序時(shí),不用結(jié)束當(dāng)前執(zhí)行的應(yīng)用程序。為了解決上述問題,本發(fā)明提供了一種進(jìn)行應(yīng)用程序調(diào)度的方法,包括
建立應(yīng)用環(huán)境暫存區(qū)和用于保存當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù)的應(yīng)用運(yùn)行 環(huán)境存儲(chǔ)區(qū);
需要切換應(yīng)用程序時(shí),將當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù)保存在應(yīng)用環(huán)境暫 存區(qū)中;判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng),如果已啟動(dòng),則將該應(yīng)用程序 的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程 序;否則直接執(zhí)行該應(yīng)用程序啟動(dòng)過程。
進(jìn)一步的,所述方法還包括
為每個(gè)應(yīng)用程序分配一個(gè)對(duì)應(yīng)的應(yīng)用標(biāo)識(shí),建立全部應(yīng)用程序列表和已 啟動(dòng)的應(yīng)用程序列表;所述全部應(yīng)用程序列表用于記載各應(yīng)用程序和其應(yīng)用 標(biāo)識(shí)之間的對(duì)應(yīng)關(guān)系;所述已啟動(dòng)的應(yīng)用程序列表用于記載已啟動(dòng)還未關(guān)閉 的各應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);建立當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí),用于保存當(dāng)前執(zhí)行 的應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);
判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng)是指在已啟動(dòng)的應(yīng)用程序列表中查 找是否存在待執(zhí)行應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);如果存在,則判斷待執(zhí)行的應(yīng) 用程序已啟動(dòng),否則判斷〗爭執(zhí)^f亍的應(yīng)用程序未啟動(dòng)。
進(jìn)一步的,需要切換應(yīng)用程序的情況包括以下情況中的任一種
第一種情況是用戶識(shí)別卡收到一條攜帶應(yīng)用標(biāo)識(shí)的信息,如果信息所攜 帶的應(yīng)用標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)不同,則需要切換應(yīng)用程序,待執(zhí)行的應(yīng) 用程序?yàn)樾畔⑺鶖y帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序;
第二種情況是用戶通過按終端上指定的應(yīng)用程序切換鍵,調(diào)出應(yīng)用程序 列表,用戶從中選中一項(xiàng)應(yīng)用程序;如果用戶所選擇的應(yīng)用程序?qū)?yīng)的應(yīng)用 標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)不同,則需要切換應(yīng)用程序,待執(zhí)行的應(yīng)用程序?yàn)?用戶所選的應(yīng)用程序。
進(jìn)一步的,所述應(yīng)用程序的數(shù)據(jù)包括
應(yīng)用程序在執(zhí)行過程中在應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中建立的臨時(shí)環(huán)境變量和 臨時(shí)頁面緩存區(qū);其中臨時(shí)環(huán)境變量至少包括一個(gè)變量用于保存此應(yīng)用程序 正在處理或顯示的頁面在頁面緩存區(qū)內(nèi)的位置信息;當(dāng)需要切換應(yīng)用程序的情況為上述第 一種情況,并且待執(zhí)行的應(yīng)用程序 已啟動(dòng)時(shí),將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境
存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程序具體是指
清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);將信息所攜帶的應(yīng)用標(biāo)識(shí)所對(duì)應(yīng)應(yīng) 用程序的數(shù)據(jù),從應(yīng)用環(huán)境暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境 變量和臨時(shí)頁面緩存區(qū)中,將信息交給該應(yīng)用程序處理;將信息所攜帶的應(yīng) 用標(biāo)識(shí)保存為當(dāng)前執(zhí)4亍應(yīng)用標(biāo)識(shí);
當(dāng)需要切換應(yīng)用程序的情況為上述第二種情況,并且待執(zhí)行的應(yīng)用程序 已啟動(dòng)時(shí),將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境 存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程序具體是指
清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);從應(yīng)用環(huán)境暫存區(qū)中將用戶所選應(yīng) 用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū) 中;將用戶所選應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);根據(jù)該 應(yīng)用程序的臨時(shí)環(huán)境變量中保存的應(yīng)用程序正在處理的頁面信息,從應(yīng)用程 序臨時(shí)頁面緩存區(qū)中取出頁面數(shù)據(jù),生成命令指示終端將頁面顯示在屏幕上;
當(dāng)需要切換應(yīng)用程序的情況為上述第一種情況,并且待執(zhí)行的應(yīng)用程序 未啟動(dòng)時(shí),執(zhí)行該應(yīng)用程序具體是指
清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查找信息所 攜帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序,在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于該應(yīng)用程序 的存儲(chǔ)區(qū),啟動(dòng)該應(yīng)用程序;將收到的信息交給該應(yīng)用程序處理;將信息所 攜帶的應(yīng)用標(biāo)識(shí)添加到已啟動(dòng)列表,并保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);
所述全部應(yīng)用程序列表還包括各應(yīng)用程序?qū)?yīng)的首頁入口地址;
當(dāng)需要切換應(yīng)用程序的情況為上述第二種情況,并且待執(zhí)行的應(yīng)用程序 未啟動(dòng)時(shí),執(zhí)行該應(yīng)用程序具體是指
清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查找用戶所 選應(yīng)用程序?qū)?yīng)的首頁入口地址;在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于用戶所選應(yīng) 用程序的存儲(chǔ)區(qū);才艮據(jù)所述首頁入口地址,取出用戶所選應(yīng)用程序的首頁, 生成命令指示終端將該頁面顯示在屏幕上;將用戶所選應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)添力口到已啟動(dòng)列表,并保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)。
進(jìn)一步的,所述的方法還包括
當(dāng)用戶選擇結(jié)束當(dāng)前應(yīng)用程序時(shí),從已啟動(dòng)的應(yīng)用程序列表中刪除當(dāng)前 執(zhí)行應(yīng)用標(biāo)識(shí),并清除應(yīng)用環(huán)境暫存區(qū)中該應(yīng)用程序所占用的存儲(chǔ)區(qū);判斷 已啟動(dòng)的應(yīng)用程序列表中是否還有其他應(yīng)用標(biāo)識(shí),如杲?jīng)]有,則生成命令指 示終端清除屏幕顯示,并指示終端進(jìn)入空閑狀態(tài),清除當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí), 結(jié)束操作;否則選中任一應(yīng)用標(biāo)識(shí),將該應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí); 從應(yīng)用環(huán)境暫存區(qū)中,將該應(yīng)用標(biāo)識(shí)所對(duì)應(yīng)的應(yīng)用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn) 行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中;根據(jù)該應(yīng)用程序臨時(shí)環(huán) 境變量中保存的應(yīng)用程序正在處理的頁面信息,從應(yīng)用程序臨時(shí)頁面i爰存區(qū) 中取出頁面數(shù)據(jù),生成命令指示終端將頁面顯示在屏幕上,結(jié)束操作;
當(dāng)用戶選擇結(jié)束全部應(yīng)用程序時(shí),清除全部應(yīng)用環(huán)境暫存區(qū);清空應(yīng)用 運(yùn)行環(huán)境存儲(chǔ)區(qū)中當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù);清除已啟動(dòng)的應(yīng)用程序列表 和當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);生成命令指示終端清除屏幕顯示,并指示終端進(jìn)入空 閑狀態(tài),結(jié)束操作
當(dāng)用戶選擇結(jié)束任一已啟動(dòng)的非當(dāng)前應(yīng)用程序時(shí),在全部應(yīng)用程序列表 中查找該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),從已啟動(dòng)的應(yīng)用列表中刪除該應(yīng)用標(biāo)識(shí), 將應(yīng)用環(huán)境暫存區(qū)中該應(yīng)用程序的數(shù)據(jù)刪除,結(jié)束操作。
本發(fā)明還提供了一種應(yīng)用程序調(diào)度4莫塊,包括存儲(chǔ)單元、切換單元;
所述存儲(chǔ)單元包括應(yīng)用環(huán)境暫存區(qū)和用于保存當(dāng)前執(zhí)行的應(yīng)用程序數(shù)據(jù) 的應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū);
所述切換單元用于當(dāng)需要切換應(yīng)用程序時(shí),將當(dāng)前執(zhí)行的應(yīng)用程序的數(shù) 據(jù)保存在應(yīng)用環(huán)境暫存區(qū)中;清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);判斷待執(zhí) 行的應(yīng)用程序是否已啟動(dòng),如果已啟動(dòng),則將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境 暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程序;否則直接執(zhí)行該 應(yīng)用程序。
進(jìn)一步的,所述的模塊還包括維護(hù)單元,用于為每個(gè)應(yīng)用程序分配一個(gè)對(duì)應(yīng)的應(yīng)用標(biāo)識(shí),建立全部應(yīng)
用程序列表和已啟動(dòng)的應(yīng)用程序列表;將各應(yīng)用程序和其應(yīng)用標(biāo)識(shí)之間的對(duì) 應(yīng)關(guān)系保存在所述全部應(yīng)用程序列表中,將已啟動(dòng)還未關(guān)閉的各應(yīng)用程序?qū)?應(yīng)的應(yīng)用標(biāo)識(shí)保存在所述已啟動(dòng)的應(yīng)用程序列表中;以及建立用于保存當(dāng)前 執(zhí)行的應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)的當(dāng)前才丸行應(yīng)用標(biāo)識(shí);
所述切換單元判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng)是指所述切換單元在 已啟動(dòng)的應(yīng)用程序列表中查找是否存在待執(zhí)行應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);如 果存在,則判斷待執(zhí)行的應(yīng)用程序已啟動(dòng),否則判新待執(zhí)行的應(yīng)用程序未啟 動(dòng)。
進(jìn)一步的,所述的模塊還包括
切換判斷單元,用于當(dāng)用戶識(shí)別卡收到攜帶應(yīng)用標(biāo)識(shí)的信息時(shí),判斷信 息所攜帶的應(yīng)用標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)是否相同,如果不同則發(fā)送第一切 換指令給切換單元,其中攜帶所述信息攜帶的應(yīng)用標(biāo)識(shí)作為待執(zhí)行應(yīng)用程序 的應(yīng)用標(biāo)識(shí);以及當(dāng)用戶選中一項(xiàng)應(yīng)用程序時(shí),判斷用戶所選擇的應(yīng)用程序 對(duì)應(yīng)的應(yīng)用標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)是否相同,如果不同則發(fā)送第二切換指 令給切換單元,其中攜帶用戶所選擇的應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)作為待執(zhí)行 應(yīng)用程序的應(yīng)用標(biāo)識(shí);
所述切換單元當(dāng)收到第 一或第二切換指令時(shí)判斷需要切換應(yīng)用程序。 進(jìn)一步的,所述應(yīng)用程序的數(shù)據(jù)包括
應(yīng)用程序在執(zhí)行過程中在應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中建立的臨時(shí)環(huán)境變量和 臨時(shí)頁面緩存區(qū);其中臨時(shí)環(huán)境變量至少包括一個(gè)變量用于保存此應(yīng)用程序 正在處理或顯示的頁面在頁面緩存區(qū)內(nèi)的位置信息;
當(dāng)切換單元收到第一切換指令,并且判斷待執(zhí)行的應(yīng)用程序已啟動(dòng)時(shí), 將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后 執(zhí)行該應(yīng)用程序具體是指
切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);將信息所攜帶的應(yīng)用標(biāo)識(shí) 所對(duì)應(yīng)的應(yīng)用程序的數(shù)據(jù),從應(yīng)用環(huán)境暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū) 的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中,將信息交給該應(yīng)用程序處理;發(fā)送標(biāo)識(shí)更新指令給維護(hù)單元,其中攜帶所述信息所攜帶的應(yīng)用標(biāo)識(shí);
維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用才示識(shí);
當(dāng)切換單元收到第二切換指令,并且判斷待執(zhí)行的應(yīng)用程序已啟動(dòng)時(shí), 將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后執(zhí) 行該應(yīng)用程序具體是指
切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);從應(yīng)用環(huán)境暫存區(qū)中將用 戶所選應(yīng)用程序的數(shù)據(jù),復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí) 頁面緩存區(qū)中;根據(jù)該應(yīng)用程序的臨時(shí)環(huán)境變量中保存的應(yīng)用程序正在處理 的頁面信息,從應(yīng)用程序臨時(shí)頁面緩存區(qū)中取出頁面數(shù)據(jù),生成命令指示終 端將頁面顯示在屏幕上;發(fā)送標(biāo)識(shí)更新指令給維護(hù)單元,其中攜帶用戶所選 應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);
維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí);
當(dāng)切換單元收到第 一切換指令,并且判斷待執(zhí)行的應(yīng)用程序未啟動(dòng)時(shí), 執(zhí)行該應(yīng)用程序具體是指
切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查 找信息所攜帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序,在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于該 應(yīng)用程序的存儲(chǔ)區(qū);將收到的信息交給該應(yīng)用程序處理;發(fā)送標(biāo)識(shí)更新指令 和已啟動(dòng)列表更新指令給維護(hù)單元,其中均攜帶用戶所選應(yīng)用程序?qū)?yīng)的應(yīng) 用標(biāo)識(shí);
維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí);收到已啟動(dòng)列表更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)添加到已啟 動(dòng)的應(yīng)用程序列表;
所述全部應(yīng)用程序列表還包括各應(yīng)用程序?qū)?yīng)的首頁入口地址;
當(dāng)切換單元收到第二切換指令,并且判斷待執(zhí)行的應(yīng)用程序未啟動(dòng)時(shí), 執(zhí)行該應(yīng)用程序具體是指
切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查找用戶所選應(yīng)用程序?qū)?yīng)的首頁入口地址;在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于用 戶所選應(yīng)用程序的存儲(chǔ)區(qū),啟動(dòng)該應(yīng)用程序;根據(jù)所述首頁入口地址,取出 用戶所選應(yīng)用程序的首頁,生成命令指示終端將該頁面顯示在屏幕上;發(fā)送 標(biāo)識(shí)更新指令和已啟動(dòng)列表更新指令給維護(hù)單元,其中均攜帶用戶所選應(yīng)用 程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);
維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí);收到已啟動(dòng)列表更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)添加到已啟 動(dòng)的應(yīng)用程序列表。
進(jìn)一步的,所述的模塊還包括
應(yīng)用結(jié)束單元,用于當(dāng)收到用戶結(jié)束當(dāng)前應(yīng)用程序的指令時(shí),清除應(yīng)用 環(huán)境暫存區(qū)中該應(yīng)用程序所占用的存儲(chǔ)區(qū),發(fā)送已啟動(dòng)列表刪除指令給維護(hù) 單元,其中攜帶該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);以及判斷已啟動(dòng)的應(yīng)用程序列 表中是否還有其他應(yīng)用標(biāo)識(shí),如果沒有,則生成命令指示終端清除屏幕顯示, 并指示終端進(jìn)入空閑狀態(tài),發(fā)送標(biāo)識(shí)清除指令給維護(hù)單元;如果有則選中任 一應(yīng)用標(biāo)識(shí),發(fā)送標(biāo)識(shí)更新指令給維護(hù)單元,其中攜帶選中的應(yīng)用標(biāo)識(shí),并 從應(yīng)用環(huán)境暫存區(qū)中,將該應(yīng)用標(biāo)識(shí)所對(duì)應(yīng)的應(yīng)用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn) 行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中,根據(jù)該應(yīng)用程序臨時(shí)環(huán) 境變量中保存的應(yīng)用程序正在處理的頁面信息,從應(yīng)用程序臨時(shí)頁面緩存區(qū) 中取出頁面數(shù)據(jù),生成命令指示終端將頁面顯示在屏幕上;還用于當(dāng)收到用 戶結(jié)束全部應(yīng)用程序的指令時(shí),清除全部應(yīng)用環(huán)境暫存區(qū);清空應(yīng)用運(yùn)行環(huán) 境存儲(chǔ)區(qū)中當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù);生成命令指示終端清除屏幕顯示, 并指示終端進(jìn)入空閑狀態(tài);發(fā)送標(biāo)識(shí)清除指令和已啟動(dòng)列表清除指令給維護(hù) 單元;還用于當(dāng)收到用戶結(jié)束任一已啟動(dòng)的非當(dāng)前應(yīng)用程序的指令時(shí),在全 部應(yīng)用程序列表中查找該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),發(fā)送已啟動(dòng)列表刪除指 令給維護(hù)單元,其中攜帶該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),將應(yīng)用環(huán)境暫存區(qū)中 該應(yīng)用程序的數(shù)據(jù)刪除;
維護(hù)單元還用于收到標(biāo)識(shí)清除指令后,清除當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);收到已 啟動(dòng)列表刪除指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)從已啟動(dòng)的應(yīng)用程序列表中刪 除;收到已啟動(dòng)列表清除指令時(shí),刪除已啟動(dòng)的應(yīng)用程序列表中所有應(yīng)用標(biāo)識(shí)。
本發(fā)明的技術(shù)方案能在單進(jìn)程的SIM/UIM操作系統(tǒng)中實(shí)現(xiàn)多應(yīng)用程序
執(zhí)行,并實(shí)現(xiàn)多應(yīng)用程序之間的切換,在應(yīng)用程序頻繁切換時(shí)不必大量進(jìn)行 結(jié)束和啟動(dòng)應(yīng)用程序的工作,從而改善用戶的使用體—瞼,節(jié)約不必要的通信 交互。
圖1為本發(fā)明提供的應(yīng)用程序調(diào)度模塊的具體實(shí)施框圖; 圖2為本發(fā)明應(yīng)用實(shí)例一的具體實(shí)施流程圖; 圖3為本發(fā)明應(yīng)用實(shí)例二的具體實(shí)施流程圖。
具體實(shí)施例方式
下面將結(jié)合附圖及實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)行更詳細(xì)的說明。 本發(fā)明提供的進(jìn)行應(yīng)用程序調(diào)度的方法包括
建立應(yīng)用環(huán)境暫存區(qū)和用于保存當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù)的應(yīng)用運(yùn)行 環(huán)境存儲(chǔ)區(qū);
需要切換應(yīng)用程序時(shí),將當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù)保存在應(yīng)用環(huán)境暫 存區(qū)中;判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng),如果已啟動(dòng),則將該應(yīng)用程序 的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程 序;否則直接執(zhí)行該應(yīng)用程序的啟動(dòng)過程。
其中,所述應(yīng)用程序的數(shù)據(jù)可以包括應(yīng)用程序在執(zhí)行過程中在應(yīng)用運(yùn) 行環(huán)境存儲(chǔ)區(qū)中建立的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū);其中臨時(shí)環(huán)境變量 至少包括一個(gè)變量用于保存此應(yīng)用程序正在處理或顯示的頁面在頁面i爰存區(qū) 內(nèi)的位置信息。
所述方法還可以包括為每個(gè)應(yīng)用程序分配一個(gè)對(duì)應(yīng)的應(yīng)用標(biāo)識(shí),建立 全部應(yīng)用程序列表和已啟動(dòng)的應(yīng)用程序列表;所述全部應(yīng)用程序列表用于記載各應(yīng)用程序和其應(yīng)用標(biāo)識(shí)之間的對(duì)應(yīng)關(guān)系;所述已啟動(dòng)的應(yīng)用程序列表用 于記載已啟動(dòng)還未關(guān)閉的各應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);建立當(dāng)前執(zhí)行應(yīng)用標(biāo) 識(shí),用于保存當(dāng)前執(zhí)行的應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)。
其中,判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng)可以是指在已啟動(dòng)的應(yīng)用程 序列表中查找是否存在待執(zhí)行應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);如果存在,則判斷 待執(zhí)行的應(yīng)用程序已啟動(dòng),否則判斷待執(zhí)行的應(yīng)用程序未啟動(dòng)。
其中,需要切換應(yīng)用程序的情況可以包括以下情況中的任一種
第一種情況是用戶識(shí)別卡收到一條攜帶應(yīng)用標(biāo)識(shí)的信息,如果信息所攜 帶的應(yīng)用標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)不同,則需要切換應(yīng)用程序,待執(zhí)行的應(yīng) 用程序?yàn)樾畔⑺鶖y帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序;
第二種情況是用戶通過按終端上指定的應(yīng)用程序切換^建,調(diào)出應(yīng)用程序 列表,用戶從中選中一項(xiàng)應(yīng)用程序;如果用戶所選擇的應(yīng)用程序?qū)?yīng)的應(yīng)用 標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)不同,則需要切換應(yīng)用程序,待執(zhí)行的應(yīng)用程序?yàn)?用戶所選的應(yīng)用程序。
其中,以上兩種情況中,如果信息所攜帶的應(yīng)用標(biāo)識(shí)或用戶所選擇應(yīng)用 程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)相同,則不需要切換應(yīng)用程序。
其中,當(dāng)需要切換應(yīng)用程序的情況為上述第一種情況,并且待執(zhí)行的應(yīng) 用程序已啟動(dòng)時(shí),將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn) 行環(huán)境存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程序具體可以是指
清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);將信息所攜帶的應(yīng)用標(biāo)識(shí)所對(duì)應(yīng)的 應(yīng)用程序的數(shù)據(jù),從應(yīng)用環(huán)境暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán) 境變量和臨時(shí)頁面緩存區(qū)中,將信息交給該應(yīng)用程序處理;將信息所攜帶的 應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)4亍應(yīng)用標(biāo)識(shí)。
其中,當(dāng)需要切換應(yīng)用程序的情況為上述第二種情況,并且待執(zhí)行的應(yīng) 用程序已啟動(dòng)時(shí),將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn) 行環(huán)境存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程序具體可以是指
清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);從應(yīng)用環(huán)境暫存區(qū)中將用戶所選應(yīng) 用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中;將用戶所選應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)保存為當(dāng)前^i行應(yīng)用標(biāo)識(shí);根據(jù)該 應(yīng)用程序的臨時(shí)環(huán)境變量中保存的應(yīng)用程序正在處理的頁面信息,從應(yīng)用程 序臨時(shí)頁面緩存區(qū)中取出頁面數(shù)據(jù),生成命令指示終端將頁面顯示在屏幕上。
當(dāng)待執(zhí)行的應(yīng)用程序已啟動(dòng)時(shí),如果待執(zhí)行的應(yīng)用程序所占用的存儲(chǔ)空 間大于或等于當(dāng)前執(zhí)行的應(yīng)用程序時(shí),不清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù) 也是允許的,因?yàn)閷⒋龍?zhí)行的應(yīng)用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)后, 會(huì)完全覆蓋當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù);當(dāng)然,比較保險(xiǎn)和簡單(因?yàn)闊o需 比較兩者的存儲(chǔ)區(qū)大小)的方法是全部清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù)。
其中,當(dāng)需要切換應(yīng)用程序的情況為上述第一種情況,并且待執(zhí)行的應(yīng) 用程序未啟動(dòng)時(shí),執(zhí)行該應(yīng)用程序具體可以是指
清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查找信息所 攜帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序,在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于該應(yīng)用程序 的存儲(chǔ)區(qū),啟動(dòng)該應(yīng)用程序;將收到的信息交給該應(yīng)用程序處理;將信息所 攜帶的應(yīng)用標(biāo)識(shí)添加到已啟動(dòng)列表,并保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)。
所述全部應(yīng)用程序列表還可以包括各應(yīng)用程序?qū)?yīng)的首頁入口地址。
其中,當(dāng)需要切換應(yīng)用程序的情況為上述第二種情況,并且待執(zhí)行的應(yīng) 用程序未啟動(dòng)時(shí),執(zhí)行該應(yīng)用程序具體可以是指
清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查找用戶所 選應(yīng)用程序?qū)?yīng)的首頁入口地址;在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于用戶所選應(yīng) 用程序的存儲(chǔ)區(qū);根據(jù)所述首頁入口地址,取出用戶所選應(yīng)用程序的首頁, 生成命令指示終端將該頁面顯示在屏幕上;將用戶所選應(yīng)用程序?qū)?yīng)的應(yīng)用 標(biāo)識(shí)添加到已啟動(dòng)列表,并保存為當(dāng)前執(zhí)行崖用標(biāo)識(shí)。
所述方法還可以包括
當(dāng)用戶選擇結(jié)束當(dāng)前應(yīng)用程序時(shí),結(jié)束當(dāng)前應(yīng)用程序,從已啟動(dòng)的應(yīng)用 程序列表中刪除當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí),并清除應(yīng)用環(huán)境暫存區(qū)中該應(yīng)用程序所 占用的存儲(chǔ)區(qū);
判斷已啟動(dòng)的應(yīng)用程序列表中是否還有 他應(yīng)用標(biāo)識(shí),如果沒有,則生 成命令指示終端清除屏幕顯示,并指示終端進(jìn)入空閑狀態(tài),清除當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí),結(jié)束操作;
否則選中任一應(yīng)用標(biāo)識(shí),將該應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);乂人應(yīng) 用環(huán)境暫存區(qū)中,將該應(yīng)用標(biāo)識(shí)所對(duì)應(yīng)的應(yīng)用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn)行環(huán) 境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中;根據(jù)該應(yīng)用程序臨時(shí)環(huán)境變 量中保存的應(yīng)用程序正在處理的頁面信息,從應(yīng)用程序臨時(shí)頁面緩存區(qū)中取 出頁面數(shù)據(jù),生成命令指示終端將頁面顯示在屏幕上,結(jié)束才喿作。
其中,用戶選擇結(jié)束當(dāng)前應(yīng)用程序可以是指
在終端中,用戶切換應(yīng)用的選擇菜單上增加"結(jié)束當(dāng)前應(yīng)用"的選項(xiàng), 當(dāng)用戶選中該選項(xiàng)時(shí)認(rèn)為用戶選擇結(jié)束當(dāng)前應(yīng)用程序。
所述方法還可以包括
當(dāng)用戶選擇結(jié)束全部應(yīng)用程序時(shí),清除全部應(yīng)用環(huán)境暫存區(qū);清空應(yīng)用 運(yùn)行環(huán)境存儲(chǔ)區(qū)中當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù);根據(jù)已啟動(dòng)的應(yīng)用程序列表 結(jié)束所有已啟動(dòng)的應(yīng)用程序;清除已啟動(dòng)的應(yīng)用程序列表和當(dāng)前執(zhí)行應(yīng)用標(biāo) 識(shí);生成命令指示終端清除屏幕顯示,并指示終端進(jìn)入空閑狀態(tài),結(jié)束操作。
其中,用戶選擇結(jié)束所有應(yīng)用程序可以是指
在終端中,用戶切換應(yīng)用的選擇菜單上增加"結(jié)束所有應(yīng)用"的選項(xiàng); 所述方法還可以包括
當(dāng)用戶選擇結(jié)束任一已啟動(dòng)的非當(dāng)前應(yīng)用程序時(shí),在全部應(yīng)用程序列表 中查找該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),從已啟動(dòng)的應(yīng)用列表中刪除該應(yīng)用標(biāo)識(shí), 將應(yīng)用環(huán)境暫存區(qū)中該應(yīng)用程序的數(shù)據(jù)刪除。
其中,用戶選擇結(jié)束任一已啟動(dòng)的非當(dāng)前應(yīng)用程序可以是指
在終端中,用戶切:換應(yīng)用的選擇菜單上增加"結(jié)束指定應(yīng)用"的選項(xiàng); 當(dāng)用戶選中該選項(xiàng)時(shí)認(rèn)為用戶選擇結(jié)束該選項(xiàng)指定的應(yīng)用程序,結(jié)束操作。
本發(fā)明提供的應(yīng)用程序調(diào)度模塊包括存儲(chǔ)單元、切換單元;該應(yīng)用程 序調(diào)度才莫塊可以集成在用戶識(shí)別卡中,也可以集成在終端里。所述存儲(chǔ)單元包括應(yīng)用環(huán)境暫存區(qū)和用于保存當(dāng)前執(zhí)行的應(yīng)用程序數(shù)據(jù)
的應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū);
所述切換單元用于當(dāng)需要切換應(yīng)用程序時(shí),將當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)
據(jù)保存在應(yīng)用環(huán)境暫存區(qū)中;判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng),如果已啟 動(dòng),則將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū) 中后執(zhí)行該應(yīng)用程序;否則直4妻執(zhí)行該應(yīng)用程序。
其中,所述應(yīng)用程序的數(shù)據(jù)可以包括應(yīng)用程序在執(zhí)行過程中在應(yīng)用運(yùn) 行環(huán)境存儲(chǔ)區(qū)中建立的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū);其中臨時(shí)環(huán)境變量 至少包括一個(gè)變量用于保存此應(yīng)用程序正在處理或顯示的頁面在頁面緩存區(qū) 內(nèi)的位置信息。
所述應(yīng)用程序調(diào)度才莫塊還可以包括
維護(hù)單元,用于為每個(gè)應(yīng)用程序分配一個(gè)對(duì)應(yīng)的應(yīng)用標(biāo)識(shí),建立全部應(yīng) 用程序列表和已啟動(dòng)的應(yīng)用程序列表;將各應(yīng)用程序和其應(yīng)用標(biāo)識(shí)之間的對(duì) 應(yīng)關(guān)系保存在所述全部應(yīng)用程序列表中,將已啟動(dòng)還未關(guān)閉的各應(yīng)用程序?qū)?應(yīng)的應(yīng)用標(biāo)識(shí)保存在所述已啟動(dòng)的應(yīng)用程序列表中;以及建立用于保存當(dāng)前 執(zhí)4亍的應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)的當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)。
其中,所述切換單元判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng)可以是指所述 切換單元在已啟動(dòng)的應(yīng)用程序列表中查找是否存在待執(zhí)行應(yīng)用程序?qū)?yīng)的應(yīng) 用標(biāo)識(shí);如果存在,則判斷待執(zhí)行的應(yīng)用程序已啟動(dòng),否則判斷待執(zhí)行的應(yīng) 用程序未啟動(dòng)。
所述應(yīng)用程序調(diào)度才莫塊還可以包括
切換判斷單元,用于當(dāng)用戶識(shí)別卡收到攜帶應(yīng)用標(biāo)識(shí)的信息時(shí),判斷信 息所攜帶的應(yīng)用標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)是否相同,如果不同則發(fā)送第一切 換指令給切換單元,其中攜帶所述信息攜帶的應(yīng)用標(biāo)識(shí)作為待執(zhí)行應(yīng)用程序 的應(yīng)用標(biāo)識(shí),否則不處理;以及當(dāng)用戶選中一項(xiàng)應(yīng)用程序時(shí),判斷用戶所選 擇的應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)是否相同,如果不同則發(fā) 送第二切換指令給切換單元,其中攜帶用戶所選擇的應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo) 識(shí)作為待執(zhí)行應(yīng)用程序的應(yīng)用標(biāo)識(shí),否則不處理。所述切換單元當(dāng)收到第 一或第二切換指令時(shí)判斷需要切換應(yīng)用程序。
其中,當(dāng)切換單元收到第一切換指令,并且判斷待執(zhí)行的應(yīng)用程序已啟 動(dòng)時(shí),將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)
區(qū)中后執(zhí)行該應(yīng)用程序具體可以是指
切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);將信息所攜帶的應(yīng)用標(biāo)識(shí) 所對(duì)應(yīng)的應(yīng)用程序的數(shù)據(jù),從應(yīng)用環(huán)境暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū) 的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中,將信息交給該應(yīng)用程序處理;發(fā)送標(biāo) 識(shí)更新指令給維護(hù)單元,其中攜帶所述信息所攜帶的應(yīng)用標(biāo)識(shí);
維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí)。
其中,當(dāng)切換單元收到第二切換指令,并且判斷待執(zhí)行的應(yīng)用程序已啟 動(dòng)時(shí),將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū) 中后執(zhí)行該應(yīng)用程序具體可以是指
切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);從應(yīng)用環(huán)境暫存區(qū)中將用 戶所選應(yīng)用程序的數(shù)據(jù),復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí) 頁面緩存區(qū)中;根據(jù)該應(yīng)用程序的臨時(shí)環(huán)境變量中保存的應(yīng)用程序正在處理 的頁面信息,從應(yīng)用程序臨時(shí)頁面緩存區(qū)中取出頁面數(shù)據(jù),生成命令指示終 端將頁面顯示在屏幕上;發(fā)送標(biāo)識(shí)更新指令給維護(hù)單元,其中攜帶用戶所選 應(yīng)用考呈序?qū)?yīng)的應(yīng)用標(biāo)識(shí);
維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí)。
當(dāng)待執(zhí)行的應(yīng)用程序已啟動(dòng)時(shí),如果待執(zhí)行的應(yīng)用程序所占用的存儲(chǔ)空 間大于或等于當(dāng)前執(zhí)行的應(yīng)用程序時(shí),切換單元不清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū) 中的數(shù)據(jù)也是允許的,因?yàn)閷⒋龍?zhí)行的應(yīng)用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn)行環(huán)境 存儲(chǔ)區(qū)后,會(huì)完全覆蓋當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù);當(dāng)然,比較保險(xiǎn)和簡單 (因?yàn)闊o需比較兩者的存儲(chǔ)區(qū)大小)的方法是切換單元全部清空應(yīng)用運(yùn)行環(huán) 境存儲(chǔ)區(qū)中的數(shù)據(jù)。
其中,當(dāng)切換單元收到第一切換指令,并且判斷待執(zhí)行的應(yīng)用程序未啟動(dòng)時(shí),執(zhí)行該應(yīng)用程序具體可以是指
切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查 找信息所攜帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序,在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于該 應(yīng)用程序的存儲(chǔ)區(qū),啟動(dòng)該應(yīng)用程序;將收到的信息交給該應(yīng)用程序處理; 發(fā)送標(biāo)識(shí)更新指令和已啟動(dòng)列表更新指令給維護(hù)單元,其中均攜帶用戶所選 應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);
維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí);收到已啟動(dòng)列表更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)添加到已啟 動(dòng)的應(yīng)用程序列表。
所述全部應(yīng)用程序列表還可以包括各應(yīng)用程序?qū)?yīng)的首頁入口地址。
其中,當(dāng)切換單元收到第二切換指令,并且判斷待執(zhí)行的應(yīng)用程序未啟 動(dòng)時(shí),執(zhí)行該應(yīng)用程序具體可以是指
切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查 找用戶所選應(yīng)用程序?qū)?yīng)的首頁入口地址;在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于用 戶所選應(yīng)用程序的存儲(chǔ)區(qū);根據(jù)所述首頁入口地址,取出用戶所選應(yīng)用程序 的首頁,生成命令指示終端將該頁面顯示在屏幕上;發(fā)送標(biāo)識(shí)更新指令和已 啟動(dòng)列表更新指令給維護(hù)單元,其中均攜帶用戶所選應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo) 識(shí);
維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí);收到已啟動(dòng)列表更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)添加到已啟 動(dòng)的應(yīng)用程序列表。
所述應(yīng)用程序調(diào)度才莫塊還可以包括
應(yīng)用結(jié)束單元,用于當(dāng)收到用戶結(jié)束當(dāng)前應(yīng)用程序的指令時(shí),清除應(yīng)用 環(huán)境暫存區(qū)中該應(yīng)用程序所占用的存儲(chǔ)區(qū),發(fā)送已啟動(dòng)列表刪除指令給維護(hù) 單元,其中攜帶該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);以及判斷已啟動(dòng)的應(yīng)用程序列 表中是否還有其他應(yīng)用標(biāo)識(shí),如果沒有,則生成命令指示終端清除屏幕顯示, 并指示終端進(jìn)入空閑狀態(tài),發(fā)送標(biāo)識(shí)清除指令給維護(hù)單元;如果有則選中任 一應(yīng)用標(biāo)識(shí),發(fā)送標(biāo)識(shí)更新指令給維護(hù)單元,其中攜帶選中的應(yīng)用標(biāo)識(shí),并從應(yīng)用環(huán)境暫存區(qū)中,將該應(yīng)用標(biāo)識(shí)所對(duì)應(yīng)的應(yīng)用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn) 行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中,根據(jù)該應(yīng)用程序臨時(shí)環(huán) 境變量中保存的應(yīng)用程序正在處理的頁面信息,從應(yīng)用程序臨時(shí)頁面緩存區(qū)
中取出頁面數(shù)據(jù),生成命令指示終端將頁面顯示在屏幕上;
維護(hù)單元還用于收到標(biāo)識(shí)清除指令后,清除當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);收到已 啟動(dòng)列表刪除指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)從已啟動(dòng)的應(yīng)用程序列表中刪 除。
應(yīng)用結(jié)束單元還用于當(dāng)收到用戶結(jié)束全部應(yīng)用程序的指令時(shí),清除全部 應(yīng)用環(huán)境暫存區(qū);清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù); 生成命令指示終端清除屏幕顯示,并指示終端進(jìn)入空閑狀態(tài);發(fā)送標(biāo)識(shí)清除 指令和已啟動(dòng)列表清除指令給維護(hù)單元;
維護(hù)單元還用于收到已啟動(dòng)列表清除指令時(shí),刪除已啟動(dòng)的應(yīng)用程序列 表中所有應(yīng)用標(biāo)識(shí)。
應(yīng)用結(jié)束單元還用于當(dāng)收到用戶結(jié)束任一已啟動(dòng)的非當(dāng)前應(yīng)用程序的指 令時(shí),在全部應(yīng)用程序列表中查找該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),發(fā)送已啟動(dòng) 列表刪除指令給維護(hù)單元,其中攜帶該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),將應(yīng)用環(huán) 境暫存區(qū)中該應(yīng)用程序的數(shù)據(jù)刪除。
本發(fā)明提供的應(yīng)用程序調(diào)度模塊的一個(gè)具體實(shí)施框圖如圖1所示。 下面用本發(fā)明的兩個(gè)應(yīng)用實(shí)例進(jìn)一步加以i兌明。
第一個(gè)應(yīng)用實(shí)例是用戶識(shí)別模塊收到一條帶有應(yīng)用標(biāo)識(shí)的信息時(shí)的操作 步驟如圖2所示
201、 用戶識(shí)別模塊收到從網(wǎng)關(guān)發(fā)來的下行信息,其中攜帶有應(yīng)用標(biāo)識(shí);
202、 解析出該應(yīng)用標(biāo)識(shí),并與保存的當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)進(jìn)行比較,如果 相同,則不進(jìn)行應(yīng)用程序切換操作,將該信息交給當(dāng)前應(yīng)用程序進(jìn)行處理, 結(jié)束操作;否則進(jìn)行步驟203;
203、 首先將當(dāng)前正在執(zhí)行的應(yīng)用程序的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū) 保存到應(yīng)用環(huán)境暫存區(qū)中;204、根據(jù)收到的信息所攜帶的應(yīng)用標(biāo)識(shí),查找已啟動(dòng)的應(yīng)用程序列表;
如果在此列表中發(fā)現(xiàn)該應(yīng)用標(biāo)識(shí),表示對(duì)應(yīng)的應(yīng)用程序已啟動(dòng),則進(jìn)行步驟
205;否則表示對(duì)應(yīng)的應(yīng)用程序尚未啟動(dòng),需要啟動(dòng)新的應(yīng)用程序,進(jìn)行步驟 206;
205 、從應(yīng)用環(huán)境暫存區(qū)中將上述應(yīng)用標(biāo)識(shí)所對(duì)應(yīng)的應(yīng)用程序的數(shù)據(jù)復(fù)制 到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中;執(zhí)行步驟207;
206、 在全部應(yīng)用列表中查找信息所攜帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序,在 應(yīng)用環(huán)境暫存區(qū)建立該應(yīng)用程序?qū)?yīng)的存儲(chǔ)區(qū),清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的 臨時(shí)環(huán)境變量和臨時(shí)頁面i爰存區(qū);
207、 將信息所攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);
208、 將上述收到的信息交給所述信息所攜帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序 處理;結(jié)束操作。
第二個(gè)應(yīng)用實(shí)例是用戶主動(dòng)選擇應(yīng)用程序時(shí)的操作步驟
301、 用戶按手機(jī)設(shè)備上的"退出/終止"鍵,用戶識(shí)別模塊接獲TR( QUIT) 的終端響應(yīng);
302、 用戶識(shí)別模塊根據(jù)全部應(yīng)用列表生成SELECT ITEM命令,發(fā)給手 機(jī)設(shè)備;
303、 手機(jī)設(shè)備根據(jù)SELECT ITEM命令,在屏幕上顯示菜單列表,由用 戶選擇需要切換到的應(yīng)用程序;
304、 用戶選擇一項(xiàng)應(yīng)用程序,然后按確i人鍵;
305、 用戶識(shí)別模塊接獲TR (OK)的終端響應(yīng),并解析出用戶所選應(yīng)用 程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),并與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)進(jìn)行比較;如果相同,則不進(jìn) 行應(yīng)用程序切換操作,結(jié)束操作;否則進(jìn)行步驟306;
306、 將當(dāng)前正在執(zhí)行的應(yīng)用的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)保存到應(yīng) 用環(huán)境暫存區(qū)中;
307、 根據(jù)解析出的應(yīng)用標(biāo)識(shí),查找已啟動(dòng)的應(yīng)用程序列表;如果在此列表中發(fā)現(xiàn)該應(yīng)用標(biāo)識(shí),表示對(duì)應(yīng)的應(yīng)用程序已啟動(dòng),則進(jìn)行步驟308;否則 表示對(duì)應(yīng)的應(yīng)用程序尚未啟動(dòng),需要啟動(dòng)新的應(yīng)用程序,進(jìn)行步驟310;
308、 從應(yīng)用環(huán)境暫存區(qū)中,將用戶所選應(yīng)用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn)行 環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面-爰存區(qū)中;將用戶所選應(yīng)用程序?qū)?yīng) 的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)4亍應(yīng)用標(biāo)識(shí);
309、 根據(jù)該應(yīng)用臨時(shí)環(huán)境變量中保存的應(yīng)用程序正在處理的頁面信息, 從應(yīng)用臨時(shí)頁面緩存區(qū)中取出頁面數(shù)據(jù),生成命令指示手機(jī)設(shè)備將其顯示在 屏幕上,結(jié)束操作;
310、 在應(yīng)用環(huán)境暫存區(qū)建立新應(yīng)用對(duì)應(yīng)的存儲(chǔ)區(qū),清空應(yīng)用運(yùn)行環(huán)境存 儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū),在全部應(yīng)用列表中查找用戶所選應(yīng) 用程序?qū)?yīng)的首頁入口地址;
311、 將用戶所選應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);
312、 根據(jù)所述首頁入口地址,取出用戶所選應(yīng)用程序的首頁,生成命令 指示手機(jī)設(shè)備將所迷首頁顯示在屏幕上;結(jié)束操作。
當(dāng)然,本發(fā)明還可有其他多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的 情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形, 但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1、一種進(jìn)行應(yīng)用程序調(diào)度的方法,包括建立應(yīng)用環(huán)境暫存區(qū)和用于保存當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù)的應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū);需要切換應(yīng)用程序時(shí),將當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù)保存在應(yīng)用環(huán)境暫存區(qū)中;判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng),如果已啟動(dòng),則將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程序;否則直接執(zhí)行該應(yīng)用程序啟動(dòng)過程。
2、 如權(quán)利要求l所述的方法,其特征在于,還包括為每個(gè)應(yīng)用程序分配一個(gè)對(duì)應(yīng)的應(yīng)用標(biāo)識(shí),建立全部應(yīng)用程序列表和已 啟動(dòng)的應(yīng)用程序列表;所述全部應(yīng)用程序列表用于記載各應(yīng)用程序和其應(yīng)用 標(biāo)識(shí)之間的對(duì)應(yīng)關(guān)系;所述已啟動(dòng)的應(yīng)用程序列表用于記載已啟動(dòng)還未關(guān)閉 的各應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);建立當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí),用于保存當(dāng)前執(zhí)行 的應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng)是指在已啟動(dòng)的應(yīng)用程序列表中查 找是否存在待執(zhí)行應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);如果存在,則判斷待執(zhí)行的應(yīng) 用程序已啟動(dòng),否則判斷待執(zhí)行的應(yīng)用程序未啟動(dòng)。
3、 如權(quán)利要求2所述的方法,其特征在于,需要切換應(yīng)用程序的情況包 括以下情況中的任一種第一種情況是用戶識(shí)別卡收到一條攜帶應(yīng)用標(biāo)識(shí)的信息,如果信息所攜 帶的應(yīng)用標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)不同,則需要切換應(yīng)用程序,待執(zhí)行的應(yīng) 用程序?yàn)樾畔⑺鶖y帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序;第二種情況是用戶通過按終端上指定的應(yīng)用程序切換鍵,調(diào)出應(yīng)用程序 列表,用戶從中選中一項(xiàng)應(yīng)用程序;如果用戶所選擇的應(yīng)用程序?qū)?yīng)的應(yīng)用 標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)不同,則需要切換應(yīng)用程序,待執(zhí)行的應(yīng)用程序?yàn)?用戶所選的應(yīng)用禾呈序。
4、 如權(quán)利要求3所述的方法,其特征在于,所述應(yīng)用程序的數(shù)據(jù)包括應(yīng)用程序在執(zhí)行過程中在應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中建立的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū);其中臨時(shí)環(huán)境變量至少包括一個(gè)變量用于保存此應(yīng)用程序 正在處理或顯示的頁面在頁面緩存區(qū)內(nèi)的位置信息;當(dāng)需要切換應(yīng)用程序的情況為上述第 一種情況,并且待執(zhí)行的應(yīng)用程序 已啟動(dòng)時(shí),將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程序具體是指清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);將信息所攜帶的應(yīng)用標(biāo)識(shí)所對(duì)應(yīng)應(yīng) 用程序的數(shù)據(jù),從應(yīng)用環(huán)境暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境 變量和臨時(shí)頁面緩存區(qū)中,將信息交給該應(yīng)用程序處理;將信息所攜帶的應(yīng) 用標(biāo)識(shí)保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);當(dāng)需要切換應(yīng)用程序的情況為上述第二種情況,并且待執(zhí)行的應(yīng)用程序 已啟動(dòng)時(shí),將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境 存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程序具體是指清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);從應(yīng)用環(huán)境暫存區(qū)中將用戶所選應(yīng) 用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū) 中;將用戶所選應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);才艮據(jù)該 應(yīng)用程序的臨時(shí)環(huán)境變量中保存的應(yīng)用程序正在處理的頁面信息,從應(yīng)用程 序臨時(shí)頁面緩存區(qū)中取出頁面數(shù)據(jù),生成命令指示終端將頁面顯示在屏幕上;當(dāng)需要切換應(yīng)用程序的情況為上述第一種情況,并且待執(zhí)行的應(yīng)用程序 未啟動(dòng)時(shí),執(zhí)行該應(yīng)用程序具體是指清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查找信息所 攜帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序,在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于該應(yīng)用程序 的存儲(chǔ)區(qū),啟動(dòng)該應(yīng)用程序;將收到的信息交給該應(yīng)用程序處理;將信息所 攜帶的應(yīng)用標(biāo)識(shí)添加到已啟動(dòng)列表,并保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);所述全部應(yīng)用程序列表還包括各應(yīng)用程序?qū)?yīng)的首頁入口地址;當(dāng)需要切換應(yīng)用程序的情況為上述第二種情況,并且待執(zhí)行的應(yīng)用程序 未啟動(dòng)時(shí),執(zhí)行該應(yīng)用程序具體是指清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查找用戶所選應(yīng)用程序?qū)?yīng)的首頁入口地址;在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于用戶所選應(yīng) 用程序的存儲(chǔ)區(qū);根據(jù)所述首頁入口地址,取出用戶所選應(yīng)用程序的首頁, 生成命令指示終端將該頁面顯示在屏幕上;將用戶所選應(yīng)用程序?qū)?yīng)的應(yīng)用 標(biāo)識(shí)添加到已啟動(dòng)列表,并保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)。
5、 如權(quán)利要求1到4中任一項(xiàng)所述的方法,其特征在于,還包括當(dāng)用戶選擇結(jié)束當(dāng)前應(yīng)用程序時(shí),從已啟動(dòng)的應(yīng)用程序列表中刪除當(dāng)前 執(zhí)行應(yīng)用標(biāo)識(shí),并清除應(yīng)用環(huán)境暫存區(qū)中該應(yīng)用程序所占用的存儲(chǔ)區(qū);判斷 已啟動(dòng)的應(yīng)用程序列表中是否還有其他應(yīng)用標(biāo)識(shí),如果沒有,則生成命令指 示終端清除屏幕顯示,并指示終端進(jìn)入空閑狀態(tài),清除當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí), 結(jié)束操作;否則選中任一應(yīng)用標(biāo)識(shí),將該應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí); 從應(yīng)用環(huán)境暫存區(qū)中,將該應(yīng)用標(biāo)識(shí)所對(duì)應(yīng)的應(yīng)用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn) 行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中;根據(jù)該應(yīng)用程序臨時(shí)環(huán) 境變量中保存的應(yīng)用程序正在處理的頁面信息,從應(yīng)用程序臨時(shí)頁面緩存區(qū) 中取出頁面數(shù)據(jù),生成命令指示終端將頁面顯示在屏幕上,結(jié)束操作;當(dāng)用戶選擇結(jié)束全部應(yīng)用程序時(shí),清除全部應(yīng)用環(huán)境暫存區(qū);清空應(yīng)用 運(yùn)行環(huán)境存儲(chǔ)區(qū)中當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù);清除已啟動(dòng)的應(yīng)用程序列表 和當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);生成命令指示終端清除屏幕顯示,并指示終端進(jìn)入空 閑狀態(tài),結(jié)束操作當(dāng)用戶選擇結(jié)束任一已啟動(dòng)的非當(dāng)前應(yīng)用程序時(shí),在全部應(yīng)用程序列表 中查找該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),從已啟動(dòng)的應(yīng)用列表中刪除該應(yīng)用標(biāo)識(shí), 將應(yīng)用環(huán)境暫存區(qū)中該應(yīng)用程序的數(shù)據(jù)刪除,結(jié)束操作。
6、 一種應(yīng)用程序調(diào)度才莫塊,其特征在于,包括存儲(chǔ)單元、切換單元;所述存儲(chǔ)單元包括應(yīng)用環(huán)境暫存區(qū)和用于保存當(dāng)前執(zhí)行的應(yīng)用程序數(shù)據(jù) 的應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū);所述切換單元用于當(dāng)需要切換應(yīng)用程序時(shí),將當(dāng)前執(zhí)行的應(yīng)用程序的數(shù) 據(jù)保存在應(yīng)用環(huán)境暫存區(qū)中;清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);判斷待執(zhí) 行的應(yīng)用程序是否已啟動(dòng),如果已啟動(dòng),則將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境 暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程序;否則直接執(zhí)行該應(yīng)用程序。
7、 如權(quán)利要求6所述的模塊,其特征在于,還包括維護(hù)單元,用于為每個(gè)應(yīng)用程序分配一個(gè)對(duì)應(yīng)的應(yīng)用標(biāo)識(shí),建立全部應(yīng) 用程序列表和已啟動(dòng)的應(yīng)用程序列表;將各應(yīng)用程序和其應(yīng)用標(biāo)識(shí)之間的對(duì) 應(yīng)關(guān)系保存在所述全部應(yīng)用程序列表中,將已啟動(dòng)還未關(guān)閉的各應(yīng)用程序?qū)?應(yīng)的應(yīng)用標(biāo)識(shí)保存在所述已啟動(dòng)的應(yīng)用程序列表中;以及建立用于保存當(dāng)前 執(zhí)行的應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)的當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí);所述切換單元判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng)是指所述切換單元在 已啟動(dòng)的應(yīng)用程序列表中查找是否存在待執(zhí)行應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);如 果存在,則判斷待執(zhí)行的應(yīng)用程序已啟動(dòng),否則判斷待執(zhí)行的應(yīng)用程序未啟 動(dòng)。
8、 如權(quán)利要求7所述的模塊,其特征在于,還包括切換判斷單元,用于當(dāng)用戶識(shí)別卡收到攜帶應(yīng)用標(biāo)識(shí)的信息時(shí),判斷信 息所攜帶的應(yīng)用標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)是否相同,如果不同則發(fā)送第一切 換指令給切換單元,其中攜帶所述信息攜帶的應(yīng)用標(biāo)識(shí)作為待執(zhí)行應(yīng)用程序 的應(yīng)用標(biāo)識(shí);以及當(dāng)用戶選中一項(xiàng)應(yīng)用程序時(shí),判斷用戶所選擇的應(yīng)用程序 對(duì)應(yīng)的應(yīng)用標(biāo)識(shí)與當(dāng)前執(zhí)行應(yīng)用標(biāo)識(shí)是否相同,如果不同則發(fā)送第二切換指 令給切換單元,其中攜帶用戶所選擇的應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí)作為待執(zhí)行 應(yīng)用程序的應(yīng)用標(biāo)識(shí);所述切換單元當(dāng)收到第 一或第二切換指令時(shí)判斷需要切換應(yīng)用程序。
9、 如權(quán)利要求8所述的模塊,其特征在于,所述應(yīng)用程序的數(shù)據(jù)包括應(yīng)用程序在執(zhí)行過程中在應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中建立的臨時(shí)環(huán)境變量和 臨時(shí)頁面緩存區(qū);其中臨時(shí)環(huán)境變量至少包括一個(gè)變量用于保存此應(yīng)用程序 正在處理或顯示的頁面在頁面緩存區(qū)內(nèi)的位置信息;當(dāng)切換單元收到第 一切換指令,并且判斷待執(zhí)行的應(yīng)用程序已啟動(dòng)時(shí), 將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后 執(zhí)行該應(yīng)用程序具體是指切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);將信息所攜帶的應(yīng)用標(biāo)識(shí) 所對(duì)應(yīng)的應(yīng)用程序的數(shù)據(jù),從應(yīng)用環(huán)境暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中,將信息交給該應(yīng)用程序處理;發(fā)送標(biāo) 識(shí)更新指令給維護(hù)單元,其中攜帶所述信息所攜帶的應(yīng)用標(biāo)識(shí);維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí);當(dāng)切換單元收到第二切換指令,并且判斷待執(zhí)行的應(yīng)用程序已啟動(dòng)時(shí), 將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后執(zhí) 行該應(yīng)用程序具體是指切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);從應(yīng)用環(huán)境暫存區(qū)中將用 戶所選應(yīng)用程序的數(shù)據(jù),復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí) 頁面緩存區(qū)中;根據(jù)該應(yīng)用程序的臨時(shí)環(huán)境變量中保存的應(yīng)用程序正在處理 的頁面信息,從應(yīng)用程序臨時(shí)頁面緩存區(qū)中取出頁面數(shù)據(jù),生成命令指示終 端將頁面顯示在屏幕上;發(fā)送標(biāo)識(shí)更新指令給維護(hù)單元,其中攜帶用戶所選 應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí);當(dāng)切換單元收到第 一切換指令,并且判斷待執(zhí)行的應(yīng)用程序未啟動(dòng)時(shí), 執(zhí)行該應(yīng)用程序具體是指切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查 找信息所攜帶的應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序,在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于該 應(yīng)用程序的存儲(chǔ)區(qū);將收到的信息交給該應(yīng)用程序處理;發(fā)送標(biāo)識(shí)更新指令 和已啟動(dòng)列表更新指令給維護(hù)單元,其中均攜帶用戶所選應(yīng)用程序?qū)?yīng)的應(yīng) 用標(biāo)識(shí);維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí);收到已啟動(dòng)列表更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)添加到已啟 動(dòng)的應(yīng)用程序列表;所述全部應(yīng)用程序列表還包括各應(yīng)用程序?qū)?yīng)的首頁入口地址;當(dāng)切換單元收到第二切換指令,并且判斷待執(zhí)行的應(yīng)用程序未啟動(dòng)時(shí), 執(zhí)行該應(yīng)用程序具體是指切換單元清空應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中的數(shù)據(jù);在全部應(yīng)用程序列表中查找用戶所選應(yīng)用程序?qū)?yīng)的首頁入口地址;在應(yīng)用環(huán)境暫存區(qū)建立對(duì)應(yīng)于用 戶所選應(yīng)用程序的存儲(chǔ)區(qū),啟動(dòng)該應(yīng)用程序;根據(jù)所述首頁入口地址,取出 用戶所選應(yīng)用程序的首頁,生成命令指示終端將該頁面顯示在屏幕上;發(fā)送 標(biāo)識(shí)更新指令和已啟動(dòng)列表更新指令給維護(hù)單元,其中均攜帶用戶所選應(yīng)用 程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);維護(hù)單元收到標(biāo)識(shí)更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)保存為當(dāng)前執(zhí)行 應(yīng)用標(biāo)識(shí);收到已啟動(dòng)列表更新指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)添加到已啟 動(dòng)的應(yīng)用程序列表。
10、如權(quán)利要求6到9中任一項(xiàng)所述的模塊,其特征在于,還包括 應(yīng)用結(jié)束單元,用于當(dāng)收到用戶結(jié)束當(dāng)前應(yīng)用程序的指令時(shí),清除應(yīng)用 環(huán)境暫存區(qū)中該應(yīng)用程序所占用的存儲(chǔ)區(qū),發(fā)送已啟動(dòng)列表刪除指令給維護(hù) 單元,其中攜帶該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);以及判斷已啟動(dòng)的應(yīng)用禾呈序列 表中是否還有其他應(yīng)用標(biāo)識(shí),如果沒有,則生成命令指示終端清除屏幕顯示, 并指示終端進(jìn)入空閑狀態(tài),發(fā)送標(biāo)識(shí)清除指令給維護(hù)單元;如果有則選中任 一應(yīng)用標(biāo)識(shí),發(fā)送標(biāo)識(shí)更新指令給維護(hù)單元,其中攜帶選中的應(yīng)用標(biāo)識(shí),并 從應(yīng)用環(huán)境暫存區(qū)中,將該應(yīng)用標(biāo)識(shí)所對(duì)應(yīng)的應(yīng)用程序的數(shù)據(jù)復(fù)制到應(yīng)用運(yùn) 行環(huán)境存儲(chǔ)區(qū)的臨時(shí)環(huán)境變量和臨時(shí)頁面緩存區(qū)中,根據(jù)該應(yīng)用程序臨時(shí)環(huán) 境變量中保存的應(yīng)用程序正在處理的頁面信息,從應(yīng)用程序臨時(shí)頁面^爰存區(qū) 中取出頁面數(shù)據(jù),生成命令指示終端將頁面顯示在屏幕上;還用于當(dāng)收到用 戶結(jié)束全部應(yīng)用程序的指令時(shí),清除全部應(yīng)用環(huán)境暫存區(qū);清空應(yīng)用運(yùn)行環(huán) 境存儲(chǔ)區(qū)中當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù);生成命令指示終端清除屏幕顯示, 并指示終端進(jìn)入空閑狀態(tài);發(fā)送標(biāo)識(shí)清除指令和已啟動(dòng)列表清除指令給維護(hù) 單元;還用于當(dāng)收到用戶結(jié)束任一已啟動(dòng)的非當(dāng)前應(yīng)用程序的指令時(shí),在全 部應(yīng)用程序列表中查找該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),發(fā)送已啟動(dòng)列表刪除指 令給維護(hù)單元,其中攜帶該應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),將應(yīng)用環(huán)境暫存區(qū)中 該應(yīng)用程序的數(shù)據(jù)刪除;維護(hù)單元還用于收到標(biāo)識(shí)清除指令后,清除當(dāng)前^l行應(yīng)用標(biāo)識(shí);收到已 啟動(dòng)列表刪除指令后,將其中攜帶的應(yīng)用標(biāo)識(shí)從已啟動(dòng)的應(yīng)用程序列表中刪 除;收到已啟動(dòng)列表清除指令時(shí),刪除已啟動(dòng)的應(yīng)用程序列表中所有應(yīng)用標(biāo) 識(shí)。
全文摘要
本發(fā)明公開了一種進(jìn)行應(yīng)用程序調(diào)度的方法及應(yīng)用程序調(diào)度模塊;方法包括建立應(yīng)用環(huán)境暫存區(qū)和用于保存當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù)的應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū);需要切換應(yīng)用程序時(shí),將當(dāng)前執(zhí)行的應(yīng)用程序的數(shù)據(jù)保存在應(yīng)用環(huán)境暫存區(qū)中;判斷待執(zhí)行的應(yīng)用程序是否已啟動(dòng),如果已啟動(dòng),則將該應(yīng)用程序的數(shù)據(jù)從應(yīng)用環(huán)境暫存區(qū)中,復(fù)制到應(yīng)用運(yùn)行環(huán)境存儲(chǔ)區(qū)中后執(zhí)行該應(yīng)用程序;否則直接執(zhí)行該應(yīng)用程序啟動(dòng)過程。本發(fā)明的技術(shù)方案能在單進(jìn)程的SIM/UM操作系統(tǒng)中實(shí)現(xiàn)多應(yīng)用程序執(zhí)行,并實(shí)現(xiàn)多應(yīng)用程序之間的切換,在應(yīng)用程序頻繁切換時(shí)不必大量進(jìn)行結(jié)束和啟動(dòng)應(yīng)用程序的工作,從而改善用戶的使用體驗(yàn),節(jié)約不必要的通信交互。
文檔編號(hào)G06F9/48GK101615141SQ20081011568
公開日2009年12月30日 申請(qǐng)日期2008年6月26日 優(yōu)先權(quán)日2008年6月26日
發(fā)明者鷹 陳 申請(qǐng)人:鷹 陳