¿Cómo se puede aumentar la memoria de la pila?

        Pila       


Montón

BSS

DATOS

TEXTO

¿Cómo aumentar el tamaño de la pila? No se puede aumentar el tamaño de la pila. La razón de esto es como se menciona a continuación:

Razón:

La pila para una interacción determinada tiene un tamaño fijo y restringido. Además, la pila debe ser contigua. Si el tamaño de la pila se expande continuamente, la pila se desarrolla hacia la memoria del montón y, en cierto punto, tocará la memoria del montón. De esta forma, cuando la pila llega a la memoria del montón, no es concebible ninguna expansión.

Métodos para asignar el tamaño de la pila :

Se utilizan varios métodos diferentes. Están:

1. Dinámico :

La pila se desarrolla hacia abajo, el montón se desarrolla hacia arriba. En el caso de una falla de página bastante por debajo del extremo inferior de la pila, las páginas intermedias que faltan se asignan y mapean. Expandiendo con éxito la pila desde la parte superior hacia la base de forma natural. Normalmente existe un extremo hasta el cual se realiza dicha asignación, que puede o no ser determinado en el clima, o fuertemente modificado por el programa a través de una convocatoria marco. Esto varía mucho entre los diferentes sistemas operativos.

2. Tamaño fijo:

Las tareas de control individuales obtienen pilas fijas). Además, para esta situación, la memoria puede asignarse virtualmente, hasta que realmente se necesite.

3. Por página:

Estos asignan y expanden la pila dinámicamente según sea necesario. Pero esta asignación no se realiza como una sola porción contigua, sino como una string conectada de piezas de varias páginas. Requiere que los compiladores creen diferentes códigos de entrada/salida de función para lidiar con los límites de fragmentos. Posteriormente, tales funciones son comúnmente realizadas por un sistema de soporte de idiomas y no por el sistema operativo real.

Publicación traducida automáticamente

Artículo escrito por manjunathls4lb y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *