Diferencia entre revisiones de «Modos de operación de la CPU»

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(Privilegiado: Añado enlace al siguiente documento)
(2.3. Modos de operación de la CPU)
Línea 1: Línea 1:
 
= 2.3. Modos de operación de la CPU =
 
= 2.3. Modos de operación de la CPU =
  
Los fabricantes de procesadores actuales ofrecen procesadores que generalmente disponen de, al menos, dos modos de funcionamiento:
+
Los fabricantes de procesadores actuales ofrecen procesadores que generalmente disponen de, al menos, dos modos de funcionamiento. El estado del procesador se guarda en conjunto de registros de 8, 16, 32 o 64 bits. Además de ellos, el procesador posee dos registros especiales, el de siguiente instrucción (IP, PC,…) y el de estado (CCR):
  
 
== No privilegiado ==
 
== No privilegiado ==
Línea 8: Línea 8:
  
 
* Ofrece únicamente un subconjunto de las instrucciones disponibles.
 
* Ofrece únicamente un subconjunto de las instrucciones disponibles.
 +
 +
* Si en éste modo se intenta ejecutar una instrucción privilegiada, el sistema operativo o bien la ignora, o bien lanza una excepción.
  
 
== Privilegiado ==
 
== Privilegiado ==
Línea 14: Línea 16:
 
* Ofrece acceso total a las instrucciones de la CPU.
 
* Ofrece acceso total a las instrucciones de la CPU.
 
Un fallo de programación en modo privilegiado puede plantar el SO, en modo no privilegiado nunca pasaría eso.
 
Un fallo de programación en modo privilegiado puede plantar el SO, en modo no privilegiado nunca pasaría eso.
 +
Precisamente esa es la utilidad de tener varios modos de ejecución, la construcción de un sistema robusto.
 +
En la práctica, lo usual es que los procesadores tengan modos intermedios entre usuario y supervisor.
 +
La transición de modo supervisor a usuario es arbitraria, mientras que de usuario a supervisor se realiza mediante una interrupción.
 +
La CPU siempre arranca en modo supervisor, lo cual se intuye, pues en el inicio del dispositivo, se tendrá que ejecutar código del sistema operativo.
  
 
2.3. [[Componentes básicos de un sistema operativo|Componentes básicos de un sistema operativo]]
 
2.3. [[Componentes básicos de un sistema operativo|Componentes básicos de un sistema operativo]]

Revisión del 12:10 19 ene 2013

2.3. Modos de operación de la CPU

Los fabricantes de procesadores actuales ofrecen procesadores que generalmente disponen de, al menos, dos modos de funcionamiento. El estado del procesador se guarda en conjunto de registros de 8, 16, 32 o 64 bits. Además de ellos, el procesador posee dos registros especiales, el de siguiente instrucción (IP, PC,…) y el de estado (CCR):

No privilegiado

También llamado modo usuario (es preferible no usar este término para no llegar a confusión).

  • Modo en el que se ejecutan los procesos y bibliotecas del sistema operativo. En el caso concreto de los sistemas operativos micronúcleos, los servidores también se ejecutan en modo no privilegiado, tales como el servidor de ficheros, el administrador de memoria y los gestores de dispositivo.
  • Ofrece únicamente un subconjunto de las instrucciones disponibles.
  • Si en éste modo se intenta ejecutar una instrucción privilegiada, el sistema operativo o bien la ignora, o bien lanza una excepción.

Privilegiado

También llamado modo supervisor (no confundir con usuario root).

  • Modo en el que se ejecuta el núcleo del sistema operativo.
  • Ofrece acceso total a las instrucciones de la CPU.

Un fallo de programación en modo privilegiado puede plantar el SO, en modo no privilegiado nunca pasaría eso. Precisamente esa es la utilidad de tener varios modos de ejecución, la construcción de un sistema robusto. En la práctica, lo usual es que los procesadores tengan modos intermedios entre usuario y supervisor. La transición de modo supervisor a usuario es arbitraria, mientras que de usuario a supervisor se realiza mediante una interrupción. La CPU siempre arranca en modo supervisor, lo cual se intuye, pues en el inicio del dispositivo, se tendrá que ejecutar código del sistema operativo.

2.3. Componentes básicos de un sistema operativo