90 likes | 224 Views
Detalles del sistema operativo. Arranque del sistema operativo. Carga del kernel mediante un programa de arranque. El programa de arranque realiza varias tareas: Ejecutar una serie de diagnósticos para determinar el estado de la maquina. Continua la secuencia de arranque.
E N D
Arranque del sistema operativo • Carga del kernel mediante un programa de arranque. • El programa de arranque realiza varias tareas: • Ejecutar una serie de diagnósticos para determinar el estado de la maquina. • Continua la secuencia de arranque. • Inicia todos los aspectos del sistema, tales como: registros de la CPU, controladores de dispositivos, y los contenidos de la memoria principal. • Iniciar el sistema operativo.
Algunos sistemas como celulares, PDA, consolas de juego, almacenan el sistema operativo en ROM. • En los sistemas operativos de gran envergadura, el cargador de arranque se almacena en firmware y el sistema operativo en disco.
Los procesos • Se pueden asociar a programas en ejecución. • Un proceso incluye: • Contador de programa. • Pila. • Sección de datos. • ¿Cómo se ve un proceso en memoria?
¿Qué es un programa? • Un programa esta formado por: • Código: instrucciones de máquina. • Datos: variables almacenadas y manipuladas en la memoria. • Variables inicializadas (globales). • Variables asignadas dinámicamente (malloc, new). • Variables de la pila (variables automáticas del lenguaje de programción, argumentos de funciones). • .DLLs, .SO: bibliotecas que no fueron compiladas o enlazadas con el programa. • Contienen código y datos, posiblemente compartido con otros programas. • Archivos mapeados: segmentos de memoria que contienen variables. • mmap() • Usado frecuentemente en programas de bases de datos.
CREACION DE PROCESOS • Los cuatro principales sucesos que provocan la creación de nuevos procesos son: • La inicialización del sistema. • La ejecución por parte de un proceso (en ejecución) de una llamada al sistema de creación de un nuevo proceso. • La petición por parte del usuario de la creación de un nuevo proceso. • El inicio de un trabajo en batch.
Un proceso en ejecución puede cambiar de estado: • Nuevo/New: El proceso ha sido creado. • En ejecución/running: Instrucciones están siendo ejecutadas. • En espera/waiting: El proceso se encuentra esperando a que ocurra algún evento. • Preparado/ready: El proceso se encuentra esperando a que se le asigne el procesador. • terminado/Terminated: El proceso ha concluido su ejecución.
Terminación de los Procesos • Tras la creación de un proceso comienza su ejecución realizando el trabajo que se le ha encomendado. Sin embargo nada dura para siempre, ni siquiera los procesos. Pronto o tarde el nuevo proceso debe terminar, usualmente debido a una de las siguientes causas: • El proceso completa su trabajo y termina (voluntariamente). • El proceso detecta un error y termina (voluntariamente). • El sistema detecta un error fatal del proceso y fuerza su terminación. • Otro proceso fuerza la terminación del proceso (por ejemplo en UNIX mediante la llamada al sistema kill).