本發(fa)明涉及計算機(ji),具體涉及一種進程調(diao)度方法、電子設備和(he)計算機(ji)可(ke)讀介質。
背景技術:
1、電子設(she)備的有些任(ren)(ren)(ren)務(wu)需要不同(tong)(tong)(tong)進程(cheng)間的協同(tong)(tong)(tong)實(shi)現(xian)。進程(cheng)間的協同(tong)(tong)(tong)實(shi)現(xian)任(ren)(ren)(ren)務(wu)的方式包括(kuo)同(tong)(tong)(tong)步任(ren)(ren)(ren)務(wu)實(shi)現(xian)方式和(he)異步任(ren)(ren)(ren)務(wu)實(shi)現(xian)方式。其(qi)中,異步任(ren)(ren)(ren)務(wu)實(shi)現(xian)方式主要基于binder驅動機制實(shi)現(xian)。
2、然而,在基于binder驅動(dong)機(ji)制處理異(yi)(yi)(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)的(de)過程(cheng)中,根據(ju)binder驅動(dong)機(ji)制的(de)設置,異(yi)(yi)(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)的(de)接(jie)收(shou)進(jin)程(cheng)(下(xia)文稱為服務(wu)(wu)(wu)(wu)(wu)進(jin)程(cheng))需(xu)要串行執行前(qian)后(hou)接(jie)收(shou)到(dao)的(de)異(yi)(yi)(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)。因此(ci),某個異(yi)(yi)(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)的(de)發(fa)送進(jin)程(cheng)(下(xia)文稱為客戶(hu)進(jin)程(cheng))所(suo)發(fa)送的(de)異(yi)(yi)(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu),需(xu)要等待接(jie)收(shou)異(yi)(yi)(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)的(de)服務(wu)(wu)(wu)(wu)(wu)進(jin)程(cheng)串行執行完該異(yi)(yi)(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)之前(qian)接(jie)收(shou)到(dao)的(de)異(yi)(yi)(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)以后(hou),才能執行該異(yi)(yi)(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)。
3、因此,如果在該(gai)異(yi)步(bu)任(ren)(ren)務(wu)(wu)之(zhi)前,服務(wu)(wu)進(jin)程需(xu)要串行執行的(de)異(yi)步(bu)任(ren)(ren)務(wu)(wu)的(de)數(shu)量(liang)較多(duo),和/或,服務(wu)(wu)進(jin)程執行此類異(yi)步(bu)任(ren)(ren)務(wu)(wu)所需(xu)的(de)時間較長,將導(dao)致該(gai)異(yi)步(bu)任(ren)(ren)務(wu)(wu)的(de)實現被阻(zu)塞。
技術實現思路
1、本技術(shu)提供(gong)了(le)一(yi)種進(jin)程調度方法(fa)、電子設(she)備(bei)和計算機(ji)可讀介質,通過縮減服務(wu)(wu)進(jin)程執行第一(yi)異步(bu)任務(wu)(wu)所需的時(shi)間,避免服務(wu)(wu)進(jin)程對(dui)第一(yi)異步(bu)任務(wu)(wu)的執行被阻(zu)塞。
2、第(di)(di)(di)一(yi)(yi)(yi)(yi)(yi)(yi)方(fang)面,本技術提供了一(yi)(yi)(yi)(yi)(yi)(yi)種進(jin)程(cheng)調度(du)方(fang)法,包括:檢測到第(di)(di)(di)一(yi)(yi)(yi)(yi)(yi)(yi)進(jin)程(cheng)向第(di)(di)(di)二(er)(er)進(jin)程(cheng)發送的(de)(de)第(di)(di)(di)一(yi)(yi)(yi)(yi)(yi)(yi)異步(bu)任(ren)(ren)務(wu)滿足調整條件;通(tong)過調整第(di)(di)(di)二(er)(er)進(jin)程(cheng)執行的(de)(de)至(zhi)少一(yi)(yi)(yi)(yi)(yi)(yi)個(ge)(ge)異步(bu)任(ren)(ren)務(wu)的(de)(de)優先級,縮減(jian)第(di)(di)(di)二(er)(er)進(jin)程(cheng)執行第(di)(di)(di)一(yi)(yi)(yi)(yi)(yi)(yi)異步(bu)任(ren)(ren)務(wu)的(de)(de)執行時間,其中(zhong),至(zhi)少一(yi)(yi)(yi)(yi)(yi)(yi)個(ge)(ge)異步(bu)任(ren)(ren)務(wu)包括第(di)(di)(di)一(yi)(yi)(yi)(yi)(yi)(yi)異步(bu)任(ren)(ren)務(wu)、第(di)(di)(di)二(er)(er)進(jin)程(cheng)當前(qian)執行的(de)(de)第(di)(di)(di)二(er)(er)異步(bu)任(ren)(ren)務(wu)、第(di)(di)(di)二(er)(er)進(jin)程(cheng)在第(di)(di)(di)一(yi)(yi)(yi)(yi)(yi)(yi)異步(bu)任(ren)(ren)務(wu)之前(qian)接收到的(de)(de)未執行的(de)(de)一(yi)(yi)(yi)(yi)(yi)(yi)個(ge)(ge)或(huo)多個(ge)(ge)第(di)(di)(di)三異步(bu)任(ren)(ren)務(wu)中(zhong)的(de)(de)至(zhi)少一(yi)(yi)(yi)(yi)(yi)(yi)個(ge)(ge)。
3、在此,調(diao)整(zheng)條(tiao)件可以(yi)是下文中確定關(guan)鍵異(yi)(yi)步任(ren)務(wu)的(de)預(yu)設條(tiao)件。若檢(jian)測到(dao)第一進程(cheng)向第二進程(cheng)發送的(de)第一異(yi)(yi)步任(ren)務(wu)滿(man)足調(diao)整(zheng)條(tiao)件,則說明(ming)第一異(yi)(yi)步任(ren)務(wu)是關(guan)鍵異(yi)(yi)步任(ren)務(wu)。進而,可以(yi)通過調(diao)整(zheng)第二進程(cheng)執行的(de)至(zhi)少一個異(yi)(yi)步任(ren)務(wu)的(de)優先(xian)級,縮減第二進程(cheng)執行第一異(yi)(yi)步任(ren)務(wu)的(de)執行時間,以(yi)避(bi)免第一異(yi)(yi)步任(ren)務(wu)的(de)執行被阻塞。
4、在此,第(di)(di)一(yi)進程(cheng)可以(yi)(yi)是(shi)下文(wen)中的(de)客(ke)戶進程(cheng),第(di)(di)二進程(cheng)可以(yi)(yi)是(shi)下文(wen)中的(de)服務(wu)進程(cheng)。第(di)(di)二進程(cheng)執(zhi)行第(di)(di)一(yi)異步(bu)(bu)(bu)任(ren)(ren)務(wu)的(de)執(zhi)行時(shi)間(jian)(jian)可以(yi)(yi)是(shi)下文(wen)中服務(wu)進程(cheng)執(zhi)行第(di)(di)一(yi)異步(bu)(bu)(bu)任(ren)(ren)務(wu)所(suo)(suo)需(xu)的(de)時(shi)間(jian)(jian),例(li)如,從客(ke)戶端發(fa)送第(di)(di)一(yi)異步(bu)(bu)(bu)任(ren)(ren)務(wu)到服務(wu)端執(zhi)行完成第(di)(di)一(yi)異步(bu)(bu)(bu)任(ren)(ren)務(wu)所(suo)(suo)需(xu)的(de)時(shi)間(jian)(jian)。
5、第(di)二異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)及(ji)第(di)三(san)異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)均(jun)為第(di)二進(jin)(jin)程(cheng)在(zai)接收到第(di)一異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)之前(qian),就(jiu)已經接收到的(de)異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)。因(yin)此,通過調整(zheng)第(di)二異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)和/或(huo)第(di)三(san)異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)的(de)優(you)先級,可(ke)(ke)以縮(suo)短服務(wu)(wu)(wu)(wu)進(jin)(jin)程(cheng)執行(xing)(xing)第(di)二異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)和/或(huo)第(di)三(san)異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)所需(xu)的(de)時間(jian)。進(jin)(jin)而,可(ke)(ke)以縮(suo)短第(di)一進(jin)(jin)程(cheng)發(fa)送(song)第(di)一異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)到第(di)二進(jin)(jin)程(cheng)開始執行(xing)(xing)第(di)一異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)所需(xu)的(de)時間(jian),可(ke)(ke)以理解(jie),此時,將縮(suo)減(jian)服務(wu)(wu)(wu)(wu)進(jin)(jin)程(cheng)執行(xing)(xing)第(di)一異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)所需(xu)的(de)時間(jian),避免(mian)服務(wu)(wu)(wu)(wu)進(jin)(jin)程(cheng)對第(di)一異(yi)步(bu)(bu)任(ren)務(wu)(wu)(wu)(wu)的(de)執行(xing)(xing)被阻塞。
6、通過調整第(di)一(yi)異(yi)步(bu)任(ren)(ren)務(wu)(wu)的優先(xian)級可以縮減第(di)二(er)進程從開始執行第(di)一(yi)異(yi)步(bu)任(ren)(ren)務(wu)(wu)至(zhi)執行完(wan)成第(di)一(yi)異(yi)步(bu)任(ren)(ren)務(wu)(wu)所需(xu)的時(shi)間(jian)。可以理(li)解(jie),此時(shi),將縮減服(fu)務(wu)(wu)進程執行第(di)一(yi)異(yi)步(bu)任(ren)(ren)務(wu)(wu)所需(xu)的時(shi)間(jian),避免(mian)服(fu)務(wu)(wu)進程對第(di)一(yi)異(yi)步(bu)任(ren)(ren)務(wu)(wu)的執行被阻塞(sai)。
7、在上述第一方面的(de)一種可能(neng)的(de)實現中(zhong),縮減第二(er)進程執行(xing)(xing)第一異(yi)步任務(wu)(wu)(wu)的(de)執行(xing)(xing)時間,包括:對應于(yu)至少一個異(yi)步任務(wu)(wu)(wu)包括第一異(yi)步任務(wu)(wu)(wu),確定(ding)第二(er)進程中(zhong)用(yong)于(yu)執行(xing)(xing)第一異(yi)步任務(wu)(wu)(wu)的(de)第一線程;將第一線程對應的(de)第一優(you)先級提高為第二(er)優(you)先級。
8、在此,第(di)(di)(di)二(er)進(jin)程(cheng)(cheng)(cheng)中用(yong)于(yu)執(zhi)行(xing)(xing)(xing)第(di)(di)(di)一(yi)(yi)(yi)(yi)異(yi)(yi)(yi)步(bu)任(ren)務(wu)(wu)的(de)(de)(de)第(di)(di)(di)一(yi)(yi)(yi)(yi)線(xian)程(cheng)(cheng)(cheng)可(ke)以是(shi),服務(wu)(wu)進(jin)程(cheng)(cheng)(cheng)中用(yong)于(yu)執(zhi)行(xing)(xing)(xing)第(di)(di)(di)一(yi)(yi)(yi)(yi)異(yi)(yi)(yi)步(bu)任(ren)務(wu)(wu)的(de)(de)(de)binder線(xian)程(cheng)(cheng)(cheng)。第(di)(di)(di)一(yi)(yi)(yi)(yi)線(xian)程(cheng)(cheng)(cheng)對(dui)(dui)應(ying)(ying)(ying)的(de)(de)(de)優(you)先(xian)(xian)級可(ke)以是(shi)下(xia)文中binder線(xian)程(cheng)(cheng)(cheng)對(dui)(dui)應(ying)(ying)(ying)的(de)(de)(de)調(diao)(diao)度(du)(du)優(you)先(xian)(xian)級。第(di)(di)(di)一(yi)(yi)(yi)(yi)優(you)先(xian)(xian)級可(ke)以是(shi)對(dui)(dui)應(ying)(ying)(ying)于(yu)非(fei)實時(shi)調(diao)(diao)度(du)(du)策略(lve)的(de)(de)(de)非(fei)rt優(you)先(xian)(xian)級,第(di)(di)(di)二(er)優(you)先(xian)(xian)級可(ke)以是(shi)對(dui)(dui)應(ying)(ying)(ying)于(yu)實時(shi)調(diao)(diao)度(du)(du)策略(lve)的(de)(de)(de)rt優(you)先(xian)(xian)級。將第(di)(di)(di)一(yi)(yi)(yi)(yi)線(xian)程(cheng)(cheng)(cheng)對(dui)(dui)應(ying)(ying)(ying)的(de)(de)(de)第(di)(di)(di)一(yi)(yi)(yi)(yi)優(you)先(xian)(xian)級提高(gao)為(wei)第(di)(di)(di)二(er)優(you)先(xian)(xian)級可(ke)以是(shi),將執(zhi)行(xing)(xing)(xing)第(di)(di)(di)一(yi)(yi)(yi)(yi)異(yi)(yi)(yi)步(bu)任(ren)務(wu)(wu)的(de)(de)(de)binder線(xian)程(cheng)(cheng)(cheng)對(dui)(dui)應(ying)(ying)(ying)的(de)(de)(de)非(fei)rt優(you)先(xian)(xian)級提高(gao)為(wei)rt優(you)先(xian)(xian)級,使得(de)該binder線(xian)程(cheng)(cheng)(cheng)可(ke)以優(you)先(xian)(xian)獲取到cpu資源,避免(mian)第(di)(di)(di)一(yi)(yi)(yi)(yi)異(yi)(yi)(yi)步(bu)任(ren)務(wu)(wu)的(de)(de)(de)執(zhi)行(xing)(xing)(xing)被中斷,進(jin)而,可(ke)縮減(jian)第(di)(di)(di)二(er)進(jin)程(cheng)(cheng)(cheng)從(cong)開始執(zhi)行(xing)(xing)(xing)第(di)(di)(di)一(yi)(yi)(yi)(yi)異(yi)(yi)(yi)步(bu)任(ren)務(wu)(wu)至執(zhi)行(xing)(xing)(xing)完成第(di)(di)(di)一(yi)(yi)(yi)(yi)異(yi)(yi)(yi)步(bu)任(ren)務(wu)(wu)所(suo)需的(de)(de)(de)時(shi)間。
9、在上述第(di)(di)一(yi)(yi)(yi)方面(mian)的一(yi)(yi)(yi)種可能的實(shi)現(xian)中(zhong),將第(di)(di)一(yi)(yi)(yi)線程(cheng)對應(ying)(ying)的第(di)(di)一(yi)(yi)(yi)優先級(ji)(ji)提高為第(di)(di)二優先級(ji)(ji),包括:將第(di)(di)一(yi)(yi)(yi)線程(cheng)對應(ying)(ying)的調度(du)策略調整為實(shi)時調度(du)策略,其(qi)中(zhong),實(shi)時調度(du)策略對應(ying)(ying)于(yu)第(di)(di)二優先級(ji)(ji)。
10、在此,可以通(tong)過將第(di)(di)(di)一(yi)(yi)(yi)線(xian)(xian)程(cheng)對(dui)應的調(diao)(diao)度(du)策略調(diao)(diao)整(zheng)為實時調(diao)(diao)度(du)策略的方式,將第(di)(di)(di)一(yi)(yi)(yi)線(xian)(xian)程(cheng)對(dui)應的優(you)先級調(diao)(diao)整(zheng)為第(di)(di)(di)二(er)優(you)先級。使得第(di)(di)(di)一(yi)(yi)(yi)線(xian)(xian)程(cheng)可以優(you)先獲取到cpu資源,避免第(di)(di)(di)一(yi)(yi)(yi)異步任務的執(zhi)行被(bei)中斷(duan),進而(er),可以縮(suo)減第(di)(di)(di)二(er)進程(cheng)從(cong)開始(shi)執(zhi)行第(di)(di)(di)一(yi)(yi)(yi)異步任務至執(zhi)行完成第(di)(di)(di)一(yi)(yi)(yi)異步任務所需的時間。
11、在(zai)上述第(di)一方面(mian)的(de)一種可能的(de)實現中(zhong),第(di)一異步任(ren)務執行完畢后,還(huan)包(bao)括:將第(di)一線程對應的(de)第(di)二優(you)(you)先(xian)級恢復(fu)為第(di)一優(you)(you)先(xian)級。
12、在此,在第(di)(di)一異步(bu)任(ren)(ren)務(wu)執行(xing)完畢后(hou),可以通過將(jiang)第(di)(di)一線程(cheng)(cheng)對(dui)(dui)應的(de)調度(du)(du)策(ce)略(lve)恢復為(wei)非(fei)(fei)實時調度(du)(du)策(ce)略(lve)的(de)方(fang)式,將(jiang)第(di)(di)一線程(cheng)(cheng)對(dui)(dui)應的(de)優先級(ji)恢復為(wei)第(di)(di)一優先級(ji)。以使得第(di)(di)一線程(cheng)(cheng)可基于非(fei)(fei)實時調度(du)(du)策(ce)略(lve)執行(xing)其他非(fei)(fei)關鍵異步(bu)任(ren)(ren)務(wu)或者同(tong)步(bu)任(ren)(ren)務(wu)。
13、在上述第(di)(di)一方面的一種可能的實現中(zhong),縮減(jian)第(di)(di)二進程(cheng)執(zhi)(zhi)行第(di)(di)一異步(bu)(bu)任務(wu)的執(zhi)(zhi)行時間,包括:對(dui)應于至少一個(ge)異步(bu)(bu)任務(wu)包括第(di)(di)二異步(bu)(bu)任務(wu),確定(ding)第(di)(di)二進程(cheng)中(zhong)用于執(zhi)(zhi)行第(di)(di)二異步(bu)(bu)任務(wu)的第(di)(di)二線程(cheng);將第(di)(di)二線程(cheng)對(dui)應的第(di)(di)三優(you)先級提高為第(di)(di)四優(you)先級。
14、在(zai)此,第(di)(di)(di)(di)二(er)(er)(er)進(jin)(jin)程(cheng)中(zhong)用(yong)于執行第(di)(di)(di)(di)二(er)(er)(er)異(yi)步(bu)(bu)任(ren)務(wu)(wu)的(de)(de)(de)(de)第(di)(di)(di)(di)二(er)(er)(er)線程(cheng)可(ke)(ke)(ke)以(yi)(yi)是,服(fu)務(wu)(wu)進(jin)(jin)程(cheng)中(zhong)用(yong)于執行第(di)(di)(di)(di)二(er)(er)(er)異(yi)步(bu)(bu)任(ren)務(wu)(wu)的(de)(de)(de)(de)binder線程(cheng)。第(di)(di)(di)(di)二(er)(er)(er)線程(cheng)對應(ying)的(de)(de)(de)(de)優(you)(you)先(xian)(xian)(xian)級(ji)(ji)可(ke)(ke)(ke)以(yi)(yi)是binder線程(cheng)對應(ying)的(de)(de)(de)(de)調度優(you)(you)先(xian)(xian)(xian)級(ji)(ji)。第(di)(di)(di)(di)三優(you)(you)先(xian)(xian)(xian)級(ji)(ji)可(ke)(ke)(ke)以(yi)(yi)是對應(ying)于非(fei)(fei)實(shi)時調度策略(lve)的(de)(de)(de)(de)非(fei)(fei)rt優(you)(you)先(xian)(xian)(xian)級(ji)(ji),第(di)(di)(di)(di)四(si)優(you)(you)先(xian)(xian)(xian)級(ji)(ji)可(ke)(ke)(ke)以(yi)(yi)是對應(ying)于實(shi)時調度策略(lve)的(de)(de)(de)(de)rt優(you)(you)先(xian)(xian)(xian)級(ji)(ji)。將第(di)(di)(di)(di)二(er)(er)(er)線程(cheng)對應(ying)的(de)(de)(de)(de)第(di)(di)(di)(di)三優(you)(you)先(xian)(xian)(xian)級(ji)(ji)提高(gao)為(wei)(wei)第(di)(di)(di)(di)四(si)優(you)(you)先(xian)(xian)(xian)級(ji)(ji),可(ke)(ke)(ke)以(yi)(yi)是將執行第(di)(di)(di)(di)二(er)(er)(er)異(yi)步(bu)(bu)任(ren)務(wu)(wu)的(de)(de)(de)(de)binder線程(cheng)的(de)(de)(de)(de)非(fei)(fei)rt優(you)(you)先(xian)(xian)(xian)級(ji)(ji)提高(gao)為(wei)(wei)rt優(you)(you)先(xian)(xian)(xian)級(ji)(ji),使得該binder線程(cheng)可(ke)(ke)(ke)以(yi)(yi)優(you)(you)先(xian)(xian)(xian)獲取(qu)到cpu資源,避免第(di)(di)(di)(di)二(er)(er)(er)異(yi)步(bu)(bu)任(ren)務(wu)(wu)的(de)(de)(de)(de)執行被(bei)中(zhong)斷,縮減第(di)(di)(di)(di)二(er)(er)(er)進(jin)(jin)程(cheng)執行第(di)(di)(di)(di)二(er)(er)(er)異(yi)步(bu)(bu)任(ren)務(wu)(wu)所需的(de)(de)(de)(de)時間(jian)(jian)(jian)。從而,縮短(duan)第(di)(di)(di)(di)一進(jin)(jin)程(cheng)發送第(di)(di)(di)(di)一異(yi)步(bu)(bu)任(ren)務(wu)(wu)到第(di)(di)(di)(di)二(er)(er)(er)進(jin)(jin)程(cheng)開(kai)始執行第(di)(di)(di)(di)一異(yi)步(bu)(bu)任(ren)務(wu)(wu)所需的(de)(de)(de)(de)時間(jian)(jian)(jian)。進(jin)(jin)而,縮減第(di)(di)(di)(di)二(er)(er)(er)進(jin)(jin)程(cheng)執行第(di)(di)(di)(di)一異(yi)步(bu)(bu)任(ren)務(wu)(wu)的(de)(de)(de)(de)執行時間(jian)(jian)(jian)。
15、在上述第一方面的(de)一種可能的(de)實現中,將第二線程對(dui)應(ying)(ying)的(de)第三優先(xian)(xian)級提高為第四優先(xian)(xian)級,包括:將第二線程對(dui)應(ying)(ying)的(de)調(diao)度策略(lve)(lve)調(diao)整為實時(shi)調(diao)度策略(lve)(lve),其(qi)中,實時(shi)調(diao)度策略(lve)(lve)對(dui)應(ying)(ying)于第四優先(xian)(xian)級。
16、在此,可以通(tong)過(guo)將(jiang)第(di)(di)二(er)線(xian)(xian)程對(dui)應的(de)調(diao)度策(ce)(ce)略調(diao)整為實時調(diao)度策(ce)(ce)略的(de)方式(shi),將(jiang)第(di)(di)二(er)線(xian)(xian)程對(dui)應的(de)優(you)先級調(diao)整為第(di)(di)四優(you)先級。使得第(di)(di)二(er)線(xian)(xian)程可以優(you)先獲取到cpu資(zi)源,避免(mian)第(di)(di)二(er)異(yi)步(bu)任務的(de)執(zhi)行被中斷(duan),縮(suo)減第(di)(di)二(er)進(jin)程執(zhi)行第(di)(di)二(er)異(yi)步(bu)任務所需(xu)的(de)時間。從而,縮(suo)短第(di)(di)一(yi)進(jin)程發(fa)送第(di)(di)一(yi)異(yi)步(bu)任務到第(di)(di)二(er)進(jin)程開始執(zhi)行第(di)(di)一(yi)異(yi)步(bu)任務所需(xu)的(de)時間。進(jin)而,縮(suo)減第(di)(di)二(er)進(jin)程執(zhi)行第(di)(di)一(yi)異(yi)步(bu)任務的(de)執(zhi)行時間。
17、在(zai)上述第(di)一方面的一種可能的實現中,第(di)二異(yi)步(bu)任務執行完畢后,該方法還(huan)包括:將第(di)二線程對(dui)應的第(di)四優先級恢(hui)復(fu)為(wei)第(di)三優先級。
18、在此,在第(di)二(er)(er)異(yi)步任務(wu)執(zhi)行完(wan)畢(bi)后,可以通(tong)過將第(di)二(er)(er)線(xian)程(cheng)對應(ying)的調度策(ce)略恢復為非實(shi)時調度策(ce)略的方(fang)式,將第(di)二(er)(er)線(xian)程(cheng)對應(ying)的優先級恢復為第(di)三優先級。以使得第(di)二(er)(er)線(xian)程(cheng)可基(ji)于非實(shi)時調度策(ce)略執(zhi)行其他非關鍵異(yi)步任務(wu)或者同(tong)步任務(wu)。
19、在(zai)上述第(di)(di)(di)(di)(di)一(yi)(yi)(yi)方面的(de)(de)一(yi)(yi)(yi)種(zhong)可能(neng)的(de)(de)實現中(zhong),第(di)(di)(di)(di)(di)三異(yi)(yi)(yi)步任(ren)(ren)務(wu)存儲(chu)在(zai)第(di)(di)(di)(di)(di)二進(jin)(jin)程(cheng)對(dui)應(ying)(ying)的(de)(de)第(di)(di)(di)(di)(di)一(yi)(yi)(yi)隊列中(zhong),并且(qie),各個(ge)(ge)第(di)(di)(di)(di)(di)三異(yi)(yi)(yi)步任(ren)(ren)務(wu)在(zai)第(di)(di)(di)(di)(di)一(yi)(yi)(yi)隊列中(zhong)具有對(dui)應(ying)(ying)的(de)(de)第(di)(di)(di)(di)(di)五(wu)優(you)(you)先(xian)(xian)級(ji)(ji),其中(zhong),縮(suo)減第(di)(di)(di)(di)(di)二進(jin)(jin)程(cheng)執行第(di)(di)(di)(di)(di)一(yi)(yi)(yi)異(yi)(yi)(yi)步任(ren)(ren)務(wu)的(de)(de)執行時間,包括(kuo):對(dui)應(ying)(ying)于(yu)至少(shao)(shao)一(yi)(yi)(yi)個(ge)(ge)異(yi)(yi)(yi)步任(ren)(ren)務(wu)包括(kuo)一(yi)(yi)(yi)個(ge)(ge)或多(duo)個(ge)(ge)第(di)(di)(di)(di)(di)三異(yi)(yi)(yi)步任(ren)(ren)務(wu),將一(yi)(yi)(yi)個(ge)(ge)或多(duo)個(ge)(ge)第(di)(di)(di)(di)(di)三異(yi)(yi)(yi)步任(ren)(ren)務(wu)中(zhong),至少(shao)(shao)一(yi)(yi)(yi)個(ge)(ge)第(di)(di)(di)(di)(di)三異(yi)(yi)(yi)步任(ren)(ren)務(wu)對(dui)應(ying)(ying)的(de)(de)第(di)(di)(di)(di)(di)五(wu)優(you)(you)先(xian)(xian)級(ji)(ji)降低為第(di)(di)(di)(di)(di)六(liu)優(you)(you)先(xian)(xian)級(ji)(ji)。
20、在(zai)此,第(di)(di)(di)(di)(di)(di)(di)(di)一隊(dui)列可以(yi)(yi)是服務(wu)進程(cheng)對應的(de)(de)(de)異(yi)(yi)(yi)步(bu)(bu)(bu)隊(dui)列。各個(ge)第(di)(di)(di)(di)(di)(di)(di)(di)三(san)異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)在(zai)第(di)(di)(di)(di)(di)(di)(di)(di)一隊(dui)列中(zhong)對應的(de)(de)(de)優(you)(you)(you)(you)先(xian)級(ji)可以(yi)(yi)是下(xia)文中(zhong)的(de)(de)(de)執(zhi)(zhi)(zhi)行(xing)(xing)優(you)(you)(you)(you)先(xian)級(ji)。第(di)(di)(di)(di)(di)(di)(di)(di)五優(you)(you)(you)(you)先(xian)級(ji)可以(yi)(yi)是第(di)(di)(di)(di)(di)(di)(di)(di)一異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)加入第(di)(di)(di)(di)(di)(di)(di)(di)一隊(dui)列之前,各個(ge)第(di)(di)(di)(di)(di)(di)(di)(di)三(san)異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)對應的(de)(de)(de)執(zhi)(zhi)(zhi)行(xing)(xing)優(you)(you)(you)(you)先(xian)級(ji)。由于(yu)第(di)(di)(di)(di)(di)(di)(di)(di)三(san)異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)早(zao)于(yu)第(di)(di)(di)(di)(di)(di)(di)(di)一異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu),因(yin)此,第(di)(di)(di)(di)(di)(di)(di)(di)三(san)異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)的(de)(de)(de)第(di)(di)(di)(di)(di)(di)(di)(di)五優(you)(you)(you)(you)先(xian)級(ji)高(gao)于(yu)第(di)(di)(di)(di)(di)(di)(di)(di)一異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)的(de)(de)(de)執(zhi)(zhi)(zhi)行(xing)(xing)優(you)(you)(you)(you)先(xian)級(ji)。其中(zhong),第(di)(di)(di)(di)(di)(di)(di)(di)六優(you)(you)(you)(you)先(xian)級(ji)低(di)(di)于(yu)第(di)(di)(di)(di)(di)(di)(di)(di)一異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)的(de)(de)(de)執(zhi)(zhi)(zhi)行(xing)(xing)優(you)(you)(you)(you)先(xian)級(ji)。因(yin)此,將(jiang)(jiang)至少一個(ge)第(di)(di)(di)(di)(di)(di)(di)(di)三(san)異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)對應的(de)(de)(de)第(di)(di)(di)(di)(di)(di)(di)(di)五優(you)(you)(you)(you)先(xian)級(ji)降低(di)(di)為第(di)(di)(di)(di)(di)(di)(di)(di)六優(you)(you)(you)(you)先(xian)級(ji),意味著,至少一個(ge)第(di)(di)(di)(di)(di)(di)(di)(di)三(san)異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)將(jiang)(jiang)被調(diao)整至第(di)(di)(di)(di)(di)(di)(di)(di)一異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)之后執(zhi)(zhi)(zhi)行(xing)(xing)。從而,縮(suo)短第(di)(di)(di)(di)(di)(di)(di)(di)一進程(cheng)發(fa)送第(di)(di)(di)(di)(di)(di)(di)(di)一異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)到第(di)(di)(di)(di)(di)(di)(di)(di)二(er)進程(cheng)開始執(zhi)(zhi)(zhi)行(xing)(xing)第(di)(di)(di)(di)(di)(di)(di)(di)一異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)所需的(de)(de)(de)時間(jian),進而,縮(suo)減第(di)(di)(di)(di)(di)(di)(di)(di)二(er)進程(cheng)執(zhi)(zhi)(zhi)行(xing)(xing)第(di)(di)(di)(di)(di)(di)(di)(di)一異(yi)(yi)(yi)步(bu)(bu)(bu)任(ren)(ren)務(wu)的(de)(de)(de)執(zhi)(zhi)(zhi)行(xing)(xing)時間(jian)。
21、在上述第一方面的(de)一種(zhong)可(ke)能的(de)實(shi)現中(zhong),將一個(ge)或(huo)多個(ge)第三(san)異(yi)步(bu)任(ren)(ren)務(wu)(wu)(wu)中(zhong),至少一個(ge)第三(san)異(yi)步(bu)任(ren)(ren)務(wu)(wu)(wu)對應(ying)的(de)第五優(you)(you)先(xian)(xian)級降(jiang)低(di)為第六優(you)(you)先(xian)(xian)級,包括:將第一異(yi)步(bu)任(ren)(ren)務(wu)(wu)(wu)加入第一隊列的(de)隊首(shou),以降(jiang)低(di)各第三(san)異(yi)步(bu)任(ren)(ren)務(wu)(wu)(wu)對應(ying)的(de)優(you)(you)先(xian)(xian)級。
22、在此,位于第一(yi)(yi)隊列的(de)隊首的(de)異(yi)(yi)步(bu)任(ren)務(wu)執(zhi)(zhi)(zhi)行優先(xian)(xian)級(ji)最高。因(yin)此,將第一(yi)(yi)異(yi)(yi)步(bu)任(ren)務(wu)加入第一(yi)(yi)隊列的(de)隊首,可以(yi)使(shi)得第一(yi)(yi)異(yi)(yi)步(bu)任(ren)務(wu)對(dui)應的(de)執(zhi)(zhi)(zhi)行優先(xian)(xian)級(ji)最高,進(jin)而,將使(shi)得所(suo)有(you)第三異(yi)(yi)步(bu)任(ren)務(wu)對(dui)應的(de)執(zhi)(zhi)(zhi)行優先(xian)(xian)級(ji)降低,例(li)如,可以(yi)由第五(wu)優先(xian)(xian)級(ji)降低為(wei)第六優先(xian)(xian)級(ji)。因(yin)此,該方(fang)式可以(yi)將所(suo)有(you)第三異(yi)(yi)步(bu)任(ren)務(wu)調整至(zhi)第一(yi)(yi)異(yi)(yi)步(bu)任(ren)務(wu)之后執(zhi)(zhi)(zhi)行。從(cong)而,縮短第一(yi)(yi)進(jin)程發送第一(yi)(yi)異(yi)(yi)步(bu)任(ren)務(wu)到第二進(jin)程開(kai)始執(zhi)(zhi)(zhi)行第一(yi)(yi)異(yi)(yi)步(bu)任(ren)務(wu)所(suo)需的(de)時(shi)間,進(jin)而,縮減第二進(jin)程執(zhi)(zhi)(zhi)行第一(yi)(yi)異(yi)(yi)步(bu)任(ren)務(wu)的(de)執(zhi)(zhi)(zhi)行時(shi)間。
23、在上述(shu)第(di)一(yi)(yi)方面的一(yi)(yi)種(zhong)可能的實現(xian)中,將一(yi)(yi)個或多個第(di)三(san)異(yi)(yi)步任務(wu)(wu)中,至(zhi)少(shao)一(yi)(yi)個第(di)三(san)異(yi)(yi)步任務(wu)(wu)對應的第(di)五優(you)先級(ji)(ji)降(jiang)(jiang)低為第(di)六優(you)先級(ji)(ji),包(bao)括(kuo):對應于至(zhi)少(shao)一(yi)(yi)個第(di)三(san)異(yi)(yi)步任務(wu)(wu)不滿足(zu)調整條件,將第(di)一(yi)(yi)異(yi)(yi)步任務(wu)(wu)加入(ru)至(zhi)少(shao)一(yi)(yi)個第(di)三(san)異(yi)(yi)步任務(wu)(wu)之前,以降(jiang)(jiang)低至(zhi)少(shao)一(yi)(yi)個第(di)三(san)異(yi)(yi)步任務(wu)(wu)對應的優(you)先級(ji)(ji)。
24、在(zai)此(ci),可確(que)定一(yi)(yi)個(ge)(ge)或多個(ge)(ge)第(di)(di)(di)三(san)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)中(zhong),不(bu)滿(man)足調整條(tiao)件(jian)的(de)(de)至(zhi)少(shao)一(yi)(yi)個(ge)(ge)第(di)(di)(di)三(san)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)。其(qi)中(zhong),不(bu)滿(man)足調整條(tiao)件(jian)的(de)(de)第(di)(di)(di)三(san)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu),相(xiang)當(dang)于(yu),被確(que)定為(wei)非(fei)關(guan)鍵(jian)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)的(de)(de)第(di)(di)(di)三(san)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)。進(jin)而(er),將第(di)(di)(di)一(yi)(yi)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)加入至(zhi)少(shao)一(yi)(yi)個(ge)(ge)第(di)(di)(di)三(san)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)之(zhi)(zhi)前(qian),相(xiang)當(dang)于(yu),使得被確(que)定為(wei)非(fei)關(guan)鍵(jian)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)的(de)(de)第(di)(di)(di)三(san)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)的(de)(de)執(zhi)(zhi)行(xing)(xing)優先(xian)級(ji)降低,并且,低于(yu)第(di)(di)(di)一(yi)(yi)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)的(de)(de)執(zhi)(zhi)行(xing)(xing)優先(xian)級(ji)。因此(ci),該(gai)方式(shi)可以將作為(wei)非(fei)關(guan)鍵(jian)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)的(de)(de)第(di)(di)(di)三(san)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)延后到第(di)(di)(di)一(yi)(yi)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)之(zhi)(zhi)后執(zhi)(zhi)行(xing)(xing),而(er)所有作為(wei)關(guan)鍵(jian)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)的(de)(de)第(di)(di)(di)三(san)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)仍在(zai)第(di)(di)(di)一(yi)(yi)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)之(zhi)(zhi)前(qian)執(zhi)(zhi)行(xing)(xing)。相(xiang)當(dang)于(yu),異(yi)(yi)步(bu)(bu)隊列(lie)中(zhong)的(de)(de)所有關(guan)鍵(jian)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)的(de)(de)執(zhi)(zhi)行(xing)(xing)順序不(bu)變。從而(er),可縮短第(di)(di)(di)一(yi)(yi)進(jin)程發(fa)送(song)第(di)(di)(di)一(yi)(yi)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)到第(di)(di)(di)二(er)進(jin)程開始執(zhi)(zhi)行(xing)(xing)第(di)(di)(di)一(yi)(yi)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)所需的(de)(de)時間,并且,避免因提高第(di)(di)(di)一(yi)(yi)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)的(de)(de)執(zhi)(zhi)行(xing)(xing)優先(xian)級(ji),導(dao)致其(qi)他關(guan)鍵(jian)異(yi)(yi)步(bu)(bu)任(ren)(ren)(ren)(ren)(ren)(ren)(ren)務(wu)(wu)(wu)(wu)(wu)(wu)的(de)(de)等待執(zhi)(zhi)行(xing)(xing)時間變長(chang)。
25、可以(yi)(yi)理解,延后(hou)到第一異(yi)步(bu)(bu)任(ren)務(wu)之(zhi)后(hou)執行的第三異(yi)步(bu)(bu)任(ren)務(wu),可以(yi)(yi)是第一隊列(lie)中(zhong)所(suo)有作為(wei)非(fei)關鍵(jian)異(yi)步(bu)(bu)任(ren)務(wu)的第三異(yi)步(bu)(bu)任(ren)務(wu),也(ye)可以(yi)(yi)是第一隊列(lie)中(zhong)部分作為(wei)非(fei)關鍵(jian)異(yi)步(bu)(bu)任(ren)務(wu)的第三異(yi)步(bu)(bu)任(ren)務(wu)。
26、第二(er)方面(mian)(mian),本(ben)技術提(ti)(ti)供(gong)了一(yi)(yi)種(zhong)電(dian)子設備(bei),包括:一(yi)(yi)個(ge)(ge)(ge)或(huo)多(duo)個(ge)(ge)(ge)處理(li)(li)器(qi);一(yi)(yi)個(ge)(ge)(ge)或(huo)多(duo)個(ge)(ge)(ge)存(cun)儲器(qi);一(yi)(yi)個(ge)(ge)(ge)或(huo)多(duo)個(ge)(ge)(ge)存(cun)儲器(qi)存(cun)儲有(you)一(yi)(yi)個(ge)(ge)(ge)或(huo)多(duo)個(ge)(ge)(ge)程(cheng)序(xu),當(dang)一(yi)(yi)個(ge)(ge)(ge)或(huo)者多(duo)個(ge)(ge)(ge)程(cheng)序(xu)被一(yi)(yi)個(ge)(ge)(ge)或(huo)多(duo)個(ge)(ge)(ge)處理(li)(li)器(qi)執(zhi)行(xing)時,使得電(dian)子設備(bei)執(zhi)行(xing)上述(shu)第一(yi)(yi)方面(mian)(mian)以及上述(shu)第一(yi)(yi)方面(mian)(mian)的各種(zhong)可能的實(shi)現提(ti)(ti)供(gong)的進程(cheng)調度(du)方法。
27、第(di)三方(fang)面,本技術(shu)提供(gong)了一種計算機可(ke)讀(du)介(jie)質,可(ke)讀(du)介(jie)質上(shang)(shang)存儲有指令(ling)(ling),指令(ling)(ling)在計算機上(shang)(shang)執(zhi)行時使(shi)計算機執(zhi)行上(shang)(shang)述第(di)一方(fang)面以及上(shang)(shang)述第(di)一方(fang)面的(de)各種可(ke)能的(de)實現提供(gong)的(de)進(jin)程調(diao)度方(fang)法(fa)。
28、第(di)(di)四方(fang)面(mian),本技術提供(gong)了一(yi)(yi)種計(ji)算機(ji)程(cheng)序產品(pin),包括(kuo)計(ji)算機(ji)程(cheng)序/指令(ling),計(ji)算機(ji)程(cheng)序/指令(ling)被處理器執行時實(shi)現上述(shu)第(di)(di)一(yi)(yi)方(fang)面(mian)以(yi)及上述(shu)第(di)(di)一(yi)(yi)方(fang)面(mian)的(de)各(ge)種可能的(de)實(shi)現提供(gong)的(de)進(jin)程(cheng)調度方(fang)法。
29、上(shang)述(shu)第(di)二方(fang)面(mian)至(zhi)第(di)四方(fang)面(mian)的有(you)益(yi)效果,可以參考上(shang)述(shu)第(di)一方(fang)面(mian)以及第(di)一方(fang)面(mian)的各種可能的實現(xian)中的相關描述(shu),在此不做贅述(shu)。