亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

隔離系統(tǒng)切換時(shí)進(jìn)程運(yùn)行狀態(tài)的調(diào)整方法以及智能終端的制作方法_2

文檔序號:9274586閱讀:來源:國知局
系統(tǒng)管理模塊102向該前臺(tái)隔離系統(tǒng)內(nèi)的所有進(jìn)程發(fā)送后臺(tái)切換信號,使各進(jìn)程切換進(jìn)入后臺(tái)狀態(tài)。
[0032]當(dāng)前未與用戶交互的后臺(tái)隔離系統(tǒng)于切換時(shí),則由隔離系統(tǒng)管理模塊102向該后臺(tái)隔離系統(tǒng)內(nèi)的所有進(jìn)程發(fā)送前臺(tái)切換信號,使后臺(tái)隔離系統(tǒng)內(nèi)的各進(jìn)程由后臺(tái)狀態(tài)切換至前臺(tái)狀態(tài)。
[0033]進(jìn)一步地,所述隔離系統(tǒng)管理模塊102還用于在發(fā)送前臺(tái)切換信號或后臺(tái)切換信號之前,根據(jù)隔離系統(tǒng)管理模塊102確定的待切換的隔離系統(tǒng)當(dāng)前的運(yùn)行狀態(tài),以及預(yù)設(shè)的切換策略,決定進(jìn)行切換。
[0034]例如,隔離系統(tǒng)管理模塊102確定出的待切換的隔離系統(tǒng)當(dāng)前的運(yùn)行狀態(tài)為前臺(tái)運(yùn)行狀態(tài)時(shí),根據(jù)所述隔離系統(tǒng)管理模塊102中預(yù)設(shè)的切換策略,在單位時(shí)長無響應(yīng)或者到達(dá)預(yù)定時(shí)長時(shí),由所述隔離系統(tǒng)管理模塊102決定該前臺(tái)隔離系統(tǒng)切換到后臺(tái)繼續(xù)運(yùn)行,以釋放更多的系統(tǒng)資源。
[0035]進(jìn)一步地,所述隔離系統(tǒng)管理模塊102還用于存儲(chǔ)所述隔離系統(tǒng)切換后的前后臺(tái)的狀態(tài);或者將待切換的隔離系統(tǒng)對應(yīng)的隔離空間描述符中的前后臺(tái)字段進(jìn)行更新;或者將所述進(jìn)程對應(yīng)的進(jìn)程描述符中的前后臺(tái)字段進(jìn)行更新,關(guān)于該部分的描述詳見于后文。
[0036]結(jié)合圖2所示,隔離系統(tǒng)管理模塊102包括有切換命令解析單元201以及切換信號發(fā)送單元202,其中的切換命令解析單元201用于接收到切換命令后,根據(jù)其中攜帶的參數(shù)確定待切換的隔離系統(tǒng);其中的切換信號發(fā)送單元202用于向確定出的待切換的隔離系統(tǒng)內(nèi)的進(jìn)程發(fā)送前臺(tái)切換信號或后臺(tái)切換信號,從而使得所述進(jìn)程調(diào)用針對所述前臺(tái)切換信號或后臺(tái)切換信號預(yù)先注冊的函數(shù)調(diào)整運(yùn)行狀態(tài)。
[0037]隔離系統(tǒng)管理模塊102接收到的前述切換命令均經(jīng)過切換命令解析單元201解析過通訊傳遞給切換信號發(fā)送單元202,進(jìn)一步將用于狀態(tài)轉(zhuǎn)換的切換信號傳遞至相應(yīng)的待切換的隔咼系統(tǒng)。
[0038]本發(fā)明涉及的一種隔離系統(tǒng)切換時(shí)進(jìn)程運(yùn)行狀態(tài)的調(diào)整方法,其應(yīng)用進(jìn)程運(yùn)行場景為Iinux操作系統(tǒng),本發(fā)明方法的實(shí)現(xiàn)依賴于三個(gè)基本條件:基于操作系統(tǒng)內(nèi)核設(shè)置的隔離系統(tǒng)管理模塊,基于Linux Container虛擬化技術(shù)實(shí)現(xiàn)的內(nèi)核輕量級虛擬化,以及基于該虛擬化技術(shù)實(shí)現(xiàn)的多隔離系統(tǒng)。
[0039]在本發(fā)明技術(shù)方案中,操作系統(tǒng)可以為傳統(tǒng)意義上的Iinux操作系統(tǒng)或Unix操作系統(tǒng),也可以是基于Iinux操作系統(tǒng)衍生出來的Android系統(tǒng),還可以為以Windows平臺(tái)為基礎(chǔ)的win系統(tǒng),等等,且本發(fā)明中所述的設(shè)備不僅可以指傳統(tǒng)意義上的實(shí)體設(shè)備,也可以為采用云計(jì)算技術(shù)的虛擬運(yùn)行設(shè)備,如虛擬服務(wù)器等,而基于Linux Container虛擬化技術(shù)實(shí)現(xiàn)的多隔離系統(tǒng)則為可以在設(shè)備上運(yùn)行的以上種類的操作系統(tǒng)。以下則以在用戶終端上的Iinux操作系統(tǒng)為例進(jìn)行說明,且該終端上的多個(gè)隔離系統(tǒng)分別為系統(tǒng)A、系統(tǒng)B以及系統(tǒng)C。
[0040]本發(fā)明技術(shù)方案中,利用隔離系統(tǒng)管理模塊在隔離系統(tǒng)切換時(shí)進(jìn)程運(yùn)行狀態(tài)的調(diào)整方法,如圖1所示,則本發(fā)明方法的實(shí)現(xiàn)步驟如下:
[0041]步驟S300:隔離系統(tǒng)管理模塊接收到切換命令后,根據(jù)其中攜帶的參數(shù)確定待切換的隔咼系統(tǒng);
[0042]在內(nèi)核中設(shè)置的隔離系統(tǒng)管理模塊102定義隔離系統(tǒng)切換到前臺(tái)和后臺(tái)的信號,及進(jìn)程的信號響應(yīng)函數(shù),該隔離系統(tǒng)管理模塊102通過設(shè)備節(jié)點(diǎn)(如/P1X)C/XXX,/sys/xxx,或/dev/xxx等)與用戶空間的應(yīng)用程序交互,接收到切換命令。
[0043]用戶空間的應(yīng)用程序向設(shè)備節(jié)點(diǎn)發(fā)送系統(tǒng)前后臺(tái)的切換命令,隔離系統(tǒng)管理模塊102響應(yīng)切換命令,獲取當(dāng)前的該切換命令中攜帶的參數(shù)確定待切換的隔離系統(tǒng)。
[0044]從切換命令中獲取用于確定待切換的隔離系統(tǒng)的參數(shù)的過程如下所述:
[0045]在隔離系統(tǒng)需要發(fā)生切換時(shí),先由上層應(yīng)用根據(jù)各種觸發(fā)策略,如用戶的主動(dòng)切換選擇;事件觸發(fā),如后臺(tái)來電話,需要被切換到前臺(tái)等向隔離系統(tǒng)管理模塊的設(shè)備節(jié)點(diǎn)中發(fā)送切換命令。切換命令可以帶參數(shù),以指定那個(gè)后臺(tái)系統(tǒng)切換到前臺(tái)。
[0046]較佳地,隔離系統(tǒng)管理模塊102接收到命令后,可根據(jù)相關(guān)的策略來決定是否發(fā)生切換:
[0047]具體地,隔離系統(tǒng)管理模塊102接收到命令后,可以根據(jù)預(yù)設(shè)的策略決定是否切換,例如,預(yù)設(shè)的策略中包括有:當(dāng)前臺(tái)系統(tǒng)通話進(jìn)行時(shí),該前臺(tái)系統(tǒng)無論是否接收到切換命令,均不做任何改變,在此策略下的前臺(tái)系統(tǒng)正在通話時(shí),如果接收向后臺(tái)轉(zhuǎn)換的切換命令,則可拒絕切換到后臺(tái),或者直接不響應(yīng)該切換命令,而在通話結(jié)束后再執(zhí)行該切換命令。
[0048]決定進(jìn)行切換后,隔離系統(tǒng)管理模塊102執(zhí)行切換,并進(jìn)行以下步驟:
[0049]步驟S301:隔離系統(tǒng)管理模塊向確定出的待切換的隔離系統(tǒng)內(nèi)的進(jìn)程發(fā)出前臺(tái)切換信號或后臺(tái)切換信號;
[0050]本步驟中,隔離系統(tǒng)管理模塊向待切換為前臺(tái)的隔離系統(tǒng)內(nèi)的進(jìn)程發(fā)送前臺(tái)切換信號;向待切換為后臺(tái)的隔離系統(tǒng)內(nèi)的進(jìn)程發(fā)送后臺(tái)切換信號。
[0051]具體地,在本實(shí)施例中的多個(gè)隔離系統(tǒng)中,在某種情況下如系統(tǒng)A要從前臺(tái)切換到后臺(tái),則由隔離系統(tǒng)管理模塊102向系統(tǒng)A中的所有進(jìn)程發(fā)送響應(yīng)的后臺(tái)切換信號,如SIGBACK切換信號,從而使系統(tǒng)A在由前臺(tái)狀態(tài)切換到后臺(tái)狀態(tài)之后,系統(tǒng)A內(nèi)的所有進(jìn)程均能夠接收該SIGBACK切換信號;
[0052]又如在某種情況下系統(tǒng)B要從后臺(tái)切換到前臺(tái),則由隔離系統(tǒng)管理模塊102向其所有進(jìn)程發(fā)送相關(guān)的變化信號,如SIGFRONT切換信號,則使該系統(tǒng)B中的所有進(jìn)程均能夠接收SIGFRONT切換信號;而對一直在后臺(tái)的系統(tǒng)C和/或其它的系統(tǒng)N,則該隔離系統(tǒng)管理模塊102不向其中正在運(yùn)行的所有進(jìn)程發(fā)送任何信號。
[0053]發(fā)送信號的方法,可調(diào)用Iinux內(nèi)核的相關(guān)函數(shù)。在需要響應(yīng)前后臺(tái)變換事件的進(jìn)程中,利用Iinux信號相關(guān)系統(tǒng)調(diào)用,注冊函數(shù),捕捉SIGFRONT切換信號和SIGBACK切換信號。
[0054]除了發(fā)送前后臺(tái)變換的信號外,還要在隔離系統(tǒng)管理模塊102中或者進(jìn)程描述符的nsproxy對象的前后臺(tái)字段中標(biāo)記前后臺(tái)狀態(tài)。這樣進(jìn)程就可以通過隔離系統(tǒng)管理模塊102的設(shè)備節(jié)點(diǎn)查詢其所處的前后臺(tái)狀態(tài)。隔離系統(tǒng)管理模塊102通過上述標(biāo)記,返回正確的前后臺(tái)狀態(tài)值。
[0055]步驟302:進(jìn)程調(diào)用針對所述前臺(tái)切換信號或后臺(tái)切換信號預(yù)先注冊的函數(shù)調(diào)整運(yùn)行狀態(tài)。
[0056]具體地,切換為后臺(tái)狀態(tài)的隔離系統(tǒng)中的進(jìn)程接收到SIGBACK切換信號后,調(diào)用針對SIGBACK切換信號預(yù)先注冊的處理函數(shù),調(diào)整運(yùn)行狀態(tài),改變至后臺(tái)運(yùn)行行為,包括有停止音樂播放、關(guān)閉wifi連接等。
[0057]切換為前臺(tái)狀態(tài)的隔離系統(tǒng)中的進(jìn)程接收到SIGFRONT切換信號后,調(diào)用針對SIGFRONT切換信號預(yù)先注冊的處理函數(shù),調(diào)整運(yùn)行狀態(tài),改變至前臺(tái)運(yùn)行行為,包括有恢復(fù)音樂的播放,恢復(fù)wifi連接等。
[0058]在實(shí)際應(yīng)用中,可以在針對SIGFRONT切換信號預(yù)先注冊的函數(shù)中申請系統(tǒng)資源,在針對SIGBACK切換信號預(yù)先注冊的函數(shù)中釋放系統(tǒng)資源。
[0059]內(nèi)核中用進(jìn)程描述符structtask_struct結(jié)構(gòu)來描述進(jìn)程,其中的字段nsproxy指向命名空間描述符structnsproxy。命名空間用來將進(jìn)程隔離到不同空間,以實(shí)現(xiàn)系統(tǒng)的隔離。但當(dāng)前的描述符中只做了隔離,即:只標(biāo)記了進(jìn)程所在的隔離空間,而沒有字段來標(biāo)記其所在隔離空間的前后臺(tái)狀態(tài)。
[0060]在本發(fā)明實(shí)施例的優(yōu)選實(shí)施方案中,為了標(biāo)記隔離系統(tǒng)的前后臺(tái)狀態(tài),有以下兩個(gè)實(shí)現(xiàn)方法:
[0061]I)在隔離系統(tǒng)管理模塊中,記錄structnsproxy結(jié)構(gòu)對象的
當(dāng)前第2頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1