Kernel heap

Descripción

Mapa Mental sobre Kernel heap, creado por fernando diaz el 18/12/2019.
fernando diaz
Mapa Mental por fernando diaz, actualizado hace más de 1 año
fernando diaz
Creado por fernando diaz hace alrededor de 6 años
11
0

Resumen del Recurso

Kernel heap
  1. ¿Qué es el heap?
    1. El "heap" es el área de memoria para asignaciones de larga duración. El programador puede acceder a él utilizando tipos como Box o Vec . Detrás de escena, el compilador maneja esa memoria insertando llamadas a algún asignador de memoria.
    2. La interfaz
      1. La interfaz del asignador en Rust se define a través del Allocrasgo , que se ve así:
          1. El allocmétodo debe asignar un bloque de memoria con el tamaño y la alineación dados a través del Layoutparámetro. El deallocatemétodo debería liberar dichos bloques de memoria nuevamente. Ambos métodos son unsafe, como es el rasgo en sí.
        1. Alloc
          1. El Allocrasgo es parte de la alloccaja, que corees un subconjunto de la biblioteca estándar de Rust. Además del rasgo, la caja también contiene los tipos estándar que requieren asignaciones como Box, Vecy Arc. Podemos incluirlo a través de un simple extern crate:
            1. A Bump Allocator
              1. Para nuestro primer asignador, comenzamos simple. Creamos un memory::heap_allocatormódulo que contiene un llamado asignador de protuberancias :
            2. Alineamiento
              1. Para simplificar la alineación, agregamos align_downy align_upfunciones:
              Mostrar resumen completo Ocultar resumen completo