1.一種應(yīng)用于共享文件系統(tǒng)的任務(wù)再調(diào)度方法,其特征在于,包括如下步驟:
當某個節(jié)點失效時,多個未失效節(jié)點之間進行失效節(jié)點任務(wù)的搶占操作,搶占成功的節(jié)點接管失效節(jié)點的任務(wù)。
2.根據(jù)權(quán)利要求1所述的一種應(yīng)用于共享文件系統(tǒng)的任務(wù)再調(diào)度方法,其特征在于:所述搶占操作利用對某一文件的重命名操作來實現(xiàn),即所述多個未失效節(jié)點同時對同一個文件進行重命名操作,操作成功的某個節(jié)點為搶占成功的節(jié)點。
3.根據(jù)權(quán)利要求2所述的一種應(yīng)用于共享文件系統(tǒng)的任務(wù)再調(diào)度方法,其特征在于:所述文件為初始時在共享文件系統(tǒng)中創(chuàng)建的以“Ti-Nj”命名的文件,其中,Ti為任務(wù)編號,Nj為節(jié)點編號。
4.根據(jù)權(quán)利要求3所述的一種應(yīng)用于共享文件系統(tǒng)的任務(wù)再調(diào)度方法,其特征在于:每個節(jié)點上運行一個進程,在所述搶占操作之前,遍歷上述所有文件,檢查每個文件的文件名和修改時間,判斷是否進行搶占操作。
5.根據(jù)權(quán)利要求4所述的一種應(yīng)用于共享文件系統(tǒng)的任務(wù)再調(diào)度方法,其特征在于:以編號為k的節(jié)點,文件名為Ti-Nj的文件為例,所述判斷是否進行搶占操作的步驟具體為:
a.若i=k,j=k,表明該任務(wù)正由節(jié)點k進行處理,更新該文件的修改時間,繼續(xù)處理該任務(wù);
b.若i=k,j≠k,表明該任務(wù)原由節(jié)點k處理,節(jié)點k曾經(jīng)失效過,被其他節(jié)點搶占進行處理,現(xiàn)在節(jié)點k已恢復(fù)至健康狀態(tài),進行搶占回本節(jié)點任務(wù)的處理;
c.若i≠k,j=k,表明該任務(wù)原由節(jié)點Ni處理,Ni失效時由Nk搶占成功,此時更新該文件的修改時間并繼續(xù)處理該任務(wù);
d.若i≠k,j≠k,表明該任務(wù)由其他節(jié)點處理,此時判斷Nj是否失效,若失效則由其它節(jié)點進行搶占操作。
6.根據(jù)權(quán)利要求5所述的一種應(yīng)用于共享文件系統(tǒng)的任務(wù)再調(diào)度方法,其特征在于:步驟b中所述進行搶占回本節(jié)點任務(wù)的處理具體為:檢查文件Ti-Nj的修改時間距離當前時間是否已超過失效時間,如超過,則表明節(jié)點Nj已失效,此時所有發(fā)現(xiàn)Nj失效的健康節(jié)點進行搶占,節(jié)點Nk嘗試將Ti-Nj重命名為Ti-Nk,如果成功則說明搶占成功,更新Ti-Nk的修改時間,處理任務(wù)Ti;如未超過,則需要與Nj進行通信,通知Nj停止當前任務(wù),然后將Ti-Nj重命名為Ti-Nk,如果成功則說明搶占成功,更新Ti-Nk的修改時間,處理任務(wù)Ti。
7.根據(jù)權(quán)利要求5所述的一種應(yīng)用于共享文件系統(tǒng)的任務(wù)再調(diào)度方法,其特征在于:步驟d中所述判斷Nj是否失效,若失效則由其它節(jié)點進行槍戰(zhàn)操作具體為:檢查文件Ti-Nj的修改時間距離當前時間是否已超過失效時間,如超過,則節(jié)點Nj已失效,此時所有發(fā)現(xiàn)Nj失效的健康節(jié)點進行搶占,節(jié)點Nk嘗試將Ti-Nj重命名為Ti-Nk,如果成功則說明搶占成功,更新Ti-Nk的修改時間,處理任務(wù)Ti。