我一直在嘗試使用mmap在合理的時間內閱讀相對較大的文件。我知道mumap方法;但我的問題是,只要我使用我希望它映射到我的進程空間的文件;與此同時,由於從該文件加載太多頁到RAM中,每當我的進程開始用盡空間時,我希望它們與新頁面交換(或希望它們與lru頁面交換),而不會造成任何問題。 Kernel的內部內存管理模塊是否代表我交換或者我的責任將其移除(如果是這樣,怎麼辦?mumap?)?請考慮以下幾點:如何在Linux平臺上管理mmap的內存使用情況?
我的平臺是android(這也是一種linux平臺), 我只想讀頁面;但沒有寫(O_RDONLY和PROT_READ), 我使用MAP_SHARED因爲它可能會被所有其他進程共享(實際上,只有一個進程可以讀取:))。
在此先感謝。
這是很好的答案。謝謝caf! – iliTheFallen