Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
IRP'lerin süresiz bir aralık için bekleme durumunda tutulabileceği tüm sürücülerde bir veya daha fazla İptal yordamı olmalıdır. Örneğin, bir klavye sürücüsü kullanıcının bir tuşa basmasını süresiz olarak bekleyebilir. Buna karşılık, bir sürücü beş dakika içinde tamamlayabileceğinden daha fazla IRP'yi hiçbir zaman kuyruğa almazsa, büyük olasılıkla İptal yordamına gerek yoktur.
Kullanıcı modu iş parçacığının, en üst düzey cihaz sürücüsünün işlemci işlevi tarafından kuyruğa alınan bir G/Ç isteği yaptığını ve IRP kuyruğa alınırken istekte bulunan iş parçacığının sonlandırıldığını varsayalım. Sonlandırılan iş parçacığı adına kuyruğa alınan IRP'ler iptal edilmelidir. Sonuç olarak, sürücünün sıraya aldığı her IRP için sürücü tarafından sağlanan İptal rutinini ayarlaması gerekir.
İlişkili IP'leri oluşturan bir sürücü, ana IRP iptal edildiğinde bunları iptal etmelidir. İlişkili IRP'ler istekte bulunan bir iş parçacığıyla ilişkilendirilmediğinden, ana IRP iptal edildiğinde ilişkili IRP'leri iptal etmekten ana IRP'nin İptal yordamı sorumludur.
Herhangi bir sürücünün sahip olduğu İptal yordamlarının sayısı sürücünün tasarımına bağlıdır. Genel olarak, bir sürücünün G/Ç işleme aşamalarının her biri için, bir IRP'nin süresiz bir aralık için askıda tutulabileceği bir İptal yordamı olmalıdır. Bu tür bekleyen IP'lerin iptal edilebilir durumda tutulacağı söylenir.
Aşağıdaki tasarım yönergelerini göz önünde bulundurun:
Katmanlı sürücüler zincirindeki en üst düzey sürücü, IRP'leri kuyruğa alıyor veya iptal edilebilir durumda tutuyorsa en az bir İptal yordamına sahip olmalıdır. Gerekirse birden fazla İptal yordamına sahip olabilir.
IRP'lerin görece uzun aralıklarla iptal edilebilir durumda tutulabileceği alt düzey sürücülerin de bir veya daha fazla İptal yordamı olmalıdır.
Bir sürücü kendi iç IRP kuyruklarını yönetiyorsa, kuyruklarının her biri için ayrı bir İptal yordamı olmalıdır.
Klavye, fare, ses, paralel sınıf ve seri sürücüler gibi etkileşimli cihazlar için en üst düzeydeki sürücülerin İptal yordamları olmalıdır. Bazı alt düzey sürücüler, örneğin belirli bir süre boyunca bazı üst düzey sınıf sürücüleri için IRP'leri kuyruğa atan bir paralel port sürücüsü gibi, ayrıca İptal yöntemlerine sahip olmalıdır.
Yığın depolama aygıt sürücüleri ve onların üzerine yerleştirilen ara sürücüler, İptal rutinlerine sahip olma olasılığı düşüktür. Dosya G/Ç isteklerinin iptalini işlemek bir dosya sistemi sürücüsünün sorumluluğundadır, ancak alt düzey yığın depolama sürücülerine IRP girişleri genellikle iptal edilemeyecek kadar hızlı tamamlanacak şekilde işlenir.