【问题标题】:Internal fragmentation basic concept内部碎片化基本概念
【发布时间】:2018-01-08 12:42:29
【问题描述】:

假设我有两个 50 字节的进程并且只有一个 100 字节的分区。 假设第一个进程占用了分区,还剩下 50 个字节。 即使有可用空间,第二个进程是否可以驻留在同一个分区中,还是会发生内部碎片?

如果存在内部碎片,那么是否也存在外部碎片?

【问题讨论】:

    标签: memory-management operating-system fragmentation memory-fragmentation


    【解决方案1】:

    由于只有一个分区,因此会发生内部碎片,因为内部碎片是分区内的剩余空间,在此示例中,分区内将有 50 个字节空闲。

    如果存在内部碎片,那也是真的 外部碎片是否也存在?

    不,这不是真的。外部碎片是当您没有更大的块并且您有可用的空闲块(或分区)但没有一个单独可以满足要求时留下的空闲空间。

    因此,基本上可用空间的总量将大于或等于所需空间,但它不会是连续的,这称为外部碎片。

    【讨论】:

    • 那么第二个进程不能占用那50个字节吗?
    • @Zephyr 如果它的固定分区方案那么它可以。否则不能。
    • 我认为即使在固定分区中我们也不能有 2 个进程。我在某处读到,在第一次拟合算法的情况下,即使有可用空间,两个进程也不能占用同一个孔。是真的吗?
    • @Zephyr 在固定分区方案中,如果一个 100 字节的孔被 50 字节的进程占用,那么剩下的 50 字节将成为另一个孔。
    猜你喜欢
    • 1970-01-01
    • 2010-11-19
    • 2012-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-08
    • 2016-07-06
    • 1970-01-01
    相关资源
    最近更新 更多