Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

176
Vistas
Falta de referencia de puntero nulo en el espacio del usuario y el espacio del kernel

¿Qué sucederá si eliminamos la referencia del puntero nulo en el espacio del usuario y el espacio del kernel?

Según tengo entendido, el comportamiento se basa en el compilador, la arquitectura, etc.

pero en general para cada programa de espacio de usuario asignado con memoria virtual y la paginación se usa para traducir la dirección virtual a la dirección física usando tablas de página.

por lo tanto, si estamos eliminando la referencia de un puntero nulo en el espacio del usuario, esa dirección no es válida, por lo que el cambio de contexto ocurrirá y en el núcleo se basará en la interrupción para esta falta de referencia de puntero nulo 'Ocurrirá un error de segmentación o un error de página'.

En el espacio del núcleo:

Si eliminamos la referencia al puntero NULL, existe la posibilidad de bloquear el sistema o que el kernel no pueda regresar de esa llamada.

¿Es correcto mi entendimiento? O cualquier otra información faltante, por favor explique.

Ref: he entendido de esto " ¿Qué sucede en el sistema operativo cuando eliminamos la referencia a un puntero NULL en C? "

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

El núcleo asigna la página en la dirección virtual 0 a todos los procesos sin bits de permiso establecidos. Cuando intentas acceder a esa página, obtienes un error de página . La rutina del kernel que lo maneja emite una señal SIGSEGV a su proceso. Si no tiene un controlador para SIGSEGV registrado, el núcleo se volcará y verá el mensaje "Error de segmentación".

Del lado del kernel, las cosas son un poco diferentes. Después de todo, se supone que el kernel es robusto:

  • Si ocurre la anulación de la referencia y es posible la recuperación (por ejemplo, el controlador del trackpad cometió el delito), se genera un kernel ups . El núcleo continúa ejecutándose (por ahora).
  • Si se produce la anulación de la referencia y no es posible la recuperación, Oops conduce a un kernel panic . Reiniciar necesario.
  • Si por alguna razón hay datos asignados en la página cero, dañará la memoria. Lo que podría generar pánico en el camino, pasar desapercibido o incluso ser objeto de abuso para un ataque de escalada de privilegios .
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda