Ho alcune domande sulle operazioni di sincronizzazione della cache.cache - flush e invalidate operation
Invalidate: Prima di cpu tenta di leggere una porzione di memoria aggiornata da un dispositivo, la memoria corrispondente deve essere invalidata.
Flush: Prima che il dispositivo legga una parte di memoria aggiornata dalla CPU, la CPU deve svuotare (anche la riscrittura è corretta?) Il contenuto dalla cache alla memoria, in modo che il dispositivo legga il contenuto dalla memoria con contenuti aggiornati.
Se a filo non viene effettuato, può leggere i dati spazzatura presenti nella memoria come la memoria non è ancora aggiornato con contenuti scritti nella cache.
Si prega di confermare se la mia comprensione di cui sopra è corretta?
Quando si desidera combinare sia flush che invalidate? Ho sentito che durante il gioco con i descrittori di controllo dei dispositivi dobbiamo sincronizzare combinando flush e invalidate. Perchè così?
abbiamo bisogno di seguire una sequenza come filo seguito da invalidate?
C'è uno scenario in cui invalidare seguita da incasso sarà utile?
Grazie per tale spiegazione, non potrebbe trovare una spiegazione migliore di quella su internet .... – fazkan