mmap

Używanie mmap nad plikiem

Próbuję pozwolić dwóm różnym procesom na komunikację za pomocą mapowania pamięci tego samego pliku. Jednak mam z tym pewne pr ... 5 sharedArea = (MyStruct*)mmap(NULL, fileSize, 136 PROT_READ | PROT_WRITE | PROT_EXEC, MAP_SHARED, theFile, 0);

Badanie adresów mm przy użyciu GDB

Używam sterownika, który umieściłem na Direct Memory Access w Linuksie do mmapowania fizycznej pamięci ram na adres przestrz ... /dev / mem (jak w pierwszym fragmencie), ale o mmap do pamięci nabyte przez ioremap (), virt_to_phys () i remap_pfn_range ()

Jak duży może być plik mapowany pamięcią?

Co ogranicza Rozmiar pliku mapowanego pamięcią? Wiem, że nie może być większy niż największy ciągły kawałek nieprzydzielonej przestrzeni adresowej i że powinno być wystarczająco dużo wolnego miejsca na dysku. Ale czy są inne ograniczenia?

Czy po wywołaniu mmap muszę zachować otwarty plik?

Mam program, który mapuje sporo (100) sporych plików po 10-100MB każdy. Muszę je wszystkie zmapować w tym samym czasie. W te ... ka dużych danych przetwarzam wtedy munmap kiedy skończę. Strony podręcznika mmap nie wydają mi się zbyt jasne w tej kwestii.