Posiadam Windows XP SP2, program DMDE i WinHex.
Zjawisko, o którym piszę odkryłem przez przypadek.
Jest sobie dysk sformatowany. Na ten dysk kopiuję plik o wielkości kilkaset MB. Otwieram go między innymi w podglądzie zawartości pliku w Total Commander.
Potem, za pomocą WinHex lub DMDE, otwieram dysk do edycji, odnajduję sektor, w ktorym rozpoczyna się wcześniej przygotowany plik. Zmieniam zawartość kilku przypadkowych bajtów tego sektora, zatwierdzam i zamykam DMDE. Potem w Total Commander chcę obejrzeć zawartość pliku, który jest na tych sektorach, stwierdzam, że ta zawartość nie zmieniła się. Potem ponownie otwieram DMDE i widzę, że sektory, które edytowałem, są zmienione tak, jak ja zmieniłem. Na koniec ponownie w Total Commander otwieram plik i widzę, że nie ma w nim zmian.
Dopiero, jak zrestartuję system Windows, to wtedy, jak otwieram plik w Total Commander, to widze w nim oczekiwaną zmianę.
Z tego prostego eksperymentu wyciągnąłem wniosek, że po pierwszym otwarciu tego pliku, zawartość pliku jest przechowywana poza dyskiem do momentu restartu systemu, i jak otwieram podgląd pliku w Total Commanderze, to program odczytuje właśnie to miejsce poza dyskiem, a nie sam dysk. To jest przyczyna, z której plik nie aktualizował się od razu.
Wydaje mi się, że bufor dyskowy odpada, bo ten bufor ma najwyżej kilkanaście-kilkadziesiąt megabajtów.
Gdzie jest przechowywana zawartość otwieranych plików?
Jak ustawić system Windows, żeby nie tworzył tego dodatkowego obszaru i za każdym razem odczytywał plik z dysku, na którym jest on zapisany? Chodzi o to, żeby edycja sektorów, w których jest położony ten plik, skutkowała natychmiastową aktualizacją.