硬件 什么是连续内存分配? -技术百科的定义

什么是连续内存分配? -技术百科的定义

目录:

Anonim

定义-连续内存分配是什么意思?

连续内存分配是一种经典的内存分配模型,它为进程分配连续的内存块(即具有连续地址的内存块)。

连续内存分配是最古老的内存分配方案之一。 当需要执行某个进程时,该进程会请求内存。 将进程的大小与可用于执行该进程的连续主内存的数量进行比较。 如果找到足够的连续内存,则会为该进程分配内存以开始执行。 否则,它将被添加到等待进程的队列中,直到有足够的可用连续内存可用为止。

Techopedia解释了连续内存分配

可以在操作系统中借助两个寄存器(称为基址和限制寄存器)来实现连续内存分配方案。 当进程在主存储器中执行时,其基址寄存器包含进程正在执行的存储位置的起始地址,而进程所消耗的字节数则存储在限制寄存器中。 进程不会直接引用对应存储位置的实际地址。 相反,它使用相对于其基址寄存器的相对地址。 程序引用的所有地址均视为虚拟地址。 CPU生成逻辑或虚拟地址,借助存储器管理单元(MMU)将其转换为实际地址。 基址寄存器由MMU用于地址转换。 因此,物理地址的计算如下:

    物理地址=基址寄存器地址+逻辑地址/虚拟地址

检查进程引用的任何内存位置的地址,以确保其不引用相邻进程的地址。 此处理安全性由底层操作系统处理。

连续内存分配的一个缺点是,由于等待空闲内存的进程,降低了多编程的程度。

什么是连续内存分配? -技术百科的定义