A quale hardware può accedere un processo in modalità utente?

0

Quale hardware se possibile può accedere a un processo in modalità utente (diversamente dalla modalità kernel) senza utilizzare le chiamate di sistema, ad es. senza fare affidamento sul sistema operativo per fare qualcosa per questo? Questa domanda dovrebbe essere indipendente dal sistema operativo poiché sto solo chiedendo le restrizioni hardware applicabili.

    
posta John Smith 02.03.2017 - 20:52
fonte

1 risposta

1

Non ne sono completamente sicuro, quindi non esitare a correggermi.

Ho letto su come funzionano i driver di dispositivo spazio utente su linux in questo articolo: Driver di dispositivo nello spazio utente .

Per quanto posso dire, funzionano perché il kernel mappa la memoria che il dispositivo utilizza per la configurazione e i buffer nello spazio utente. Questa memoria contiene la configurazione del dispositivo e qualsiasi buffer correlato e per questo le modifiche apportate a indirettamente influiscono sul dispositivo senza passare alla modalità kernel .

Ma i processi dello spazio utente non possono direttamente comunicare con il dispositivo. Possono solo leggere e scrivere su questa memoria condivisa. Se il driver dello spazio utente vuole informare il dispositivo di un cambiamento in questa memoria, deve utilizzare una chiamata di sistema (→ interrupt, modalità kernel invocazione).

Gli interrupt dal dispositivo vengono elaborati dal driver UIO (User-IO) in modalità kernel che lo passa allo spazio utente driver.

Quindi la risposta alla mia domanda è (se non mi sbaglio completamente): i processi in modalità utente non possono accedere a qualsiasi hardware direttamente e ovviamente senza alcuna chiamata di sistema che non possono richiedere la memoria condivisa.

Modifica : questo dovrebbe essere vero su qualsiasi sistema operativo poiché i meccanismi utilizzati per implementarlo sono cablati nella CPU. A sua volta potrebbe non essere vero per alcune CPU, indipendentemente dal sistema operativo, poiché la CPU potrebbe non supportare questo tipo di protezione.

    
risposta data 02.03.2017 - 22:54
fonte

Leggi altre domande sui tag