Casa Hardware Che cos'è una richiesta I / O? - definizione da techopedia

Che cos'è una richiesta I / O? - definizione da techopedia

Sommario:

Anonim

Definizione - Cosa significa Richiesta I / O?

I pacchetti di richieste I / O sono strutture in modalità kernel utilizzate per la comunicazione tra il modello di unità di Windows e i driver di dispositivo di Windows NT, nonché con il sistema operativo Windows. Tutti i dettagli dei dati vengono passati alla struttura dei dati tramite il singolo puntatore, invece di seguire la vecchia convenzione di trasportare molti piccoli argomenti di dati. Queste richieste I / O vengono fatte passare attraverso molte fasi di elaborazione diverse. Queste fasi sono determinate dalla natura della richiesta, indipendentemente dal fatto che sia destinata al dispositivo di destinazione per un driver a singolo strato o un'unità multistrato.

Techopedia spiega la richiesta I / O

I pacchetti di richiesta I / O sono sostanzialmente utilizzati per le comunicazioni tra i driver di dispositivo e il sistema operativo. Consente a un particolare processo di sbloccarsi e di essere eseguito completamente.

Nel primo passaggio, viene avviato un processo che genera una lettura di blocco sul descrittore di file di un file precedentemente utilizzato. Il codice del sistema operativo o del kernel ha un codice di chiamata di sistema che lavora per verificare l'accuratezza dei parametri. Se la cache del buffer contiene già i dati, i dati vengono restituiti e la richiesta è completata. Nel caso in cui i dati non vengano trovati nella cache del buffer, viene eseguito un I / O fisico. Ciò garantisce che il processo venga rimosso dalla coda di esecuzione e inserito nella coda di attesa. Successivamente, il driver del dispositivo riceve la richiesta tramite il sottosistema I / O. Spetta al driver del dispositivo quindi fare spazio per i dati in arrivo e pianificare l'I / O. Il controller del dispositivo lavora quindi sull'hardware del dispositivo per eseguire il processo di trasferimento dei dati. Il controller DMA gestisce e gestisce il trasferimento dei dati nella memoria del kernel. Al termine del trasferimento, questo crea un interrupt che viene ricevuto da un gestore di interrupt attraverso la tabella dei vettori di interrupt. Esegue la scansione dei dati alla ricerca di informazioni importanti e quindi restituisce l'interrupt. Questo segnale viene quindi ricevuto dal driver del dispositivo, che completa la richiesta e determina anche lo stato della richiesta. Infine, spetta al kernel rimuovere il processo dalla coda di attesa nella coda pronta e i dati vengono trasferiti nello spazio degli indirizzi. Questo passaggio sblocca il processo. Quindi ora, quando il processo viene assegnato alla CPU, riprende a funzionare e viene completato.

Che cos'è una richiesta I / O? - definizione da techopedia