Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Na niektórych platformach pamięć podręczna instrukcji i danych w procesorze wykazuje anomalie spójności pamięci podręcznej podczas operacji odczytu PIO.
Nuta Aby zachować integralność danych podczas operacji odczytu, sterowniki korzystające z funkcji PIO muszą postępować zgodnie z następującymi wskazówkami: Wywołaj metodę KeFlushIoBuffers na końcu każdej operacji odczytu.
Na przykład sterownik, który wykonuje transfer PIO z obsługiwanego urządzenia do pamięci systemowej, powinien na końcu każdej operacji transferu urządzenia wywołać KeFlushIoBuffers. Innym przykładem jest sterownik, który odczytuje sekwencję rejestrów urządzenia do pamięci systemowej; powinien wywołać KeFlushIoBuffers na końcu sekwencji. W przeciwnym razie taki sterownik może próbować uzyskać dostęp do danych, które są nadal w pamięci podręcznej danych procesora, a nie w pamięci systemowej, na niektórych platformach.
KeFlushIoBuffers nic nie robi, jeśli procesor może polegać na utrzymaniu spójności pamięci podręcznej, więc wywołania tej procedury pomocniczej nie mają prawie żadnych obciążeń na takiej platformie.