專利名稱:提供用于多處理的程序的方法和執(zhí)行該方法的服務(wù)器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及多處理技術(shù),更具體地,涉及提供用于多處理的程序的方法和執(zhí)行向用戶終端提供用于多處理的程序的方法的服務(wù)器。用于多處理的程序?qū)⑴R時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將該實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中。所述方法和服務(wù)器復(fù)制用于多處理的程序并且使實(shí)際程序以用于多處理的程序的名義來(lái)運(yùn)行,如此,使得用戶終端可以以相同的進(jìn)程的名義來(lái)運(yùn)行多個(gè)進(jìn)程,并且以可靠的方式來(lái)操作程序。
背景技術(shù):
在另一個(gè)應(yīng)用程序被運(yùn)行的同時(shí),應(yīng)用程序的可靠操作得不到保障。更具體地,如果在應(yīng)用程序已在運(yùn)行的同時(shí)通過(guò)使用ShellExecute或CreateProcess函數(shù)來(lái)執(zhí)行新的應(yīng)用程序,則通過(guò)安裝在用戶終端中的殺毒程序,新的應(yīng)用程序可能會(huì)被診斷為病毒程序,或者新的應(yīng)用程序可能無(wú)法以正常的方式運(yùn)行。各種技術(shù)已被開發(fā)來(lái)執(zhí)行外部的應(yīng)用程序。下面介紹的專利都與上面提到的技術(shù)相關(guān)。韓國(guó)專利No. 10-0786408涉及一種系統(tǒng),其用于自動(dòng)地執(zhí)行在外部存儲(chǔ)器中存儲(chǔ)的應(yīng)用程序。更具體地,如果檢測(cè)到外部存儲(chǔ)器被連接到移動(dòng)通信終端,則系統(tǒng)在該存儲(chǔ)器中搜索其中存儲(chǔ)了用于連接應(yīng)用程序的模塊信息的模塊信息文件(MIF)。系統(tǒng)分析所搜索到的模塊信息文件(MIF),并且獲得應(yīng)用程序信息以及從外部存儲(chǔ)器中讀取與所獲得的應(yīng)用程序信息對(duì)應(yīng)的應(yīng)用程序,并且實(shí)施該應(yīng)用程序以便于執(zhí)行。以這種方式,當(dāng)外部存儲(chǔ)器連接到移動(dòng)通信終端時(shí),自動(dòng)地執(zhí)行在外部存儲(chǔ)器中存儲(chǔ)的應(yīng)用程序,并且因此,用戶可以容易地使用存儲(chǔ)在外部存儲(chǔ)器中的包括圖像、聲音和視頻的各種信息。韓國(guó)特開專利公開No. 10-2011-0037706涉及一種系統(tǒng),其用于執(zhí)行存儲(chǔ)在外部存儲(chǔ)裝置中的應(yīng)用程序。更具體地,所述系統(tǒng)配備有連接到任意的、第一PC的外部應(yīng)用程序;在安裝外部應(yīng)用程序時(shí)在第一 PC的操作系統(tǒng)中登記的該外部應(yīng)用程序的安裝信息;夕卜部應(yīng)用程序的安裝信息的存儲(chǔ)位置信息所位于的外部存儲(chǔ)裝置;以及操作系統(tǒng)。在外部存儲(chǔ)裝置連接到系統(tǒng)之后,當(dāng)執(zhí)行外部應(yīng)用程序時(shí),外部應(yīng)用程序的安裝信息被存儲(chǔ)在操作系統(tǒng)內(nèi)的對(duì)應(yīng)于存儲(chǔ)位置信息的位置處。以這種方式中,安裝在外部存儲(chǔ)裝置中的應(yīng)用程序可以在包括執(zhí)行所選擇的應(yīng)用程序的第二 PC的任何計(jì)算機(jī)中運(yùn)行?,F(xiàn)有技術(shù)自動(dòng)運(yùn)行安裝在外部裝置中的應(yīng)用程序,或者提供可以通過(guò)其他用戶執(zhí)行的技術(shù)。但是,現(xiàn)有的技術(shù)不提供對(duì)于由錯(cuò)誤的診斷而導(dǎo)致的不穩(wěn)定操作的補(bǔ)救措施。另夕卜,從程序開發(fā)者的觀點(diǎn)來(lái)看,現(xiàn)有技術(shù)不提供諸如分析在程序執(zhí)行期間發(fā)生的錯(cuò)誤的原因和錯(cuò)誤處理這樣的技術(shù)。
發(fā)明內(nèi)容
技術(shù)問(wèn)題本發(fā)明已做出努力來(lái)提出一種提供用于多處理的程序的方法,并且執(zhí)行該方法的服務(wù)器向用戶終端提供用于多處理的程序。用于多處理的程序?qū)⑴R時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將該實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中。所述方法和服務(wù)器復(fù)制用于多處理的程序并且使實(shí)際程序以用于多處理的程序的名義來(lái)運(yùn)行,如此,使得用戶終端可以以相同的進(jìn)程的名義來(lái)運(yùn)行多個(gè)進(jìn)程,并且以可靠的方式來(lái)操作程序。本發(fā)明已做出努力來(lái)提出一種提供用于多處理的程序的方法,并且執(zhí)行該方法的服務(wù)器向用戶終端提供用于多處理的程序。用于多處理的程序?qū)⒁詨嚎s文件的形式而被包括的臨時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將該實(shí)際程序存儲(chǔ)在用戶終端的RAM (隨機(jī)存取存儲(chǔ)器)中。所述方法和服務(wù)器通過(guò)使用fork函數(shù)(fork function)來(lái)運(yùn)行所存儲(chǔ)的實(shí)際程序,從而防止用戶終端的殺毒程序錯(cuò)誤地將實(shí)際程序診斷為病毒程序。本發(fā)明已做出努力來(lái)提出一種提供用于多處理的程序的方法和執(zhí)行該方法的服務(wù)器,在當(dāng)執(zhí)行用于多處理的程序的同時(shí)用戶終端生成錯(cuò)誤的情況下,所述方法接收在相應(yīng)錯(cuò)誤的發(fā)生時(shí)的程序訪問(wèn)碼和用戶終端的系統(tǒng)信息,并且生成訪問(wèn)錯(cuò)誤信息,由此使得程序開發(fā)者能夠跟蹤針對(duì)用于多處理的程序?qū)е洛e(cuò)誤的進(jìn)程,并且快速地處理該進(jìn)程。技術(shù)方案在實(shí)施方式中,在可以連接到用戶終端的、執(zhí)行用于多處理的程序的服務(wù)器中,執(zhí)行提供用于多處理的程序的方法。提供用于多處理的程序的方法包括向用戶終端提供包括至少一個(gè)臨時(shí)程序的用于多處理的程序的步驟。用于多處理的程序包括程序轉(zhuǎn)換模塊,在執(zhí)行用于多處理的程序的同時(shí),其將至少一個(gè)的臨時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中;以及程序執(zhí)行模塊,其復(fù)制用于多處理的程序,并且使得所存儲(chǔ)的實(shí)際程序以用于多處理的程序的名義來(lái)運(yùn)行。在一個(gè)實(shí)施方式中,用于多處理的程序包括作為壓縮文件的至少一個(gè)臨時(shí)程序。此時(shí),程序轉(zhuǎn)換模塊對(duì)至少一個(gè)臨時(shí)程序進(jìn)行解壓縮,并且將解壓縮的程序轉(zhuǎn)換為實(shí)際程序。在一個(gè)實(shí)施方式中,程序轉(zhuǎn)換模塊將轉(zhuǎn)換的實(shí)際程序存儲(chǔ)到用戶終端的RAM(隨機(jī)存取存儲(chǔ)器)中。在一個(gè)實(shí)施方式中,程序執(zhí)行模塊通過(guò)使用fork函數(shù)來(lái)執(zhí)行所存儲(chǔ)的實(shí)際程序。在一個(gè)實(shí)施方式中,提供用于多處理的程序的方法進(jìn)一步包括從用戶終端接收與在用于多處理的程序中發(fā)生錯(cuò)誤時(shí)訪問(wèn)過(guò)用于多處理的程序的進(jìn)程相關(guān)聯(lián)的至少一個(gè)程序訪問(wèn)碼。在一個(gè)實(shí)施方式中,接收至少一個(gè)程序訪問(wèn)碼進(jìn)一步包括使得用戶終端收集至少一個(gè)程序訪問(wèn)碼。在一個(gè)實(shí)施方式中,提供用于多處理的程序的方法進(jìn)一步包括從用戶終端接收在用于多處理的程序中發(fā)生錯(cuò)誤時(shí)的用戶終端的系統(tǒng)信息。在一個(gè)實(shí)施方式中,提供用于多處理的程序的方法進(jìn)一步包括從用戶終端接收用戶終端識(shí)別符,并且通過(guò)將至少一個(gè)程序訪問(wèn)碼和用戶終端的系統(tǒng)信息與用戶終端識(shí)別符相關(guān)聯(lián),來(lái)生成訪問(wèn)錯(cuò)誤信息。在實(shí)施方式中,提供用于多處理的程序的服務(wù)器可以連接到用戶終端。所述服務(wù)器包括程序提供單元,其向用戶終端提供包括至少一個(gè)臨時(shí)程序的用于多處理的程序,其中,用于多處理的程序包括程序轉(zhuǎn)換模塊,在執(zhí)行用于多處理的程序的同時(shí),其將至少一個(gè)的臨時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中;以及程序執(zhí)行模塊,其復(fù)制用于多處理的程序,并且使得所存儲(chǔ)的實(shí)際程序以用于多處理的程序的名義來(lái)運(yùn)行。在一個(gè)實(shí)施方式中,用于多處理的程序包括作為壓縮文件的至少一個(gè)臨時(shí)程序。此時(shí),程序轉(zhuǎn)換模塊對(duì)至少一個(gè)臨時(shí)程序進(jìn)行解壓縮,并且將解壓縮的程序轉(zhuǎn)換為實(shí)際程序。在一個(gè)實(shí)施方式中,程序轉(zhuǎn)換模塊將轉(zhuǎn)換的實(shí)際程序存儲(chǔ)到用戶終端的RAM(隨機(jī)存取存儲(chǔ)器)中。在一個(gè)實(shí)施方式中,程序執(zhí)行模塊通過(guò)使用fork函數(shù)來(lái)執(zhí)行所存儲(chǔ)的實(shí)際程序。在一個(gè)實(shí)施方式中,提供用于多處理的程序的服務(wù)器進(jìn)一步包括程序訪問(wèn)碼接收單元,其從用戶終端接收與在用于多處理的程序中發(fā)生錯(cuò)誤時(shí)訪問(wèn)過(guò)用于多處理的程序的進(jìn)程相關(guān)聯(lián)的至少一個(gè)程序訪問(wèn)碼。在一個(gè)實(shí)施方式中,程序訪問(wèn)碼接收單元使得用戶終端收集至少一個(gè)程序訪問(wèn)碼。在一個(gè)實(shí)施方式中,服務(wù)器進(jìn)一步包括系統(tǒng)信息接收單元,其從用戶終端接收在用于多處理的程序中發(fā)生錯(cuò)誤時(shí)的用戶終端的系統(tǒng)信息。在一個(gè)實(shí)施方式中,服務(wù)器進(jìn)一步包括用戶終端識(shí)別符接收單元,其從用戶終端接收用戶終端識(shí)別符;以及訪問(wèn)錯(cuò)誤信息生成單元,其通過(guò)將至少一個(gè)程序訪問(wèn)碼和用戶終端的系統(tǒng)信息與用戶終端識(shí)別符相關(guān)聯(lián),來(lái)生成訪問(wèn)錯(cuò)誤信息。在實(shí)施方式中,存儲(chǔ)與可以在提供用于多處理的程序的服務(wù)器中執(zhí)行的提供用于多處理的程序的方法相關(guān)的計(jì)算機(jī)程序的存儲(chǔ)介質(zhì)包括向用戶終端提供包括至少一個(gè)臨時(shí)程序的用于多處理的程序,并且用于多處理的程序包括程序轉(zhuǎn)換模塊,在執(zhí)行用于多處理的程序的同時(shí),其將至少一個(gè)的臨時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中;以及程序執(zhí)行模塊,其復(fù)制用于多處理的程序,并且使得所存儲(chǔ)的實(shí)際程序以用于多處理的程序的名義來(lái)運(yùn)行。在實(shí)施方式中,提出了存儲(chǔ)與提供可以在用戶終端中執(zhí)行的用于多處理的程序的方法相關(guān)的計(jì)算機(jī)程序的存儲(chǔ)介質(zhì),所述用于多處理的程序包括在執(zhí)行用于多處理的程序期間,將至少一個(gè)臨時(shí)程序轉(zhuǎn)換為一個(gè)實(shí)際程序,并且將實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中;并且復(fù)制用于多處理的程序,并且使得所存儲(chǔ)的實(shí)際程序以用于多處理的程序的名義來(lái)運(yùn)行。技術(shù)效果根據(jù)本發(fā)明的一個(gè)實(shí)施方式的提供用于多處理的程序的方法和與所述方法相關(guān)的技術(shù)向用戶終端提供了用于多處理的程序,其中,用于多處理的程序?qū)⑴R時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中。所述方法和與所述方法相關(guān)的技術(shù)復(fù)制用于多處理的程序,并且使得實(shí)際程序以用于多處理的程序的名義來(lái)運(yùn)行,由此使得用戶終端能夠以相同的進(jìn)程的名義來(lái)執(zhí)行多個(gè)處理,并且以可靠的方式來(lái)操作程序。根據(jù)本發(fā)明的一個(gè)實(shí)施方式的提供用于多處理的程序的方法和與所述方法相關(guān)的技術(shù)向用戶終端提供了用于多處理的程序,其中,用于多處理的程序?qū)⒁詨嚎s文件的形式包括的臨時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將實(shí)際程序存儲(chǔ)在用戶終端的RAM(隨機(jī)存取存儲(chǔ)器)中。所述方法和技術(shù)通過(guò)使用fork函數(shù)(fork function)來(lái)運(yùn)行所存儲(chǔ)的實(shí)際程序,從而防止用戶終端的殺毒程序錯(cuò)誤地將實(shí)際程序診斷為病毒程序。在當(dāng)執(zhí)行用于多處理的程序的同時(shí)用戶終端生成錯(cuò)誤的情況下,根據(jù)本發(fā)明的一個(gè)實(shí)施方式的提供用于多處理的程序的方法和與所述方法相關(guān)的技術(shù)接收在相應(yīng)錯(cuò)誤的發(fā)生時(shí)的用戶終端的系統(tǒng)信息和程序訪問(wèn)碼,并且生成訪問(wèn)錯(cuò)誤信息,由此使得程序開發(fā)者能夠跟蹤針對(duì)用于多處理的程序?qū)е洛e(cuò)誤的進(jìn)程,并且快速地處理該進(jìn)程。
附圖被包括以提供對(duì)于本發(fā)明的進(jìn)一步理解,并且其被并入以構(gòu)成本說(shuō)明書的一部分,所述附圖示出了本發(fā)明的實(shí)施方式,并且與說(shuō)明書一起用于解釋本發(fā)明的原理。圖1示出了根據(jù)本發(fā)明的提供用于多處理的程序的系統(tǒng);圖2是示出了圖1的提供用于多處理的程序的服務(wù)器的方框圖;圖3是示出了用于多處理的程序的圖;圖4是示出了圖1的用戶終端的方框圖;圖5是示出了根據(jù)本發(fā)明的提供用于多處理的程序的系統(tǒng)的流程圖;圖6是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的提供用于多處理的程序的系統(tǒng)的流程圖;圖7是示出了根據(jù)一個(gè)實(shí)施方式的在提供用于多處理的程序的服務(wù)器中執(zhí)行的提供用于多處理的程序的過(guò)程的流程圖;以及圖8是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的在提供用于多處理的程序的服務(wù)器中執(zhí)行的提供用于多處理的程序的過(guò)程的流程圖。附圖標(biāo)記的描述110用戶終端120提供用于多處理的程序的服務(wù)器210程序提供單元220程序訪問(wèn)碼接收單元230系統(tǒng)信息接收單元240用戶終端識(shí)別符接收單元250訪問(wèn)錯(cuò)誤信息生成單元260控制器310臨時(shí)程序320程序轉(zhuǎn)換模塊330程序執(zhí)行模塊410存儲(chǔ)單元420錯(cuò)誤碼檢測(cè)單元430程序訪問(wèn)碼收集單元440系統(tǒng)信息收集單元450通信單元460控制器
具體實(shí)施例方式因?yàn)樵谠撋暾?qǐng)文件中描述的實(shí)施方式僅提供本發(fā)明的結(jié)構(gòu)說(shuō)明或功能說(shuō)明,所以本發(fā)明的范圍不應(yīng)該理解成被限制到在該申請(qǐng)文件中描述的實(shí)施方式。換句話說(shuō),實(shí)施方式可以按照多種方式進(jìn)行修改;因此,應(yīng)該理解的是,本發(fā)明的范圍包括實(shí)現(xiàn)本發(fā)明的技術(shù)原理的每一種可能的等價(jià)物。相似地,因?yàn)楸景l(fā)明的目的或效果不必要求具體的實(shí)施方式支持所有的目的或者僅揭示效果,所以本發(fā)明的技術(shù)范圍將不被限制為在該申請(qǐng)文件中描述的目的或效果。同時(shí),在該申請(qǐng)文件中使用的術(shù)語(yǔ)應(yīng)該被按照如下來(lái)理解。詞語(yǔ)“第一”、“第二”等被引入以將一個(gè)部件與其它部件區(qū)分;因此,本發(fā)明的技術(shù)范圍不應(yīng)該被那些術(shù)語(yǔ)所限制。例如,第一部件可以被指為第二部件并且反之亦然。當(dāng)部件被指為“連接到”另一個(gè)部件時(shí),應(yīng)該理解的是,第三部件可以存在以連接該兩個(gè)部件,即使該兩個(gè)部件可以直接地連接。另一方面,當(dāng)部件被指為“直接地連接到”另一個(gè)部件時(shí),應(yīng)該理解的是,在該兩個(gè)部件之間沒(méi)有另外的部件。同時(shí),描述在部件之間的
關(guān)系的其它表述,即,“在......之間”和“直接在......之間”或者“與......相鄰”和
“直接地與......相鄰”應(yīng)該按照和上面相同的方式來(lái)理解。單數(shù)表述應(yīng)該被理解為包括復(fù)數(shù)表述,除非明確地以其它方式申明。諸如“包括”和“具有”這樣的術(shù)語(yǔ)的意思是表示具體化的特性、數(shù)量、步驟、行為、部件、模塊和其組合的存在,這應(yīng)該被理解為一個(gè)或更多個(gè)特性、數(shù)量、步驟、行為、部件、模塊和其組合的存在或增加的可能性不被事先排除。為了描述的方便,引入了用于各個(gè)步驟的標(biāo)識(shí)符號(hào)(例如,a、b、c等);符號(hào)不是要指示執(zhí)行相應(yīng)步驟的順序,因此各個(gè)步驟可以根據(jù)與指定的順序不同的順序來(lái)執(zhí)行,除非明確地以其它方式指示。換句話說(shuō),各個(gè)步驟可以按照與指定的順序相同的順序執(zhí)行,或者實(shí)際上同時(shí)地執(zhí)行,或者以相反的順序執(zhí)行。本發(fā)明可以以在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的計(jì)算機(jī)可讀程序代碼的形式來(lái)實(shí)現(xiàn)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括其中存儲(chǔ)有可由計(jì)算機(jī)系統(tǒng)讀取的數(shù)據(jù)的所有類型的存儲(chǔ)裝置。計(jì)算機(jī)可讀的存儲(chǔ)介質(zhì)的示例包括R0M、RAMXD_R0M、磁帶、軟盤、光學(xué)數(shù)據(jù)存儲(chǔ)裝置等。以載波的形式實(shí)現(xiàn)的存儲(chǔ)介質(zhì)(例如,通過(guò)互聯(lián)網(wǎng)的數(shù)據(jù)傳送)也包括在示例中。同時(shí),計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以分布在通過(guò)網(wǎng)絡(luò)相互連接的整個(gè)計(jì)算機(jī)系統(tǒng)中,并且計(jì)算機(jī)可讀程序代碼可以按照分布的方式存儲(chǔ)和執(zhí)行。除非另外不同地定義,在該申請(qǐng)文件中使用的術(shù)語(yǔ)擁有與本發(fā)明所屬的技術(shù)領(lǐng)域的技術(shù)人員理解的意義相同的意義。在普通詞典中定義的那些術(shù)語(yǔ)應(yīng)該理解為與在相關(guān)技術(shù)中使用的上下文意義一致。除非在該申請(qǐng)文件中另外明確地定義,否則那些術(shù)語(yǔ)不應(yīng)該被理解為擁有理想的或過(guò)度正式的意義。圖1示出了根據(jù)本發(fā)明的提供用于多處理的程序的系統(tǒng)。參考圖1,提供用于多處理的程序的系統(tǒng)包括用戶終端110和提供用于多處理的程序的服務(wù)器120。在此,用戶終端110可以通過(guò)網(wǎng)絡(luò)(具體地,互聯(lián)網(wǎng))連接到提供用于多處理的程序的服務(wù)器120。用戶終端110包括能夠通過(guò)用戶執(zhí)行程序的計(jì)算裝置。例如,用戶終端110可以對(duì)應(yīng)于臺(tái)式計(jì)算機(jī)、膝上型計(jì)算機(jī)、智能電話、或者平板個(gè)人計(jì)算機(jī)(PC )。用戶終端110可以從提供用于多處理的程序的服務(wù)器120接收用于多處理的程序。在此,可以通過(guò)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)來(lái)實(shí)現(xiàn)用于多處理的程序?,F(xiàn)在,首先將參考圖4來(lái)描述用戶終端110。圖4是示出了圖1的用戶終端的方框圖。參考圖4,用戶終端110包括存儲(chǔ)單元410、錯(cuò)誤碼檢測(cè)單元420、程序訪問(wèn)碼收集單元430、系統(tǒng)信息收集單元440、通信單元450和控制器460。存儲(chǔ)單元410存儲(chǔ)各種數(shù)據(jù),并且包括主存儲(chǔ)裝置和輔助存儲(chǔ)裝置。在此,主存儲(chǔ)裝置可以對(duì)應(yīng)于RAM (隨機(jī)存取存儲(chǔ)器)。如果在用戶終端Il0執(zhí)行程序的同時(shí)發(fā)生錯(cuò)誤,則錯(cuò)誤碼檢測(cè)單元420檢測(cè)錯(cuò)誤碼。此時(shí),錯(cuò)誤碼對(duì)應(yīng)于與錯(cuò)誤的原因相關(guān)聯(lián)的碼。在一個(gè)實(shí)施方式中,如果發(fā)生程序錯(cuò)誤,則錯(cuò)誤碼檢測(cè)單元420可以通過(guò)使用GetLastError函數(shù)來(lái)檢驗(yàn)錯(cuò)誤碼。例如,錯(cuò)誤碼檢測(cè)單元420通過(guò)使用GetLastError函數(shù)來(lái)針對(duì)相應(yīng)程序的錯(cuò)誤檢驗(yàn)錯(cuò)誤碼,并且確定錯(cuò)誤碼是否對(duì)應(yīng)于與訪問(wèn)錯(cuò)誤相關(guān)聯(lián)的錯(cuò)誤碼(例如,錯(cuò)誤碼5)。在用戶終端110在執(zhí)行程序的同時(shí)生成錯(cuò)誤的情況下,程序訪問(wèn)碼收集單元430收集與在程序錯(cuò)誤的發(fā)生時(shí)已經(jīng)訪問(wèn)相應(yīng)程序的進(jìn)程相關(guān)聯(lián)的至少一個(gè)程序訪問(wèn)碼。在一個(gè)實(shí)施方式中,程序訪問(wèn)碼包括句柄數(shù)據(jù)。在此,句柄數(shù)據(jù)對(duì)應(yīng)于由操作系統(tǒng)分配的整數(shù)值,其允許對(duì)于與特定進(jìn)程相關(guān)聯(lián)的內(nèi)核對(duì)象的間接訪問(wèn)。換言之,程序訪問(wèn)碼對(duì)應(yīng)于用于從在程序錯(cuò)誤的發(fā)生時(shí)使用相關(guān)文件的進(jìn)程中辨別相應(yīng)程序的數(shù)據(jù)。如果在程序運(yùn)行的同時(shí)發(fā)生錯(cuò)誤,則系統(tǒng)信息收集單元440收集在錯(cuò)誤的發(fā)生時(shí)的系統(tǒng)信息。此時(shí),系統(tǒng)信息包括在程序錯(cuò)誤的發(fā)生時(shí)的進(jìn)程信息(例如,進(jìn)程ID和名稱)、網(wǎng)絡(luò)信息(例如,網(wǎng)絡(luò)利用率或輸入和輸出數(shù)據(jù)包的量)、屏幕輸出信息(例如,抓屏(screenshot))、以及用戶終端的規(guī)格信息(例如,CPU、RAM、OS信息、顯卡和主板)中的至少一個(gè)。通信單元450將所收集的錯(cuò)誤碼、程序訪問(wèn)碼和系統(tǒng)信息中的至少一個(gè)發(fā)送到提供用于多處理的程序的服務(wù)器120??刂破?60控制存儲(chǔ)單元410、錯(cuò)誤碼檢測(cè)單元420、程序訪問(wèn)碼收集單元430、系統(tǒng)信息收集單元440和通信單元450的操作和數(shù)據(jù)流。圖2是示出了圖1的提供用于多處理的程序的服務(wù)器的方框圖。參考圖2,提供用于多處理的程序的服務(wù)器120包括程序提供單元210、程序訪問(wèn)碼接收單元220、系統(tǒng)信息接收單元230、用戶終端識(shí)別符接收單元240、訪問(wèn)錯(cuò)誤信息生成單元250和控制器260。程序提供單元210將用于多處理的程序發(fā)送到用戶終端110。首先,將參考圖3來(lái)描述用于多處理的程序。圖3是示出了用于多處理的程序的視圖。圖3僅僅是通過(guò)合并框圖來(lái)示出用于多處理的程序的結(jié)構(gòu)的示例;這樣的示例不旨在限制本發(fā)明的技術(shù)范圍。在圖3中,用于多處理的程序300包括臨時(shí)程序310、程序轉(zhuǎn)換模塊320和程序執(zhí)行模塊330。此時(shí),用于多處理的程序300可以包括至少一個(gè)臨時(shí)程序310。臨時(shí)程序310對(duì)應(yīng)于作為資源的用于多處理的程序300中包括的一個(gè)程序。在此,臨時(shí)程序310是指當(dāng)被包括在用于多處理的程序300中時(shí)不能夠原樣地被執(zhí)行的文件。
在一個(gè)實(shí)施方式中,臨時(shí)程序310可以對(duì)應(yīng)于壓縮文件。在此,壓縮文件是指通過(guò)使用文件壓縮程序而從它的原始文件轉(zhuǎn)換過(guò)來(lái)以減少在存儲(chǔ)裝置中由該特定的文件所占據(jù)的空間的文件。例如,臨時(shí)程序310是指當(dāng)被壓縮時(shí)不能夠原樣地通過(guò)用戶終端110來(lái)執(zhí)行的,并且可以具有與在alz、ace、arc、ar j、cab、gz、rar和zoo當(dāng)中的一個(gè)對(duì)應(yīng)的文件擴(kuò)展名的文件。臨時(shí)程序310對(duì)應(yīng)于在執(zhí)行用于多處理的程序300的過(guò)程中可以由用戶終端110執(zhí)行的子程序。例如,如果在用戶終端Iio正在執(zhí)行程序A的同時(shí)啟動(dòng)程序B,則程序A可以被稱為父程序,并且程序B被稱為子程序。此時(shí),可以認(rèn)為保持如下的關(guān)系,即,用于多處理的程序300對(duì)應(yīng)于父程序,并且臨時(shí)程序310對(duì)應(yīng)于子程序。在執(zhí)行用于多處理的程序300的同時(shí),程序轉(zhuǎn)換模塊320將至少一個(gè)臨時(shí)程序310轉(zhuǎn)換為實(shí)際程序,并且將該實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中。首先,如果用戶終端110執(zhí)行用于多處理的程序300,則程序轉(zhuǎn)換模塊320將至少一個(gè)臨時(shí)程序310轉(zhuǎn)換為與可以通過(guò)用戶終端110來(lái)執(zhí)行的形式的程序文件對(duì)應(yīng)的實(shí)際程序 320。在一個(gè)實(shí)施方式中,在臨時(shí)程序310對(duì)應(yīng)于壓縮文件的情況下,程序轉(zhuǎn)換模塊320解壓縮臨時(shí)程序310中的一個(gè),并且將其轉(zhuǎn)換為實(shí)際程序。例如,如果臨時(shí)程序310以zip文件的形式包括在用于多處理的程序300中,則程序轉(zhuǎn)換模塊320提取在用于多處理的程序300中包括的該zip文件,并且解壓縮提取的zip文件。接下來(lái),程序轉(zhuǎn)換模塊320將轉(zhuǎn)換的實(shí)際程序存儲(chǔ)到單獨(dú)的存儲(chǔ)空間中。在此,單獨(dú)的存儲(chǔ)空間是指與用戶終端110的特定的存儲(chǔ)空間分離的存儲(chǔ)空間。例如,程序轉(zhuǎn)換模塊320可以在與其中存儲(chǔ)了用于多處理的程序300的文件夾不同的位置處存儲(chǔ)轉(zhuǎn)換的實(shí)際程序。換句話說(shuō),程序轉(zhuǎn)換模塊320提取在父程序中包括的子程序,并且將子程序轉(zhuǎn)換為可以通過(guò)用戶終端110執(zhí)行的程序文件,并且將所述程序文件存儲(chǔ)到與父程序分離的空間中。在一個(gè)實(shí)施方式中,程序轉(zhuǎn)換模塊320可以在用戶終端110的RAM(隨機(jī)存取存儲(chǔ)器)中存儲(chǔ)轉(zhuǎn)換的實(shí)際程序。這里,RAM是包括在用戶終端110中的主存儲(chǔ)裝置,并且可以對(duì)應(yīng)于計(jì)算裝置的存儲(chǔ)器。在用戶終端110執(zhí)行用于多處理的程序300的同時(shí),程序執(zhí)行模塊330使得用于多處理的程序300自我復(fù)制(用于多處理的程序),并以其自己的名義(以用于多處理的程序的名義)來(lái)執(zhí)行實(shí)際程序。更具體地說(shuō),在用戶終端110執(zhí)行用于多處理的程序300并且與用于多處理的程序300對(duì)應(yīng)的進(jìn)程(在下文中,被稱為父進(jìn)程)被創(chuàng)建的情況下,程序執(zhí)行模塊330使用戶終端110以父進(jìn)程的名義來(lái)執(zhí)行實(shí)際程序。換句話說(shuō),為了防止用戶終端110獨(dú)立地執(zhí)行實(shí)際程序并且創(chuàng)建與該實(shí)際程序?qū)?yīng)的單獨(dú)的進(jìn)程(在下文中,被稱為子進(jìn)程),程序執(zhí)行模塊330使用戶終端110復(fù)制用于多處理的程序300,并且以父進(jìn)程的名義來(lái)執(zhí)行實(shí)際程序。在一個(gè)實(shí)施方式中,程序執(zhí)行模塊330可以通過(guò)使用fork函數(shù)來(lái)使用戶終端110執(zhí)行實(shí)際程序。
更具體地,fork函數(shù)生成新的進(jìn)程,并且被用來(lái)通過(guò)復(fù)制與當(dāng)前進(jìn)程相同的進(jìn)程來(lái)生成新的進(jìn)程。此時(shí),在用戶終端Iio通過(guò)使用fork函數(shù)來(lái)執(zhí)行用于多處理的程序300的同時(shí),程序執(zhí)行模塊330可以使得用于多處理的程序300復(fù)制其本身(用于多處理的程序),并且以其自己的名義(以用于多處理的程序的名義)來(lái)執(zhí)行實(shí)際程序。作為根據(jù)上述描述的本發(fā)明的一個(gè)實(shí)施方式的過(guò)程,如果用戶終端110執(zhí)行多個(gè)進(jìn)程,則由于用戶終端110可以以單個(gè)進(jìn)程的名義(父進(jìn)程的名義)來(lái)執(zhí)行存儲(chǔ)在存儲(chǔ)器中的父程序(用于多處理的程序)和子程序(實(shí)際程序),所以程序可以以可靠的方式操作,并且子程序可以不被用戶終端110的殺毒程序錯(cuò)誤地診斷為病毒程序。再次參照?qǐng)D2,程序訪問(wèn)碼接收單元220從用戶終端110接收與在用于多處理的程序300中發(fā)生錯(cuò)誤時(shí)已經(jīng)訪問(wèn)過(guò)用于多處理的程序的進(jìn)程相關(guān)聯(lián)的至少一個(gè)程序訪問(wèn)碼。在一個(gè)實(shí)施方式中,程序訪問(wèn)碼可以對(duì)應(yīng)于與在用于多處理的程序中發(fā)生錯(cuò)誤時(shí)已經(jīng)訪問(wèn)過(guò)相應(yīng)程序的進(jìn)程相關(guān)聯(lián)的用戶終端110的句柄數(shù)據(jù)。這里,句柄數(shù)據(jù)對(duì)應(yīng)于由操作系統(tǒng)分配的整數(shù)值,其允許對(duì)于與特定進(jìn)程相關(guān)聯(lián)的內(nèi)核對(duì)象的間接訪問(wèn)。換言之,程序訪問(wèn)碼對(duì)應(yīng)于用于從在程序錯(cuò)誤的發(fā)生時(shí)使用相關(guān)文件的進(jìn)程中辨別相應(yīng)程序的數(shù)據(jù)。更具體地,在用戶終端110執(zhí)行用于多處理的程序300的同時(shí)發(fā)生錯(cuò)誤時(shí),用戶終端Iio的程序訪問(wèn)碼收集單元430收集與已經(jīng)訪問(wèn)過(guò)用于多處理的程序300的進(jìn)程相關(guān)聯(lián)的至少一個(gè)句柄數(shù)據(jù)。例如,如果已經(jīng)訪問(wèn)過(guò)用于多處理的程序300的程序是{殺毒程序A},則程序訪問(wèn)碼接收單元220從用戶終端110的通信單元450接收與和{殺毒程序A}相關(guān)聯(lián)的{a}對(duì)應(yīng)的句柄數(shù)據(jù)。換句話說(shuō),因?yàn)槌绦蛟L問(wèn)碼接收單元220從用戶終端110接收至少一個(gè)程序訪問(wèn)碼,所以程序開發(fā)者可以識(shí)別在執(zhí)行用于多處理的程序300的同時(shí),已經(jīng)將實(shí)際程序誤認(rèn)為是病毒程序的殺毒程序。在一個(gè)實(shí)施方式中,程序訪問(wèn)碼接收單元220允許用戶終端110收集至少一個(gè)程序訪問(wèn)碼。更具體地,程序訪問(wèn)碼接收單元220將對(duì)應(yīng)于同意程序訪問(wèn)碼收集的信號(hào)發(fā)送到通信單元450,從而使得程序訪問(wèn)碼收集單元430收集與在用于多處理的程序300中發(fā)生錯(cuò)誤時(shí)已經(jīng)訪問(wèn)過(guò)用于多處理的程序300的進(jìn)程相關(guān)聯(lián)的至少一個(gè)程序訪問(wèn)碼。系統(tǒng)信息接收單元230從用戶終端110接收在用于多處理的程序300中發(fā)生錯(cuò)誤時(shí)的用戶終端110的系統(tǒng)信息。在一個(gè)實(shí)施方式中,系統(tǒng)信息可以包括在程序錯(cuò)誤的發(fā)生時(shí)的進(jìn)程信息(例如,進(jìn)程ID和名稱)、網(wǎng)絡(luò)信息(例如,網(wǎng)絡(luò)利用率或輸入和輸出數(shù)據(jù)包的量)、屏幕輸出信息(例如,抓屏)和用戶終端100的規(guī)格信息(例如,CPU、RAM、0S信息、顯卡和主板)中的至少一個(gè)。在一個(gè)實(shí)施方式中,系統(tǒng)信息接收單元230允許用戶終端110收集特定的系統(tǒng)信
肩、O更具體地,系統(tǒng)信息接收單元230將對(duì)應(yīng)于同意系統(tǒng)信息收集的信號(hào)發(fā)送到通信單元450 ;此后,系統(tǒng)信息接收單元230使得用戶終端110的系統(tǒng)信息收集單元440收集在用于多處理的程序300中發(fā)生錯(cuò)誤時(shí)的系統(tǒng)信息,并且將收集到的系統(tǒng)信息發(fā)送到系統(tǒng)信息接收單元230。
換句話說(shuō),因?yàn)橄到y(tǒng)信息接收單元230被允許收集特定的系統(tǒng)信息,所以可以解決與收集個(gè)人信息相關(guān)的安全性問(wèn)題,并且程序開發(fā)人員可以僅僅獲取他或者她感興趣的系統(tǒng)信息。用戶終端識(shí)別符接收單元240從用戶終端110接收用戶終端識(shí)別符。此時(shí),用戶終端識(shí)別符可以包括用戶的帳戶信息(例如,用戶ID)、用戶終端的IP (互聯(lián)網(wǎng)協(xié)議)地址和用戶終端的MAC (介質(zhì)訪問(wèn)控制)地址中的至少一個(gè)。換言之,用戶終端識(shí)別符對(duì)應(yīng)于區(qū)分用戶終端100和其它用戶終端110的識(shí)別符。訪問(wèn)錯(cuò)誤信息生成單元250通過(guò)將從用戶終端110接收的至少一個(gè)程序訪問(wèn)碼和用戶終端110的系統(tǒng)信息與用戶終端識(shí)別符相關(guān)聯(lián)來(lái)生成訪問(wèn)錯(cuò)誤信息。這里,訪問(wèn)錯(cuò)誤信息可以被實(shí)現(xiàn)為包括用戶終端識(shí)別符、至少一個(gè)程序訪問(wèn)碼和用戶終端110的系統(tǒng)信息的數(shù)據(jù)。換句話說(shuō),訪問(wèn)錯(cuò)誤信息生成單元250可以為多個(gè)用戶終端110中的每一個(gè)用戶終端構(gòu)造包括與和用于多處理的程序300的錯(cuò)誤相關(guān)聯(lián)的殺毒程序相關(guān)的信息和系統(tǒng)環(huán)境信息的數(shù)據(jù)庫(kù)。控制器260控制程序提供單元210、程序訪問(wèn)碼接收單元220、系統(tǒng)信息接收單元230、用戶終端識(shí)別符接收單元240和訪問(wèn)錯(cuò)誤信息生成單元250的操作和數(shù)據(jù)流。圖5是示出了根據(jù)本發(fā)明的提供用于多處理的程序的系統(tǒng)的流程圖。在S510,程序提供單元210將用于多處理的程序300發(fā)送到用戶終端110。用戶終端110執(zhí)行所接收的用于多處理的程序300。在此,用于多處理的程序300包括至少一個(gè)臨時(shí)程序310、程序轉(zhuǎn)換模塊320和程序執(zhí)行模塊330。臨時(shí)程序310對(duì)應(yīng)于作為資源的用于多處理的程序300中包括的一個(gè)程序。在此,臨時(shí)程序310是指當(dāng)被包括在用于多處理的程序300中時(shí)不能夠原樣地被執(zhí)行的文件。臨時(shí)程序310對(duì)應(yīng)于在執(zhí)行用于多處理的程序300的過(guò)程中可以由用戶終端110執(zhí)行的子程序。例如,如果在用戶終端Iio正在執(zhí)行程序A的同時(shí)啟動(dòng)程序B,則程序A可以被稱為父程序,并且程序B被稱為子程序。此時(shí),可以認(rèn)為保持如下的關(guān)系,即,用于多處理的程序300對(duì)應(yīng)于父程序,并且臨時(shí)程序310對(duì)應(yīng)于子程序。在S520中,程序轉(zhuǎn)換模塊320將至少一個(gè)臨時(shí)程序310轉(zhuǎn)換成與可以通過(guò)用戶終端110執(zhí)行的形式的程序文件對(duì)應(yīng)的實(shí)際程序320。在S530中,程序轉(zhuǎn)換模塊320將轉(zhuǎn)換的實(shí)際程序存儲(chǔ)到單獨(dú)的存儲(chǔ)空間中。在此,單獨(dú)的存儲(chǔ)空間是指與用戶終端110的特定的存儲(chǔ)空間分離的存儲(chǔ)空間。例如,程序轉(zhuǎn)換模塊320可以在與在其中存儲(chǔ)用于多處理的程序300的文件夾不同的位置處存儲(chǔ)轉(zhuǎn)換的實(shí)際程序。換句話說(shuō),程序轉(zhuǎn)換模塊320提取在父程序中包括的子程序,并且將子程序轉(zhuǎn)換為可以通過(guò)用戶終端110執(zhí)行的程序文件,并且將所述程序文件存儲(chǔ)到與父程序分離的空間中。在S540中,在用戶終端110執(zhí)行用于多處理的程序300的同時(shí),程序執(zhí)行模塊330使得用于多處理的程序300自我復(fù)制(用于多處理的程序),并以其自己的名義(以用于多處理的程序的名義)來(lái)執(zhí)行實(shí)際程序。更具體地說(shuō),在用戶終端110執(zhí)行用于多處理的程序300,并且與用于多處理的程序300對(duì)應(yīng)的進(jìn)程(在下文中,其被稱為父進(jìn)程)被創(chuàng)建的情況下,程序執(zhí)行模塊330使用戶終端110以父進(jìn)程的名義來(lái)執(zhí)行實(shí)際程序。換句話說(shuō),為了防止用戶終端110獨(dú)立地執(zhí)行實(shí)際程序并且創(chuàng)建對(duì)應(yīng)于實(shí)際程序的單獨(dú)的進(jìn)程(在下文中,被稱為子進(jìn)程),程序執(zhí)行模塊330使用戶終端110復(fù)制用于多處理的程序300,并且以父進(jìn)程的名義來(lái)執(zhí)行實(shí)際程序。圖6是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的提供用于多處理的程序的系統(tǒng)的流程圖。在S610中,程序提供單元210將用于多處理的程序300發(fā)送到用戶終端110。用戶終端110執(zhí)行所接收的用于多處理的程序300。在此,用于多處理的程序300包括至少一個(gè)臨時(shí)程序310、程序轉(zhuǎn)換模塊320和程序執(zhí)行模塊330。在一個(gè)實(shí)施方式中,臨時(shí)程序310可以對(duì)應(yīng)于壓縮文件。在此,壓縮文件是指通過(guò)使用文件壓縮程序而從它的原始文件轉(zhuǎn)換過(guò)來(lái)以減少在存儲(chǔ)裝置中由特定的文件所占據(jù)的空間的文件。例如,臨時(shí)程序310是指當(dāng)被壓縮時(shí)不能夠原樣地通過(guò)用戶終端110執(zhí)行的,并且可以具有與在alz、ace、arc、arj、cab、gz、rar和zoo當(dāng)中的一個(gè)對(duì)應(yīng)的文件擴(kuò)展名的文件。在S620中,程序轉(zhuǎn)換模塊320解壓縮臨時(shí)程序310中的一個(gè)臨時(shí)程序,并且將其轉(zhuǎn)換為實(shí)際程序。例如,如果臨時(shí)程序310以zip文件的形式包括在用于多處理的程序300中,則程序轉(zhuǎn)換模塊320提取在用于多處理的程序300中包括的zip文件,并且解壓縮提取的zip文件。在S630中,程序轉(zhuǎn)換模塊320可以將轉(zhuǎn)換的實(shí)際程序存儲(chǔ)在用戶終端110的RAM(隨機(jī)存取存儲(chǔ)器)中。在此,RAM是包括在用戶終端110中的主存儲(chǔ)裝置,并且可以對(duì)應(yīng)于計(jì)算裝置的存儲(chǔ)器。換句話說(shuō),程序轉(zhuǎn)換模塊320提取在父程序中包括的子程序,并且將子程序轉(zhuǎn)換為可以通過(guò)用戶終端110執(zhí)行的程序文件,并且將所述程序文件存儲(chǔ)到與父程序分離的空間中。在S640中,程序執(zhí)行模塊330可以通過(guò)使用fork函數(shù)來(lái)使得用戶終端110執(zhí)行
實(shí)際程序。更具體地,fork函數(shù)生成新的進(jìn)程,并且被用來(lái)通過(guò)復(fù)制與當(dāng)前進(jìn)程相同的進(jìn)程來(lái)生成新的進(jìn)程。此時(shí),在用戶終端Iio通過(guò)使用fork函數(shù)來(lái)執(zhí)行用于多處理的程序300的同時(shí),程序執(zhí)行模塊330可以使得用于多處理的程序300復(fù)制其本身(用于多處理的程序),并且以其自己的名義(以用于多處理的程序的名義)來(lái)執(zhí)行實(shí)際程序。換句話說(shuō),為了防止用戶終端110獨(dú)立地執(zhí)行實(shí)際程序并且創(chuàng)建對(duì)應(yīng)于實(shí)際程序的單獨(dú)的進(jìn)程(在下文中,被稱為子進(jìn)程),程序執(zhí)行模塊330使用戶終端110復(fù)制用于多處理的程序300,并且以父進(jìn)程的名義來(lái)執(zhí)行實(shí)際程序。作為根據(jù)上述描述的本發(fā)明的一個(gè)實(shí)施方式的過(guò)程,如果用戶終端110執(zhí)行多個(gè)進(jìn)程,由于用戶終端110可以以單個(gè)進(jìn)程的名義(父進(jìn)程的名義)來(lái)執(zhí)行存儲(chǔ)在存儲(chǔ)器中的父程序(用于多處理的程序)和子程序(實(shí)際程序),所以程序可以以可靠的方式操作,并且子程序可以不被用戶終端110的殺毒程序錯(cuò)誤地診斷為病毒程序。圖7是示出了根據(jù)一個(gè)實(shí)施方式的在提供用于多處理的程序的服務(wù)器中執(zhí)行的提供用于多處理的程序的過(guò)程的流程圖。在S710中,程序提供單元210將用于多處理的程序300發(fā)送到用戶終端110。在S720中,程序訪問(wèn)碼接收單元220從用戶終端110接收與在用于多處理的程序300中發(fā)生錯(cuò)誤時(shí)已經(jīng)訪問(wèn)過(guò)用于多處理的程序的進(jìn)程相關(guān)聯(lián)的至少一個(gè)程序訪問(wèn)碼。在一個(gè)實(shí)施方式中,程序訪問(wèn)碼可以對(duì)應(yīng)于與在用于多處理的程序中發(fā)生錯(cuò)誤時(shí)已經(jīng)訪問(wèn)過(guò)相應(yīng)程序的進(jìn)程相關(guān)聯(lián)的用戶終端110的句柄數(shù)據(jù)。換句話說(shuō),因?yàn)槌绦蛟L問(wèn)碼接收單元220從用戶終端110接收至少一個(gè)程序訪問(wèn)碼,所以程序開發(fā)者可以識(shí)別在執(zhí)行用于多處理的程序300的同時(shí),已經(jīng)將實(shí)際程序誤認(rèn)為是病毒程序的殺毒程序。在S730中,系統(tǒng)信息接收單元230從用戶終端110接收在用于多處理的程序300中發(fā)生錯(cuò)誤時(shí)的用戶終端110的系統(tǒng)信息。在一個(gè)實(shí)施方式中,系統(tǒng)信息可以包括在程序錯(cuò)誤的發(fā)生時(shí)的進(jìn)程信息(例如,進(jìn)程ID和名稱)、網(wǎng)絡(luò)信息(例如,網(wǎng)絡(luò)利用率或輸入和輸出數(shù)據(jù)包的量)、屏幕輸出信息(例如,抓屏)和用戶終端100的規(guī)格信息(例如,CPU、RAM、0S信息、顯卡和主板)中的至少一個(gè)。換句話說(shuō),因?yàn)橄到y(tǒng)信息接收單元240被允許收集特定的系統(tǒng)信息,所以可以解決與收集個(gè)人信息相關(guān)的安全性問(wèn)題,并且程序開發(fā)人員可以僅僅獲取他或者她感興趣的系統(tǒng)信息。圖8是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的在提供用于多處理的程序的服務(wù)器中執(zhí)行的提供用于多處理的程序的過(guò)程的流程圖。在S810中,程序提供單元210將用于多處理的程序300發(fā)送到用戶終端110。在S820中,程序訪問(wèn)碼接收單元220從用戶終端110接收與在用于多處理的程序300中發(fā)生錯(cuò)誤時(shí)已經(jīng)訪問(wèn)過(guò)用于多處理的程序的進(jìn)程相關(guān)聯(lián)的至少一個(gè)程序訪問(wèn)碼。在一個(gè)實(shí)施方式中,程序訪問(wèn)碼可以對(duì)應(yīng)于與在用于多處理的程序中發(fā)生錯(cuò)誤時(shí)已經(jīng)訪問(wèn)過(guò)相應(yīng)程序的進(jìn)程相關(guān)聯(lián)的用戶終端110的句柄數(shù)據(jù)。在S830中,系統(tǒng)信息接收單元230從用戶終端110接收在用于多處理的程序300中發(fā)送錯(cuò)誤時(shí)的用戶終端110的系統(tǒng)信息。在一個(gè)實(shí)施方式中,系統(tǒng)信息可以包括在程序錯(cuò)誤的發(fā)生時(shí)的進(jìn)程信息(例如,進(jìn)程ID和名稱)、網(wǎng)絡(luò)信息(例如,網(wǎng)絡(luò)利用率或輸入和輸出數(shù)據(jù)包的量)、屏幕輸出信息(例如,抓屏)和用戶終端100的規(guī)格信息(例如,CPU、RAM、0S信息、顯卡和主板)中的至少一個(gè)。在S840中,用戶終端識(shí)別符接收單元240從用戶終端110中接收用戶終端識(shí)別符。此時(shí),用戶終端識(shí)別符可以包括用戶的帳戶信息(例如,用戶ID)、用戶終端的IP (互聯(lián)網(wǎng)協(xié)議)地址和用戶終端的MAC (介質(zhì)訪問(wèn)控制)地址中的至少一個(gè)。換言之,用戶終端識(shí)別符對(duì)應(yīng)于區(qū)分用戶終端100和其它用戶終端110的識(shí)別符。在S850中,訪問(wèn)錯(cuò)誤信息生成單元250通過(guò)將從用戶終端110接收的至少一個(gè)程序訪問(wèn)碼和用戶終端110的系統(tǒng)信息與用戶終端識(shí)別符相關(guān)聯(lián),來(lái)生成訪問(wèn)錯(cuò)誤信息。這里,訪問(wèn)錯(cuò)誤信息可以被實(shí)現(xiàn)為包括用戶終端識(shí)別符、至少一個(gè)程序訪問(wèn)碼和用戶終端110的系統(tǒng)信息的數(shù)據(jù)。換句話說(shuō),訪問(wèn)錯(cuò)誤信息生成單元250可以為多個(gè)用戶終端110中的每一個(gè)用戶終端構(gòu)造包括與和用于多處理的程序300的錯(cuò)誤相關(guān)聯(lián)的殺毒程序相關(guān)的信息和系統(tǒng)環(huán)境信息的數(shù)據(jù)庫(kù)。雖然已經(jīng)參照優(yōu)選實(shí)施方式來(lái)描述了本發(fā)明,但是,本領(lǐng)域技術(shù)人員應(yīng)該理解,在不脫離由隨附權(quán)利要求書限定的本發(fā)明的技術(shù)原理和范圍的情況下,可以以各種方式對(duì)本發(fā)明進(jìn)行修改和變化。
權(quán)利要求
1.一種提供用于多處理的程序的方法,所述方法能夠在能夠連接到用戶終端的執(zhí)行所述用于多處理的程序的服務(wù)器中執(zhí)行,所述提供用于多處理的程序的方法包括以下步驟: 向用戶終端提供包括至少一個(gè)臨時(shí)程序的用于多處理的程序, 其中,所述用于 多處理的程序包括: 程序轉(zhuǎn)換模塊,在執(zhí)行所述用于多處理的程序的同時(shí),所述程序轉(zhuǎn)換模塊將所述至少一個(gè)臨時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將所述實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中;以及 程序執(zhí)行模塊,所述程序執(zhí)行模塊復(fù)制所述用于多處理的程序,并且使得存儲(chǔ)的所述實(shí)際程序以所述用于多處理的程序的名義來(lái)運(yùn)行。
2.根據(jù)權(quán)利要求1所述的方法,其中,所述用于多處理的程序包括作為壓縮文件的所述至少一個(gè)臨時(shí)程序。
3.根據(jù)權(quán)利要求2所述的方法,其中,所述程序轉(zhuǎn)換模塊解壓縮所述至少一個(gè)臨時(shí)程序,并且將解壓縮的程序轉(zhuǎn)換為實(shí)際程序。
4.根據(jù)權(quán)利要求1所述的方法,其中,所述程序執(zhí)行模塊通過(guò)使用fork函數(shù)來(lái)執(zhí)行存儲(chǔ)的所述實(shí)際程序。
5.根據(jù)權(quán)利要求1所述的方法,所述方法進(jìn)一步包括以下步驟:從所述用戶終端接收與在所述用于多處理的程序中發(fā)生錯(cuò)誤時(shí)訪問(wèn)過(guò)所述用于多處理的程序的進(jìn)程相關(guān)聯(lián)的至少一個(gè)程序訪問(wèn)碼。
6.根據(jù)權(quán)利要求5所述的方法,其中,接收至少一個(gè)程序訪問(wèn)碼的步驟進(jìn)一步包括:使得所述用戶終端收集所述至少一個(gè)程序訪問(wèn)碼。
7.根據(jù)權(quán)利要求5所述的方法,所述方法進(jìn)一步包括以下步驟:從所述用戶終端接收在所述用于多處理的程序中發(fā)生錯(cuò)誤時(shí)的所述用戶終端的系統(tǒng)信息。
8.—種能夠連接到用戶終端的提供用于多處理的程序的服務(wù)器,所述服務(wù)器提供用于多處理的程序,并且包括: 程序提供單元,所述程序提供單元向所述用戶終端提供包括至少一個(gè)臨時(shí)程序的用于多處理的程序,其中,所述用于多處理的程序包括: 程序轉(zhuǎn)換模塊,在執(zhí)行所述用于多處理的程序的同時(shí),所述程序轉(zhuǎn)換模塊將所述至少一個(gè)臨時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將所述實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中;以及 程序執(zhí)行模塊,所述程序執(zhí)行模塊復(fù)制所述用于多處理的程序,并且使得存儲(chǔ)的所述實(shí)際程序以所述用于多處理的程序的名義來(lái)運(yùn)行。
9.根據(jù)權(quán)利要求8所述的服務(wù)器,其中,所述用于多處理的程序包括作為壓縮文件的所述至少一個(gè)臨時(shí)程序。
10.根據(jù)權(quán)利要求9所述的服務(wù)器,其中,所述程序轉(zhuǎn)換模塊解壓縮所述至少一個(gè)臨時(shí)程序,并且將解壓縮的程序轉(zhuǎn)換為實(shí)際程序。
11.根據(jù)權(quán)利要求8所述的服務(wù)器,其中,所述程序執(zhí)行模塊通過(guò)使用fork函數(shù)來(lái)執(zhí)行存儲(chǔ)的所述實(shí)際程序。
12.根據(jù)權(quán)利要求8所述的服務(wù)器,所述服務(wù)器進(jìn)一步包括:程序訪問(wèn)碼接收單元,所述程序訪問(wèn)碼接收單元從所述用戶終端接收與在所述用于多處理的程序中發(fā)生錯(cuò)誤時(shí)訪問(wèn)過(guò)所述用于多處理的程序的進(jìn)程相關(guān)聯(lián)的至少一個(gè)程序訪問(wèn)碼。
13.根據(jù)權(quán)利要求12所述的服務(wù)器,其中,所述程序訪問(wèn)碼接收單元使得所述用戶終端收集所述至少一個(gè)程序訪問(wèn)碼。
14.根據(jù)權(quán)利要求12所述的服務(wù)器,所述服務(wù)器進(jìn)一步包括:系統(tǒng)信息接收單元,所述系統(tǒng)信息接收單元從所述用戶終端接收在所述用于多處理的程序中發(fā)生錯(cuò)誤時(shí)的所述用戶終端的系統(tǒng)信息。
15.一種存儲(chǔ)與能夠在提供用于多處理的程序的服務(wù)器中執(zhí)行的、提供用于多處理的程序的方法相關(guān)的計(jì)算機(jī)程序的存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)存儲(chǔ)與提供用于多處理的程序的方法相關(guān)的計(jì)算機(jī)程序,并且包括: 向所述用戶終端提供包括至少一個(gè)臨時(shí)程序的用于多處理的程序, 其中,所述用于多處理的程序包括: 程序轉(zhuǎn)換模塊,在執(zhí)行所述用于多處理的程序的同時(shí),所述程序轉(zhuǎn)換模塊將所述至少一個(gè)臨時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將所述實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中;以及 程序執(zhí)行模塊,所述程序執(zhí)行模塊復(fù)制所述用于多處理的程序,并且使得存儲(chǔ)的所述實(shí)際程序以所述用于多處理的程序的名義來(lái)運(yùn)行。
全文摘要
本發(fā)明涉及提供用于多處理的程序的方法和執(zhí)行該方法的服務(wù)器。一種提供用于多處理的程序的方法在能夠連接到用戶終端的提供用于多處理的程序的服務(wù)器中執(zhí)行。所述提供用于多處理的程序的方法包括向用戶終端提供包括至少一個(gè)臨時(shí)程序的用于多處理的程序,其中,用于多處理的程序包括程序轉(zhuǎn)換模塊,在執(zhí)行用于多處理的程序的同時(shí),所述程序轉(zhuǎn)換模塊將至少一個(gè)臨時(shí)程序轉(zhuǎn)換為實(shí)際程序,并且將所述實(shí)際程序存儲(chǔ)在單獨(dú)的存儲(chǔ)空間中;以及程序執(zhí)行模塊,所述程序執(zhí)行模塊復(fù)制用于多處理的程序,并且使得所存儲(chǔ)的實(shí)際程序以用于多處理的程序的名義來(lái)運(yùn)行。
文檔編號(hào)G06F9/46GK103077077SQ201310009108
公開日2013年5月1日 申請(qǐng)日期2013年1月10日 優(yōu)先權(quán)日2012年8月6日
發(fā)明者張星國(guó), 劉光喜, 成周弦, 陳譓瑱, 李允珩 申請(qǐng)人:新游游戲株式會(huì)社