linux 内存整理
时间: 2023-10-12 09:04:16 浏览: 62
Linux内存整理是指通过对内存中的碎片进行整理,以提高内存的利用率和性能。内存整理的实现可以分为以下几个步骤:
1. 判断内存是否存在碎片:在内存申请时,先检查申请的内存块是否只包含一个内存页,如果是,则说明不是由于碎片导致的内存不足。如果需要进行内存整理,则继续下一步。
2. 内存碎片整理:调用__alloc_pages_direct_compact()函数作为内存碎片整理的入口。在这一步中,会调用try_to_compact_pages()函数来进行内存碎片整理。整理过程中,会对内存页面按照可移动性进行分组,并进行页面迁移,以减少碎片的产生。
3. 继续申请内存块:在完成内存碎片整理后,继续调用get_page_from_freelist()函数来尝试申请内存块。这一步是为了确保内存整理后,可以继续满足进程对内存的需求。
总结起来,Linux内存整理包括判断内存是否存在碎片、进行内存碎片整理和继续申请内存块三个步骤,以提高内存的利用率和性能。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [一篇图解Linux内存碎片整理](https://blog.csdn.net/youzhangjing_/article/details/128114719)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *3* [Linux内存管理-内存规整](https://blog.csdn.net/m0_74282605/article/details/128921169)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
相关推荐
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)