首页 > 试题广场 >

操作系统里的内存碎片你怎么理解,有什么解决办法?

[问答题]
你怎么理解操作系统里的内存碎片,有什么解决办法?
内存碎片通常分为内部碎片和外部碎片:
    1. 内部碎片是由于采用固定大小的内存分区,当一个进程不能完全使用分给它的固定内存区域时就会产生内部碎片,通常内部碎片难以完全避免;
    2.外部碎片是由于某些未分配的连续内存区域太小,以至于不能满足任意进程的内存分配请求,从而不能被进程利用的内存区域。
    现在普遍采取的内存分配方式是段页式内存分配。将内存分为不同的段,再将每一段分成固定大小的页。通过页表机制,使段内的页可以不必连续处于同一内存区域。
发表于 2019-02-28 18:13:52 回复(0)
内存碎片分为内部碎片和外部碎片。

一:内存中划分为若干个固定的块(这些块大小可能相等也可能不相等),当一个程序或一个程序分解后的部分程序装进这些块后,在块里面不能完全占用的内存空间成为内部碎片。
解决方法:①采用可变分区分配②采用分段存储管理方式(一般采用这种方式)

二:采用可变分区分配或分段存储管理方式后,虽然分配的每一个块的大小和程序实际需要的空间一样大,但划分以后,内存中仍然有部分空间是剩余的,这些剩余的空间成为外部碎片。
解决方法:①采用单一连续分配②采用固定分区分配③采用分页存储管理方式④采用段页式存储管理方式(第③和第④是常用方法)
编辑于 2020-04-30 09:51:09 回复(0)