本節書摘來異步社群《資訊存儲與管理(第二版):數字資訊的存儲、管理和保護》一書中的第2章,第2.11節,作者:【新加坡】g.somasundaram ,【美】alok shrivastava,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。
資訊存儲與管理(第二版):數字資訊的存儲、管理和保護
指令排序是應用于磁盤驅動器的一項技術,它決定接收到的i/o請求的執行順序,以減少不必要的磁盤頭移動,提高磁盤性能。當磁盤控制器接收到i/o請求時,指令排序算法會為此i/o配置設定一個标簽,确定該指令的執行次序。使用指令排序技術,指令按照資料在磁盤上的組織确定執行順序,而非按照接收順序依次執行。
最常用的指令排序算法叫做尋道時間優化(seek time optimization)。指令的執行以實作讀寫頭移動的最優化為目的,可能會對指令重新排序。如果不使用尋道時間優化,指令會按接收順序先後執行。如圖2-16(a)所示,命!

令會按a,b,c,d的順序執行。a之後馬上執行c,所需的磁頭半徑移動幅度小于執行b。應用尋道時間優化技術,指令的執行順序為a, c, b, d,如圖2-16(b)所示。
通路時間優化(access time optimization)是另外一個指令排序算法。使用這種算法,指令的執行順序會綜合考慮尋道時間優化和對于旋轉延遲的分析,以實作最佳性能。
指令排序技術也應用在現代存儲陣列控制器中,有時候會與應用于磁盤的指令排序并用。