最近做题时忘了怎么区分内部外部碎片了,今天又想起来了于是记录一下。
把内存空间比作停车位,假如有专门给运货车提供的车位,即每辆大车可以占用连续个车位,每一个空间有4个车位,某一天擎天柱来了,直接把前面的3个车位占了,过一会铁皮也来了,铁皮需要2个车位,但最后一个车位也装不下铁皮,因为内存是连续的,不允许铁皮车头在第一个车位,车尾在另一个车位,除非铁皮也被威震天手撕了,所以无法在这个空间继续停车,只能使用下一个空间的两个车位,这一个车位就置空了,这就是外部碎片,虽然完整,但是由于无法连续给下一个进来的“车”提供完整的空间,导致这个“车”只能放弃这个车位使用下一个4车位的空间。
如果还有被撕成两半的爵士占用了0.5个车位,就会有剩下的0.5个车位是不能被使用的,这个不完整的车位虽然有空闲的部分但也不能使用,这就是内部碎片。
就算再来一半飞过山也只能重新使用一个新的停车位。