Beruflich Dokumente
Kultur Dokumente
Nivel de usuario
Este nivel es menos permisivo, algunas de las instrucciones de
mquina se encuentran restringidas (entrada/salida, gestin de
memoria), y slo se tiene acceso a determinados registros. El nivel
de usuario slo permite modificar los bits 0 a 5 del registro de
estado, y el apuntador de la pila del usuario
Nivel de ncleo (kernel)
En este nivel no se tiene restriccin en las instrucciones, los
registros generales ni el registro de estado.
Secuencia de funcionamiento del computador
El computador funciona de manera secuencial, con los siguientes
pasos:
1. Leer de la RAM la instruccin apuntada por el Program Counter
(PC)
2. Incrementar el PC
3. Ejecutar la instruccin leda de memoria
Se debe contar con instrucciones que permitan saltar a otra
instruccin, diferente a la siguiente en secuencia. Para ellos se
puede contar con instrucciones de salto o bifurcacin e
interrupciones. Las instrucciones de bifurcacin permiten
que el programa rompa su ejecucin y salte a otro segmento del
mismo programa. Las interrupciones (internas o externas) modifican
el valor del PC y lo hacen saltar a otro programa.
Las interrupciones son uno de los mecanismos que tienen los
modelos de computacin para interrumpir el funcionamiento
secuencial de la CPU, y de esta manera permitir que se ejecute otro
programa. Las excepciones se pueden producir por
desbordamientos, errores de entrada/salida, direccionamiento
errado.
Las interrupciones de reloj se ejecutan en un intervalo de tiempo
determinado.
Las interrupciones de Entrada/Salida permiten avisar a la CPU de la
ocurrencia de un evento.
Las excepciones de hardware se producen cuando ocurre un error
de memoria, o corte de corriente
La instruccin TRAP permite que un programa lance una
interrupcin De otro lado, las interrupciones pueden manejar
prioridades, con el fin de distinguirlas en orden de relevancia.
A nivel fsico, una interrupcin es una seal que se enva a la
unidad de control.
El agente que solicita la interrupcin debe proporcionar un vector
que especifica la direccin de la rutina de tratamiento. Este proceso
se lleva a cabo cuando termina la ejecucin de la instruccin de
mquina actual, y consiste en las siguientes operaciones:
Salvar algunos registros (Estado y pc)
Pasar a modo ncleo
Cargar un nuevo valor en el PC
El nuevo valor cargado en el PC corresponde a la direccin que ha
sido proporcionada por el agente que solicit la interrupcin, con
esto se activa la rutina de tratamiento. Luego de ejecutar dicha
rutina, se recupera el estado almacenado y se pasa al modo
usuario.
El concepto de reloj se puede aplicar en tres mbitos:
Seal que gobierna el ritmo la CPU, y determina la frecuencia de
ejecucin (Velocidad)
Temporizador que enva interrupciones peridicas al procesador
Acumulador de segundos, a partir del cual se puede calcular la
fecha y la hora.
Jerarqua de memoria
La memoria se puede dividir de acuerdo a su velocidad de acceso,
en donde se tiene:
Registros del procesador: Dispositivos de almacenamiento
temporal, cuya velocidad de acceso vara entre 1 a 5 nanosegundos Su capacidad vara de 64 a 256 bytes.
puede ser definido como una interfaz para ejecutar comandos. Esta
interfaz puede ser textual, en forma de terminales (Unix), o grfica,
en la cual se utiliza el teclado y el mouse para invocar los
comandos (Windows, MAC).
En su forma ms simple, el shell es un bucle infinito que espera una
orden del usuario, la analiza y en el caso que sea correcta la
ejecuta. Una vez que se ha concluido la ejecucin de la orden, el
shell espera una nueva orden.Los archivos de comandos son una
agrupacin de los comandos que el usuario introduce en el shell,
adems de instrucciones de control de flujo para controlar
su ejecucin. Los archivos de comandos ms comunes son los .bat
(windows) y los .sh (Unix).
Primera generacin:
Aparecen los transistores, lo que cambia radicalmente la
construccin de los computadores. Los trabajos (programas) se
procesaban por lotes (uno detrs de otro), y exista un programa
que se encargaba de cargar y ejecutar los dems programas
(cargador). Algunos ejemplos de sistemas operativos son FMS
(Fortran Monitoring System) e IBYSS de IBM.
Segunda generacin:
Con la aparicin de los circuitos integrados se dio una revolucin en
los computadores y los sistemas operativos. Aparece el concepto
de multiprogramacin como una alternativa al trabajo por lotes. La
multiprogramacin permite aprovechar el tiempo muerto de las
operaciones de Entrada / Salida para ejecutar otros trabajos
(programas). Aparece el concepto de planificador, que es un
programa encargado de repartir el uso del procesador entre los
trabajos que lo requieren. Tambin aparece el concepto de tiempo
compartido, que consiste en permitir que varios usuarios trabajen
en forma simultnea, al repartir el tiempo de CPU entre ellos
.Borroughs introduce en 1962 el MCP (Master Control Program),
que adems de permitir multiprogramacin utilizaba memoria
virtual.Por su parte, en el MIT se desarrollo CTSS, el primer sistema
de tiempo compartido. Este sistema se utiliz en el IBM7090 y
permita hasta 32 usuarios interactivos que se conectaban
mediante teletipos (terminales brutas). Tambin apareci el OS/360,
que operaba sobre los computadores 360 de IBM.
El sistema operativo ms reconocido de esta generacin es
MULTICS (desarrollado por el MIT y Bell Labs), que permita el
soporte a cientos de usuarios.
Tercera generacin:
Se caracteriza por la aparicin de Sistemas Operativos de propsito
general, entre ellos UNIX.
Estos sistemas permitan multiprogramacin y tiempo compartido.
Con UNIX nace el lenguaje C, uno de los ms utilizados hasta hoy
en da.
Cuarta generacin:
Con la difusin de los computadores personales tambin
evolucionan los sistemas operativos, en aspectos como velocidad
de procesamiento, manejo de memoria, soporte para redes y
multimedia. Los primeros sistemas que dominaron en esta
generacin fueron UNIX, MS-DOS y Windows.
PROCESOS.
Gestin de procesos
La gestin de procesos es uno de los componentes principales de
un sistema operativo. Este se encarga de generar y gestionar los
procesos que se ejecutan en una CPU, y atender sus peticiones.
Un proceso se puede considerar como la abstraccin de un
programa en ejecucin. Se debe tener en cuenta que un programa
es parte de un proceso: el programa es el conjunto de instrucciones
de mquina, que generalmente se almacena en un archivo
(ejecutable), y se carga en memoria en el momento de
su ejecucin. Debido a la arquitectura de los computadores actuales
(slo existe un PC, un juego de registros, etc.) en la cual slo se
puede ejecutar un proceso al tiempo,la CPU debe saltar de
proceso en proceso, asignndole a cada uno un tiempo
de ejecucin. Cada vez que se cambia el proceso que se est
ejecutando se debe salvar su estado de ejecucin con el fin que
pueda ser reiniciado ms tarde en el punto de ejecucin en el cual
se interrumpi.
Servicios de procesos