jueves, 10 de octubre de 2013

Kernel

KERNEL

Un núcleo o kernel (de la raíz germánica Kern, núcleo, hueso) es un software que constituye una parte fundamental del sistema operativo. Antiguamente había dos tipos de versiones del núcleo. Teníamos:

  • Versión de produccion: Era la versión estable del momento y la que se debía de utilizar, ya que, esta versión era el resultado final de las versiones que estaban en desarrollo. 
  • Versión de desarrollo:Era la versión que estaba en desarrollo y la que los programadores utilizaban para corregir bugs. Esta versión era muy inestable. 
Los núcleos tienen como funciones básicas garantizar la carga y la ejecución de los procesos, las entradas/salidas y proponer una interfaz entre el espacio núcleo y los programas del espacio del usuario.

FALLOS DEL KERNEL

  1. Make clean: Si su nuevo núcleo hace cosas raras, puede ser que se le olvidara hacer `make clean' antes de compilar. Los síntomas suelen ser extraños cuelgues, problemas de E/S... asegúrese también de hacer `make dep'.
  2. Núcleos muy lentos o grandesSi su núcleo consume mucha memoria, o la compilación se hace eterna incluso con su nuevo 786DX6/440, probablemente se deberá a haber elegido demasiados manejadores, sistemas de ficheros, etc. a soportar en el sistema. Si no los va a usar, no los incluya, puesto que consumen memoria. Lo típico en estos casos es que se recurre demasiado al intercambio con el disco, lo que se aprecia en un ruido `excesivo' del disco duro.
  3. El núcleo no compila Si no compila, puede ser por un fallo de parcheo, u otro tipo de corrupción en los ficheros fuente. Además, la versión de gcc puede no ser correcta o los propios ficheros de #include. Asegúrese que los enlaces simbólicos necesarios (descritos en el fichero README de Linus) existen. En general, cuando un núcleo estándar no se puede compilar, es porque hay algún problema serio en el sistema, y será necesario reinstalar algunos programas.
    También puede suceder que le den errores compilando el núcleo 1.2.x con un gcc ELF (2.6.3 o superior). Se puede intentan arreglar añadiendo las siguientes líneas al fichero arch/i386/Makefile:

    AS=/usr/i486-linuxaout/bin/as LD=/usr/i486-linuxaout/bin/ld -m i386linux CC=gcc -b i486-linuxaout -D__KERNEL__ -I$(TOPDIR)/include

    Ahora, haga `make dep' y `make zimage' de nuevo.

    En algunos casos muy raros el gcc romperá con un mensaje similar a ``xxx exited with signal 15''. En este caso la solución puede estar en desactivar la caché de segundo nivel, pensar en un fallo hardware de la memoria... o reinstalar de nuevo el gcc.
  4.  El nuevo núcleo no parece arrancar 
    No se ejecutó LILO, o no está bien configurado. A veces, se ponen errores como `boot = /dev/hda1' en lugar de `boot = /dev/hda'.
  5.  Se olvidó ejecutar LILO, y el sistema ya no arranca¡Vaya problema! Lo mejor que puede hacerse ahora es arrancar con un disquete y preparar otro disquete para arrancar Linux (con `make zdisk' se hizo uno). Necesita saber qué sistema de ficheros raíz (/) tiene, dónde está y su tipo (por ejemplo, ext2 o minix). En este ejemplo, también hay que saber dónde están los ficheros de /usr, en otra partición.
  6. No consigo que me detecte mi CD-ROM IDE/ATAPIMucha gente tiene este problema, siendo las causas muy diversas.
    El error más común es tener el dispositivo en una interfaz IDE sin compañía de otro disco, para lo que debe ser configurado como ``maestro'' (master) o ``único'' (single), nunca como ``esclavo'' (slave).


KERNEL PANIC( pánico en el núcleo)


Es un mensaje mostrado por un sistema operativo una vez detectado un error interno de sistema del cual no se puede recuperar. Los kernel panic usualmente proveen información de depuración que es útil sólo para los desarrolladores del sistema operativo.

Fallos más habituales:

  • Intentos del sistema operativo para leer una dirección de memoria inválida o no permitida son una fuente común de kernel panics. El error también puede ocurrir como resultado de un fallo de hardware.

  • Es probable también que se presente si falta algún módulo que deba ir pegado al kernel dependiendo del hardware con el que se cuente.
  • Un kernel panic puede ser producto de una explotación de una vulnerabilidad en algún módulo del núcleo de forma malintencionada, logrando corromper la integridad del sistema.

No hay comentarios:

Publicar un comentario