Native Command Queuing (NCQ) - технология, предназначенная для повышения производительности жестких дисков SATA на компьютерах. Она может сделать это в определенных ситуациях, позволяя отдельному жесткому диску внутренне оптимизировать порядок выполнения полученных запросов на чтение и запись. Это может уменьшить количество ненужных движений головки диска и в результате повышения производительности (и немного уменьшить износ диска) для рабочих нагрузок, где несколько запросов на чтение/запись являются выдающимися в то же время. Такая ситуация чаще всего возникает в серверных приложениях. Однако текущая (по состоянию на 2004 год) технология фактически замедляет доступ к HD в некоторых приложениях, например, в играх и последовательных чтениях и записях, из-за добавленной задержки, вызванной логикой NCQ. [устаревший факт]

Очереди Native Command Queuing предшествовала версия Parallel ATA Tagged Command Queuing (TCQ). Попытка ATA интегрировать TCQ была ограничена требованием, чтобы адаптеры главной шины ATA использовали протоколы устройств шины ISA для взаимодействия с операционной системой. Возникшие в результате высокие накладные расходы на центральный процессор и незначительный прирост производительности привели к отсутствию рыночного признания TCQ.

NCQ отличается от PATA TCQ тем, что переупорядочивание команд выполняется диском, а не операционной системой, и каждая команда имеет одинаковое значение. Это предпочтительнее, так как диск обладает наибольшими знаниями о своих рабочих характеристиках и способен учитывать положение вращения. Максимальная длина очереди NCQ и PATA TCQ составляет 32 команды в полете (на практике - 31), в то время как SCSI TCQ имеет максимальную длину очереди 264 команды в полете.

Для того чтобы NCQ был включен, он должен поддерживаться и включаться в адаптере хост-шины SATA и в самом жестком диске. Для включения NCQ в адаптере хост-шины в операционную систему должен быть загружен соответствующий драйвер устройства. Многие новые микросхемы поддерживают расширенный интерфейс контроллера хоста (Advanced Host Controller Interface, AHCI), который должен позволять общий драйвер, поставляемый операционной системой, управлять ими и включать NCQ. Фактически, более новые мейнстримовые ядра Linux поддерживают AHCI нативно. К сожалению, Windows XP требует установки драйвера, специфичного для производителя, даже если AHCI присутствует в адаптере хост-шины. Windows Vista исправляет эту ситуацию включением общего AHCI драйвера.