kernel o núcleo
Post on 19-Jan-2017
186 Views
Preview:
TRANSCRIPT
Universidad Peruana de Ciencias e Informatica
By Chamo
Kernel o núcleo
En informática, 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, y se define como
la parte que se ejecuta en modo privilegiado (conocido también como modo núcleo).
Es el principal responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora o en forma básica, es el encargado de gestionar recursos, a través de
servicios de llamada al sistema. Como hay muchos programas y el acceso al hardware es
limitado, también se encarga de decidir qué programa podrá hacer uso de un dispositivo de
hardware y durante cuánto tiempo, lo que se conoce como multiplexado. Acceder al
hardware directamente puede ser realmente complejo, por lo que los núcleos suelen
implementar una serie de abstracciones del hardware. Esto permite esconder la
complejidad, y proporciona una interfaz limpia y uniforme al hardware subyacente, lo que
facilita su uso al programador.
El kernel forma parte del sistema operativo, para ser más claros es el núcleo, la parte
más importante.
Cuando arrancas un ordenador con cualquier sistema operativo, el Kernel se carga en
memoria y permanece allí hasta que apagas el equipo, realizando funciones básicas
como pueden ser:
- Comunicación entre procesos
- Control de periféricos
- Manejo de memoria
- Control de interrupciones
Generalidades
En informática, los ordenadores son el núcleo del programa informático que se asegura de:
La comunicación entre los programas que solicitan recursos y el hardware.
Gestión de los distintos programas informáticos (tareas) de una máquina.
Gestión del hardware (memoria, procesador, periférico, forma de almacenamiento,
etc.)
La mayoría de las interfaces de usuario se construyen en torno al concepto de núcleo. La
existencia de un núcleo, es decir, de un único programa responsable de la comunicación
entre el hardware y el programa informático, resulta de compromisos complejos referentes
a cuestiones de resultados, seguridad y arquitectura de los procesadores. El núcleo tiene
grandes poderes sobre la utilización de los recursos materiales (hardware), en particular, de
la memoria.
Universidad Peruana de Ciencias e Informatica
By Chamo
Funciones generalmente ejercidas por un núcleo
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.
Aparte de las funcionalidades básicas, el conjunto de las funciones de los puntos siguientes
(incluidos los pilotos materiales, las funciones de redes y sistemas de ficheros o los servicios)
necesariamente no son proporcionados por un núcleo de sistema de explotación. Pueden
establecerse estas funciones del sistema de explotación tanto en el espacio usuario como
en el propio núcleo. Su implantación en el núcleo se hace con el único objetivo de mejorar
los resultados. En efecto, según la concepción del núcleo, la misma función llamada desde
el espacio usuario o el espacio núcleo tiene un coste temporal obviamente diferente. Si esta
llamada de funciónes es frecuente, puede resultar útil integrar estas funciones al núcleo para
mejorar los resultados.
Recompilando el Kernel de Kali Linux En ocasiones, es posible que desee agregar algunos controladores, parches, o
características del núcleo que no están incluidas en el stock de Kali Linux Kernel. La
siguiente guía describirá como el kernel de Kali Linux puede ser rápidamente
modificado y recompilado para sus necesidades. Tenga en cuenta que los parches
de inyección inalámbricos globales ya están presentes por defecto en el kernel de
Kali.
Instalando las dependencias de la estructura
Comience instalando todas las dependencias de la estructura para recompilar su
kernel.
apt-get install kernel-package ncurses-dev fakeroot bzip2
Bajando el código fuente del Kernel de Kali Linux
Baje y extraiga el fuente del kernel de Kali Linux .
apt-get install linux-source
cd /usr/src/
tar jxpf linux-source-3.7.tar.bz2
cd linux-source-3.7/
Universidad Peruana de Ciencias e Informatica
By Chamo
Configure su kernel
Sobreescriba el archivo predeterminado de configuración .config del kernel de kali,
y modifique este de acuerdo a sus necesidades. Esta es la etapa donde usted
debería aplicar varios parches, etc. En este ejemplo, nosotros re-compilamos un
kernel de 64 bit.
cp /boot/config-3.7-trunk-amd64 .config
make menuconfig
Construyendo el kernel
Compile su imagen modificada del kernel. Dependiendo de su hardware, esto podría
llevarle un tiempo.
CONCURRENCY_LEVEL=$(cat /proc/cpuinfo|grep processor|wc -l)
make-kpkg clean
fakeroot make-kpkg kernel_image
Instalando el kernel
Una vez compilado exitosamente el kernel, continúe instalando el nuevo y reinicie.
Por favor, note que el número de la versión del kernel podría cambiar – en nuestro
ejemplo, este era 3.7.2. Dependiendo de la versión del actual kernel, podrías
necesitar ajustarlo acordemente.
dpkg -i ../linux-image-3.7.2_3.7.2-10.00.Custom_amd64.deb
update-initramfs -c -k 3.7.2
update-grub2
reboot
Una vez reiniciado, tu nuevo kernel debería estar corriendo. Si las cosas van mal, y
tu kernel no reinicia, aún puedes iniciar del original stock del kernel de Kali, y arreglar
tus problemas.
top related