NCQ
From Wikipedia, the free encyclopedia
From Wikipedia, the free encyclopedia
NCQ je zkratka z anglického Native Command Queuing, česky přirozené řazení příkazů.
Jedná se o technologii, která v některých případech umožňuje zvýšit výkon pevných disků s rozhraním SATA II. Při použití NCQ pevný disk sám optimalizuje pořadí, ve kterém jsou vykonány požadavky na zápis nebo čtení. Tato optimalizace může redukovat nadbytečný pohyb hlaviček disku. Tím se zvýší rychlost přenosu dat mezi řadičem a diskem a také se mírně sníží opotřebení disku.
Optimalizace se dobře uplatní, pokud se k disku snaží přistoupit současně několik procesů. Současný požadavek na přístup k disku nastává často u serverů, ale vyskytuje se i v domácím použití, například při práci se spuštěnou antivirovou kontrolou disku anebo současném kopírování více souborů.
Ke správné funkci NCQ je zapotřebí, aby ji podporoval jak disk, tak řadič. Dále musí být v operačním systému nainstalován příslušný ovladač řadiče s NCQ. Mnoho nových řadičů dokáže pracovat pod rozhraním AHCI (anglicky Advanced Host Controller Interface), které umožňuje jednotné ovládání všech SATA NCQ řadičů jedním obecným ovladačem operačního systému. Novější Linuxová jádra tento ovladač obsahují. Windows XP vyžadují instalaci speciálních ovladačů i v případě, že daný řadič rozhraní AHCI podporuje. Windows Vista už obecný ovladač pro řadiče podporující AHCI obsahují.
Starší verze rozhraní ATA (PATA nebo SATA I) mohla obsahovat určitou optimalizaci řazení požadavků. Jednalo se o ATA TCQ neboli ATA Tagged Command Queuing. Toto řešení se příliš nerozšířilo kvůli jeho technické komplikovanosti. TCQ bylo navrženo tak, aby fungovalo s libovolným ATA řadičem, a zpracování tagů řešil softwarový ovladač. Proto ke zpracování každého příkazu byly potřeba dvě přerušení, jedno na nastavení tabulky adres pro DMA přenos a druhé po dokončení přenosu. Dvě přerušení (oproti jednomu, bez TCQ) zatěžovala procesor a v důsledku to nevedlo k velkému zlepšení výkonu disku.
Technologie TCQ byla původně vytvořena pro sběrnici SCSI , kde se osvědčila. Většina SCSI řadičů používajících TCQ a připojených přes sběrnici PCI (případně její nástupce) nastavovala DMA tabulku automaticky a zatěžovala procesor pouze jedním přerušením na příkaz, proto tam nedocházelo ke zpomalování jako při ATA TCQ.
Problematiku optimálního pořadí požadavků přístupu k disku v jednom okamžiku lze částečně řešit také softwarově, zabudováním do operačního systému. Na úrovni operačního systému není k dispozici tolik informací, kolik jich má disk sám o sobě. Přesto lze provádět částečnou optimalizaci. Například použitím mezipaměti při kopírování velkých bloků lze snížit počet jednotlivých čtení a zápisů na disk a tím i snížení počtu přesunů hlaviček disku.
V tomto článku byl použit překlad textu z článku Native Command Queuing na anglické Wikipedii.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.