Sistema Operativo
Sistema Operativo
Sistema Operativo
Estructura de E/S
Gran parte del código del SO se dedica a gestionar la E/S de los datos.
Después de que arranca una operación de E/S, el control vuelve al programa
de usuario solo al final de dicha operación:
La instrucción espera por la CPU hasta la siguiente interrupción.
Ciclo de espera (se está compitiendo por acceso a la RAM)
Sólo una operación de E/S puede realizarse a la vez.
GESTIÓN DE PROCESOS
Un proceso es un programa en ejecución, este a su vez puede crear
subprocesos.
Un proceso necesita recursos (tiempo de CPU, Dispositivos E/S, memoria), son
asignados cuando se crea o en el transcurso de su ejecución.
• Cuando el proceso termina el SO reclama todos los recursos
reutilizables.
• Un programa es una entidad pasiva, mientras que un proceso es una
entidad activa.
• Procesos del Sistema. Aquellos que se ejecutan en nombre del SO y
tienen código del Sistema.
• Procesos de Usuario. Aquellos que ejecutan código de usuario
• Contador de programa contiene la dirección de la siguiente instrucción
a ejecutar.
• Se puede tener varios procesos generados por un mismo programa.
El SO es responsable de las siguientes actividades en la
gestión de procesos:
• Crear y borrar los procesos de usuario y del sistema
• Suspender y reanudar procesos
• Proporcionar mecanismos para la sincronización de procesos.
• Proporcionar mecanismos para la comunicación entre procesos.
• Proporcionar mecanismos para el tratamiento de los interbloqueos.
GESTIÓN DE MEMORIA
La memoria principal es un repositorio de datos rápidamente accesible.
• La CPU lee las instrucciones de la memoria principal durante el ciclo de
extracción de instrucciones y lee y escribe datos en la MP durante el
ciclo de extracción de datos.
• La MP es el único dispositivo al que la CPU puede acceder
directamente, para que la CPU ejecute datos de un disco, estos deben
transferirse a la MP a través de llamadas de E/S generadas por la CPU.
• Para que un programa se ejecute debe estar asignado a direcciones
absolutas y cargado en memoria, mientras el programa se ejecuta se
accede a estas direcciones absolutas para sacar las instrucciones.
• Cuando el proceso termina, el espacio de memoria es declarado
disponible para que sea ocupado por otro proceso.
• El mantener varios procesos en memoria requiere de mecanismos de
gestión.
El SO es responsable de las siguientes actividades en la
gestión de memoria:
• Controlar que partes de la memoria están actualmente en uso y por
parte de quién.
• Decidir que datos y procesos añadir o extraer de la memoria.
• Asignar o liberar espacio de memoria según sea necesario.
PROTECCIÓN Y SEGURIDAD
Cuando se tiene varios usuarios utilizando un mismo sistema informático y este
a su vez ejecuta de manera concurrente procesos, es necesario asegurar que
los recursos otorgados sean empleados por aquellos procesos que están
autorizados hacerlo.
• Protección, es cualquier mecanismo que controla el acceso de
procesos y usuarios a los recursos definidos por el sistema informático;
los SO brindan mecanismos de protección ante intrusos o ante
subsistemas que funcionan bien y se ven amenazados por subsistemas
que funcionan mal (protección de la memoria). El SO no puede
defenderse del abuso o mal uso de un Usuario
• Seguridad, un Sistema informático puede brindar todas las protecciones
adecuadas pero debe poder defender al sistema de ataques internos y
externos, tales como los ocasionados por virus, gusanos, ataques de
denegación de servicios, el robo de identidad (a través del robo de
claves).
Sistemas Distribuidos
Un Sistema distribuido lo forman un conjunto de computadoras físicamente
separadas pero que se encuentran conectadas en red, para proporcionar a los
usuarios accesos a los recursos que el sistema mantiene.
• La funcionalidad de los sistemas distribuidos depende de la red, en su
rendimiento y fiabilidad.
• No se debe confundir entre un SO de red y un SO distribuido; el primero
ofrece funcionalidades como el compartir archivos a través de una red,
en cambio en el segundo, los diferentes SO se comunican de modo que
se crea la ilusión que un solo sistemas es el que está funcionando.
SISTEMAS EMBEBIDOS
• Un sistema embebido o empotrado es un sistema de computación
diseñado para realizar una o algunas pocas funciones dedicadas
frecuentemente en un sistema de computación en tiempo real. Los
sistemas embebidos se utilizan para usos muy diferentes a los usos
generales que se suelen someter a las computadoras personales. En un
sistema embebido la mayoría de los componentes se encuentran
incluidos en la placa base (la tarjeta de vídeo, audio, módem, etc.)
aunque muchas veces los dispositivos no lucen como computadoras, por
ejemplo: relojes de taxi, registradores, controles de acceso entre otras
múltiples aplicaciones.
• Por lo general se programan en lenguaje Ensamblador.
Algunas definiciones
• “Un sistema embebido es un sistema electrónico que contiene un
microprocesador o microcontrolador; sin embargo, no pensamos en ellos
como un computador”
• “Las personas usan el término sistema embebido para referirse a
cualquier sistema de cómputo escondido en algún producto o
dispositivo”
• “Un sistema embebido es un sistema cuya función principal no es
computacional, pero es controlado por un computador integrado. Este
computador puede ser un microcontrolador o un microprocesador.
Ejemplos
SISTEMAS DE MANO
Incluyen PDA’s, Palm’s, Pocket-PC, Teléfonos Móviles muchos de los cuales
utilizan sistemas embebidos.
Un dolor de cabeza para los diseñadores es el tamaño de los dispositivos y
la capacidad de cada uno de ellos.
Otro problema es la velocidad del procesador, los procesadores requieren
mayor cantidad de energía cuando más rápidos son, por lo que se tendría que
diseñar baterías que duren más tiempo.
Otro problema es la E/S, enfocada a dispositivos; la falta de espacio limita la
entrada a pequeños teclados o teclados basados en pantalla (táctiles).
ENTORNOS INFORMÁTICOS
Sistema Informático Tradicional
• Hace unos años atrás no se podía tener acceso a un computador
remoto, ni a información de una organización a no ser que le den un
tríptico o que se acerca a las instalaciones de la misma, y la definición
de portabilidad solo era posible si tenías un computador portátil.
• Ahora eso a cambiado y lo que no podíamos hacer antes en nuestros
computadores ahora es muy habitual, tener los computadores en red, a
través de un medio físico o inalámbricamente, acceder a internet,
conectarte a un servidor de manera remota desde cualquier parte del
mundo, realizar compras por internet, etc….
• Lo importante en todo lo que se puede hacer actualmente con la
tecnología, es brindar seguridad a todo nuestro sistema informático (HW
y SW).
• En los sistemas informáticos tradicionales se utiliza como medida de
seguridad el Firewall que puede ser implementado a través de HW o a
través de SW configurando con líneas de comando para hacerlo un poco
más seguro.
• La misión de un Firewall es proporcionar una barrera para impedir el
acceso a intrusos o información que se considere amenazante para
nuestra organización o sistema informático.