1. El núcleo del sistema operativo
El núcleo del sistema operativo, también llamado kernel (núcleo en alemán) es aquella
parte de un sistema operativo que interactúa de forma directa con el hardware de una
máquina. Entre las funciones principales del kernel se encuentran:
La gestión de memoria.
La administración del sistema de archivos.
La administración de servicios de entrada/salida.
La asignación de recursos entre los usuarios.
La manipulación del hardware se realiza por medio de controladores de dispositivo,
que conocen la forma de comunicarse directamente con el hardware de la máquina.
El software por su parte puede comunicarse con el kernel por medio de llamadas al
sistema, las cuales le indican al kernel que realice tareas como abrir y escribir un
archivo, ejecutar un programa, finalizar un proceso u obtener la fecha y hora del
sistema.
Procesos del sistema operativo
Un sistema operativo es un software de sistema, es decir, un conjunto de programas
de computadora destinado a permitir una administración eficaz de sus recursos.
Comienza a trabajar cuando se enciende el computador, y gestiona el hardware de la
máquina desde los niveles más básicos, permitiendo también la interacción con el
usuario.
Un sistema operativo se puede encontrar normalmente en la mayoría de los aparatos
electrónicos que utilicen microprocesadores para funcionar, ya que gracias a éstos
podemos entender la máquina y que ésta cumpla con sus funciones (teléfonos móviles,
reproductores de DVD, autorradios, computadoras, etc.).
Introducción a los procesos.-
Todas las computadoras modernas pueden realizar varias tareas al mismo tiempo. En
estos sistemas de multiprogramación la CPU debe cambiar de un programa a otro,
ejecutando cada uno en decenas o cientos de milisegundos. Pero en cualquier instante
2. de tiempo la CPU puede estar ejecutando solo un programa.
Todo el software ejecutable en la computadora, que con frecuencia incluye al sistema
operativo, se organiza en varios procesos secuenciales. Un proceso es básicamente un
programa ejecutante donde intervienen los valores corrientes del contador de
programa, registros y variables.
Proceso.
Un proceso es un concepto manejado por el sistema operativo que consiste en el
conjunto formado por:
Las instrucciones de un programa destinadas a ser ejecutadas por el
microprocesador.
Su estado de ejecución en un momento dado, esto es, los valores de
los registros de la CPU para dicho programa.
Su memoria de trabajo, es decir, la memoria que ha reservado y sus contenidos.
Otra información que permite al sistema operativo su planificación.
Esta definición varía ligeramente en el caso de sistemas operativos multihilo, donde un
proceso consta de uno o más hilos, la memoria de trabajo (compartida por todos los
hilos) y la información de planificación. Cada hilo consta de instrucciones y estado de
ejecución.
Los procesos son creados y destruidos por el sistema operativo, así como también
este se debe hacer cargo de la comunicación entre procesos, pero lo hace a petición
de otros procesos. El mecanismo por el cual un proceso crea otro proceso se denomina
bifurcación (fork). Los nuevos procesos son independientes y no comparten memoria
(es decir, información) con el proceso que los ha creado.
En los sistemas operativos multihilo es posible crear tanto hilos como procesos. La
diferencia estriba en que un proceso solamente puede crear hilos para sí mismo y en
que dichos hilos comparten toda la memoria reservada para el proceso.