Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
Pedro de Miguel Anasagasti
ARRANQUE DELCOMPUTADOR
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
Esta animación presenta los pasos seguidos por el computador en su arranque.
Una primera fase se corresponden con pasos ejecutados por el HW y el Programa de Arranque almacenado en la memoria ROM.
La segunda fase se corresponde con el arranque del Sistema Operativo.
1
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El procesador está apagado, está ejecutando un programa o se ha quedado bloqueado al tener un error de ejecución. El CP tendrá un determinado valor.
2
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
Se genera una señal de RESET. Bien porque aprieta el botón de RESET o porque se enciende el computador (éste tiene un circuito RC que genera esta señal durante un pequeño intervalo de tiempo).
RESET
3
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
Como efecto del RESET algunos registros toman valores predeterminados (p.e. CP = 1.073.479.676).La unidad de control queda bloqueada mientras dura el RESET.
RESET
1.073.479.676
4
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
Al eliminarse el RESET la unidad de control comienza con su ciclo de lectura de instrucción, incremento de CP y ejecución de la instrucción. Se pasa, por tanto, a ejecutar el Programa de Arranque.
1.073.479.676
5
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El Programa de Arranque hace un test del HW del sistema.No hay tablas de páginas, por lo que el computador trabaja en modo Real, estando la MMU inhibida.
6
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El Programa de Arranque lee el Programa Cargador que está en el sector de Boot, valida éste a través de una clave (palabra mágica) y lo carga en memoria RAM.
Boot
Palabra mágica
7
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El Programa de Arranque da control al Programa Cargador, es decir, pone en el CP el valor de inicio de ese programa.La ejecución sigue siendo en modo Real, la MMU sigue inhibida.
8
Boot
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El Programa Cargador es específico de cada SO y conoce la ubicación del SO en el disco.Lee el SO residente del disco y lo carga en memoria RAM.
SOresidente
9
Boot
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El Programa Cargador da control al SO residente.
10
SOresidente
Boot
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El SO residente comprueba el hardware y comprueba el sistema de ficheros.
11
SOresidente
Boot
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El SO residente genera las tablas internas del SO, como son las tablas de páginas, la tabla de procesos, etc.Y pasa a ejecutar en modo Memoria Virtual.
Tablasdel SO
12
SOresidente
Boot
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El SO crea el proceso INIT
INIT
13
Tablasdel SO
SOresidente
Boot
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El SO pone en ejecución el proceso INIT y entra en su modo normal de ejecución, es decir, cede la iniciativa a los procesos y solamente pasará a ejecutar cuando ocurra una interrupción.
14
Tablasdel SO
SOresidente
Boot
INIT
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
El proceso INIT solicita la creación de los procesos demonio ( ) y de los procesos login ( ), uno por terminal. Quedando así el sistema preparado para atender a los usuarios.
15
Tablasdel SO
SOresidente
Boot
INIT
Programa cargador(identificador) Disco
Sistema Operativo
0
268.435.452
1.073.479.676
1.073.741.820
Dirección Celdas
RAM
Programa dearranque
Vacío
CP
Unidad de ControlROM
Unidad Aritmética
Unidad de Memoria
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
Cuando un usuario teclea su cuenta y su clave en el proceso login se produce una autenticación. Si ésta es positiva, se cambia el proceso login por un Shell, para que el usuario pueda trabajar con el sistema.
16
Tablasdel SO
SOresidente
Boot
INIT
© Pedro de Miguel Anasagasti - Universidad Politécnica de Madrid
FIN