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.
Adından da anlaşılacağı gibi, denetleyici nesnesi genellikle ekli cihazlara sahip fiziksel bir cihaz denetleyicisini temsil eder. Fiziksel bir denetleyici tarafından koordine edilen benzer cihazlardan oluşan bir küme için en düşük düzeydeki WDM olmayan sürücü, bir denetleyici nesnesi oluşturabilir ve bunu ekli cihazlar arasında G/Ç işlemlerini senkronize etmek için kullanabilir. Sürücü bir ControllerControl yordamı uygular ve G/Ç yöneticisinin denetleyici nesnesi destek yordamlarını çağırır.
Uyarı
WDM sürücülerinde denetleyici nesnelerinin kullanımı desteklenmez.
Genellikle sürücüler, aşağıdaki ölçütler geçerlidirse, ekli cihazlarla işlemleri eşitlemek için denetleyici nesnelerini kullanır:
Denetleyici, kesintiye uğramadan uzun işlemler gerçekleştirmez, bu nedenle sürücünün cihaza ayrılmış bir iş parçacığı oluşturması veya sistem çalışan iş parçacıklarını kullanması gerekmez.
Denetleyiciye bağlı cihazlar benzerdir. Başka bir ifadeyle, klavyeye ve yardımcı cihaz denetleyicisine bağlanabilen klavye ve fare cihazları gibi tamamen farklı fiziksel özelliklere veya işletimsel işlevlere sahip cihazlar değildir.
Sürücü, cihaz kontrolcüsü ve bağlı fiziksel cihazlarla ilişkili olarak tek katmanlı olacak şekilde monolitik tasarlanmıştır; yani, bir bağlantı noktası sürücüsü (kontrolcü için) ve üzerinde bir veya daha fazla sınıf sürücüsü (bağlı cihazlar için) katmanlanmış bir sistem olarak tasarlanmamıştır.
G/Ç kanallarına ve bir dizi mantıksal cihaz nesnesine sahip cihazların sürücüleri, G/Ç işlemlerini bu tür bir cihazın kanalları arasında veya aralarında eşitlemek için bir denetleyici nesnesi de kullanabilir.
Denetleyici nesnesinin adı yoktur ve bu nedenle G/Ç isteklerinin hedefi değildir. Yalnızca bir cihaz nesne kümesinden G/Ç'yi seri hale getirmek için bir eşitleme mekanizmasıdır. Bir denetleyici nesnesinin adı olmadığından, kullanıcı modu korumalı alt sistemler tarafından görünmez ve hedef cihaz nesnesini temsil eden dosya nesnesi için bir tanıtıcı almadan cihaz G/Ç istekleri yapılamaz. Denetleyici nesnesi, kendi cihaz nesnelerini bir denetleyici nesnesine ekleyemeyen üst düzey sürücüler için de görünmez. Başka bir deyişle, ne G/Ç yöneticisi ne de üst düzey bir sürücü, denetleyici nesnesiyle temsil edilen bir cihazda G/Ç isteyen bir IRP ayarlayamaz. G/Ç istekleri her zaman cihaz nesnelerine verilir. Denetleyici nesnesini yalnızca sürücü kullanabilir.
Senkronizasyon ve Çakışan G/Ç
"AT" disk denetleyicisi gibi özelliklere sahip fiziksel cihazların monolitik sürücülerinin cihaz G/Ç işlemlerini eşitlemek için bir denetleyici nesnesi kullanması gerekmez. Örneğin, bir sürücü yazıcı denetleyici nesnesi kullanmak yerine aşağıdaki eşitleme tekniğine benzer bir şey deneyebilir:
G/Ç isteklerinin hedefi olan cihazları temsil etmek için adlandırılmış cihaz nesnelerini ayarlayın.
Hangi cihaz nesnesinin geçerli G/Ç işleminin hedefi olduğunu belirten durum bilgilerini (belki de her cihaz uzantısında veya tek bir cihaz uzantısında cihaz meşgul bayrakları kümesi) koruyun.
Şu anda meşgul olan cihaz nesnesi için G/Ç işlemlerini gerçekleştirin ve geçerli IRP tamamlanana kadar diğer cihaz nesneleri için gelen IRP'leri yeniden sorgulayın.
Yukarıdaki eşitleme tekniği, sürücünün tüm hedef cihaz nesneleri için IRP işlemeyi seri hale getirmektedir. Ayrıca StartIo yordamının bir sonraki IRP'yi işlemeye başlayabilmesi için sürücüyü geçerli IRP'yi tamamlamaya zorladığını ve bu da ne yazık ki sürücü performansını düşürdüğünü unutmayın.
Belirli cihaz işlemleri çakışıyorsa, denetleyici nesnesinin kullanılması sürücünün G/Ç aktarım hızını artırabilir, çünkü bu eşitleme tekniği sürücünün fiziksel cihazı ayarlamadan hemen önce işlemleri çakışıp çakışamayacağını belirlemesine olanak tanır. Örneğin, bir disk denetleyicisi sürücünün bir diskteki okuma/yazma işlemlerini başka bir diskteki arama operasyonlarıyla örtüşmesine izin verebilir.
Ayrıca, bir denetleyici nesnesi kullanmak, "AT" disk denetleyicisi gibi tek bir fiziksel cihaz aracılığıyla birden fazla hedef cihaz nesnesi için G/Ç işlemlerini eşitlemenin nispeten kolay bir yoludur. Denetleyici nesnesi kullanmak, bir veya daha fazla cihaz uzantısında her cihaz ve cihaz denetleyicisinin durumunu korumak zorunda kalmadan ve IRP'leri yeniden sorgulamak zorunda kalmadan bir dizi adlandırılmış cihaz nesnesi arasında G/Ç işlemlerini eşitlemek için monolitik bir sürücü sağlar.
Ancak, tam çift yönlü seri denetleyiciler veya ana yol bağdaştırıcıları gibi G/Ç işlemleriyle örtüşecek şekilde tasarlanmış bazı cihazlarda, genellikle IRP'ler için iç kuyruklar ayarlayan sürücüler bulunur.