Documente Academic
Documente Profesional
Documente Cultură
hltorres@unl.edu.ec
¿Qué expectativas tienen en relación a la asignatura de
Sistemas Operativos?
¿Cuáles son sus Temores en relación a la asignatura de
Sistemas Operativos?
¿Cuáles serán sus compromisos para con la asignatura
de Sistemas Operativos?
QUÉ ES UN SISTEMA OPERATIVO
Es un programa que administra el HW de una
computadora y actúa como intermediario entre el usuario
y el hardware del computador.
Además proporciona la plataforma para los programas
de aplicación.
Desde otro punto de vista lo podemos definir a un
Sistema Operativo como un asignador de recursos.
Es un programa que se ejecuta continuamente en la
computadora.
Es un programa de control.
OBJETIVOS DEL SISTEMA OPERATIVO
Ejecutar programas del usuario y resolver los problemas del
usuario de manera fácil y sencilla.
Hace que la computadora sea fácil y conveniente de usar.
Utiliza el hardware de la computadora de forma eficiente.
Permite un uso eficiente de los recursos del sistema.
SLS Debian
Slackware Corel Linux
Lindows
KNNOPIX
MEPIS
Linspire
Ubuntu
HISTORIA DE LOS SO de Linux
RedHat Crux
Conectiva ArhcLinux
Mandrake
RedFlag Linux
Fedora Core
CentOS
rPath
WhiteBox
HISTORIA DE LOS SO DE Apple
El Sistema Operativo Mac OS no fue la primer interfaz
gráfica, pero fue la primera con gran éxito por su
accesibilidad de precio. Para aquellos años en el mercado
lo que existía era La Xerox Alto con un costo de 32,000
dólares, la Xerox Star costó 16,600 dólares y la Apple Lisa
con un precio de 10,000 dólares. El nombre de esta Apple
fue un capricho de Steve Jobs por su hija. Este Sistema 1
venía incluido en el primer Macintosh, que tenía un
precio de 2,500 dólares.
http://es.slideshare.net/KarenDiaz14/historia-y-evolucin-del-
sistema-operativo-mac-os
HISTORIA DE LOS SO DE Apple
1984 Sistema 1 1985 Sistema 2
1986 Sistema 3 1987 Sistema 4
1988 Sistema 6 1090 Sistema 7
En el Sistema 7 hubieron algunas versiones hasta sacar la
versión MAC OS 7.6
1997 MAC OS 8 1999 MAC OS 9
2000 MAC OS X 2001 MAC OS 10.0 (Cheetah)
2001 MAC OS X 10.1 (Puma)
2002 MAC OS X 10.2 (Jaguar)
2003 MAC OS X 10.3 (Panther)
2005 MAC OS X 10.4 (Tiger)
2006 MAC OS X 10.5 (Leopard)
2009 MAC OS X 10.6 (Snow Leopard)
HISTORIA DE LOS SISTAMAS OPERATIVOS
Específico:
Los microprocesadores de cada dispositivo
Mayor Fiabilidad
Modo de espera en
caliente
Estructura de un Sistema
Operativo
Los Sistemas operativos tienen la capacidad para
Multiprogramar.
La Multiprogramación, incrementa el uso de la CPU
organizando los procesos de modo que la CPU siempre
tenga uno por ejecutar.
Normalmente en la ejecución de los procesos se producen
interrupciones estas pueden ser por operaciones de E/S,
cuando ocurre esto, en un sistema sin multiprogramación
la CPU quedaría inactiva; sin embargo la mayoría de
Sistemas actualmente son multiprogramados, si ocurriera
lo anterior el SO cambia el proceso para que se ejecute otro,
este cambio se denomina conmutación de proceso.
Estructura de un Sistema
Operativo
El Tiempo compartido, es una extensión lógica de la
Multiprogramación, en estos sistemas la CPU ejecuta
múltiples procesos conmutando entre ellos.
Permite que muchos usuarios compartan simultáneamente
la computadora, para el usuario es trasparente, es como
asignarle una pequeña parte de un computador a cada
usuario.
A la falta de espacio de memoria se utiliza espacio en disco
(memoria virtual) en donde se encuentran los
denominados trabajos, con esto el SO debe seleccionar de
la cola de trabajos uno de estos para pasar a la memoria
para poderse ejecutar
Estructura de un Sistema
Operativo
Disco CPU 1 CPU 2
P4 P5
P1
Intercambio P2
P3
P4
P5
Planificación de P6 Planificación de la
trabajos CPU
SO
Extensión Lógica
Multiprogramación Tiempo Compartido
Operaciones del Sistema
Operativo
Las interrupciones o excepciones son normales
dentro de la ejecución de los procesos.
Una excepción es una interrupción generada por SW
(una división por cero o un acceso indebido a
memoria)
El SO debe garantizar que podrá seguir funcionando si
existe un problema en uno de los programas de usuario
que se ejecute y estos no debieran afectar a otros
procesos tanto de usuario como del sistemas.
El SO debe identificar el código que se está ejecutando
sea este del sistemas o definido por el usuario.
Operación en Modo Dual
El funcionamiento en modo dual, le permite al SO protegerse así
mismo y a otros procesos de usuario, consiste en proporcionar
soporte HW que permita diferenciar los modos de ejecución.
Modo Usuario.- en este modo se ejecutan las instrucciones de los
procesos de usuario.
Modo Kernel.- en este modo se ejecuta las instrucciones del SO
Cuando se enciende el computador el HW se inicia en modo kernel
y luego cuando se carga el SO y se inicia los programas de aplicación
se cambia a modo de usuario.
Se implementa en la
CPU un bit (bit de
modo) que indica el
modo de ejecución:
Kernel (0) Usuario (1)
Operación en Modo Dual
Este modo proporciona protección al SO de procesos de usuario que
pueden causar errores y también para proteger a los procesos de
usuario de errores de otros procesos de usuario.
La falta de un modo dual puede ocasionar defectos en un SO, sobre
escribiendo sus archivos
Temporizador
Se debe asegurar que el SO mantenga el control de la CPU, se debe
impedir que un programa de usuario entre en un bucle infinito y de
esta manera no devuelva el control al SO.
El Temporizador, es asignarle un tiempo de ejecución a un proceso
para controlar que los procesos no se queden con la CPU por ciclos
infinitos.
Se puede implementar un Temporizador Fijo o uno Variable; este
último es el más utilizado.
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 se
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.
GESTIÓN DE PROCESOS
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.
GESTIÓN DE MEMORIA
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.
GESTIÓN DEL ALMACENAMIENTO
Por comodidad del usuario, el SO crea un unidad
lógica de almacenamiento denominada archivo.
Gestión del Sistema de Archivos: los SO tienen
diferentes sistemas de archivos así como varios
gestores de archivos
https://prezi.com/2yhpyk6dlr_v/sistema-de-
archivos-en-windows-linux-y-mac/
https://es.wikipedia.org/wiki/Administrador_de_a
rchivos
Los archivos se organizan en directorios y es necesario
gestionarlos mas aún cuando varios usuarios acceden a
ellos.
GESTIÓN DEL ALMACENAMIENTO
El SO es responsable de las siguientes actividades en lo
que respecta a la gestión de archivos:
Creación y Borrado de archivos.
Creación y borrado de directorios para organizar los
archivos.
Soporte de llamadas al sistema para manipular archivos
y directorios.
Asignación de archivos a los dispositivos de
almacenamiento secundario.
Copia de seguridad de los archivos en medios de
almacenamiento estables.
GESTIÓN DEL ALMACENAMIENTO
Gestión del almacenamiento masivo: la mayor
parte de los programas se almacenan en disco hasta
que se cargan en memoria para su ejecución, luego se
usa el disco como origen y destino de los datos. El SO
es responsable de las siguientes actividades:
Gestión del espacio libre.
Asignación del espacio de almacenamiento
Planificación del disco
GESTIÓN DEL ALMACENAMIENTO
Almacenamiento en Caché: es una memoria de acceso más
rápida, cuando se ejecuta las instrucciones pasan de la memoria
a la caché, de esta manera cuando se necesita acceder a las
instrucciones de manera rápida primero se busca si está en la
caché.
Caché L1: está integrada en el núcleo de la CPU, trabaja a la misma
velocidad que esta, la capacidad está entre 64 KB – 256 KB,
encaminada a procesos del sistema.
Caché L2: también está integrada en el procesador, es mas lenta
que la L1, en capacidad puede llegar a superar los 2 MB, su uso está
mas encaminada a programas que al sistema.
GESTIÓN DEL ALMACENAMIENTO
Sistemas de E/S: las operaciones de E/S es un tema
importante en el computador, el SO por lo general
trata de ocultar al usuario los inconvenientes de los
dispositivos HW específicos.
En el diseño de los SO, el control de los dispositivos de
E/S es de interés, debido que cada dispositivo cambia sus
funciones y velocidad; es decir, tiene su particularidad
por lo cual se requiere variedad de métodos para
controlarlos.
Estos métodos forman el Subsistema de E/S, el cuál
separa al kernel, de la complejidad de administración de
los dispositivos de E/S
GESTIÓN DEL ALMACENAMIENTO
Objetivos del Sistema de E/S:
Proporcionar una interfaz uniforme para el acceso a los
dispositivos.
Proporcionar manejadores (drivers) para los dispositivos
concretos.
Brindar transparencia al usuario ante los errores típicos.
Utilizar cachés para los dispositivos de almacenamiento.
Para los discos, planificar de forma óptima las peticiones.
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
PROTECCIÓN Y SEGURIDAD
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 Distribuidos
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.
SISTEMAS EMBEBIDOS
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.
SISTEMAS EMBEBIDOS
SISTEMAS EMBEBIDOS
Sistemas de telefonía fija o móvil, por ejemplo un terminal
telefónico móvil.
Elementos para la automatización de procesos de producción
Equipos e instrumentación industrial
Electrodomésticos de todo tipo, como microondas, lavadoras,
frigoríficos, lavavajillas, etc.
Tiene una gran aplicación en la industria juguetera y de ocio
Sistemas periféricos de PCs.
SISTEMAS EMBEBIDOS
SISTEMAS OPERATIVOS EMBEBIDOS
Trabajo en clase:
Agruparnos entre 2 compañeros para analizar los Sistemas
Operativos en Tiempo Real y los Multimedia
Qué son?
Características que los distinguen
Nombres de SO
El trabajo será subido a la carpeta compartida hasta finalizar la
clase.
SISTEMAS OPERATIVOS EMBEBIDOS
Un uso muy común de los sistemas embebidos es en los
sistemas de tiempo real ,entendiéndose por sistemas en
tiempo real a aquellos sistemas en los que el control del
tiempo es vital para el correcto funcionamiento. Los
sistemas en tiempo real necesitan realizar ciertas
operaciones o cálculos en un limite de tiempo. Donde ese
limite de tiempo resulta crucial. Un ejemplo claro de un
sistema de tiempo real es el control de trafico aéreo.
Existen plataformas para sistemas embebidos basadas en
Linux, Windows y Sun, algunos ejemplos de S.O
embebidos.
SISTEMAS OPERATIVOS EMBEBIDOS
Windows CE (Pockets, PDA’s)
Cisco IOS (Router)
Palm OS (Palms)
Symbian S.O (Teléfonos móviles) Android S.O
RTOS (Fabricación de chips)
Windows XP Embedded (para dispositivos móviles)
RTLinux (S.O en tiempo real)
ChorusOS (utilizado en HW de comunicaciones, desde
móviles hasta switches)
VxWorks (vasado en UNIX)
SISTEMAS OPERATIVOS MULTIMEDIA
Son sistemas que soportan el manejo de audio, video y
gráficos, actualmente todas las computadoras y
dispositivos móviles soportan esto, lo que hace que cada
uno de estos dispositivos tengan software para el manejo
y la manipulación de archivos multimedia (música,
películas, videoconferencias, etc).
SISTEMAS OPERATIVOS MULTIMEDIA
Con el avance de las multimedias ha habido la necesidad de
la creación de sistemas operativos con mayores facilidades
para las tecnologias multimedias, ejemplo:
MUSIX, ARANDAS y eAR OS.
Musix es el resultado del trabajo colaborativo de toda una
comunidad de usuarios y programadores.
Es un Sistema Operativo Multimedia 100% Libre destinado
a músicos, técnicos sonidistas, DJs, cineastas, diseñadores
gráficos, y usuarios en general: una enorme colección de
programas libres que pueden reemplazar Windows.
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).
SISTEMAS DE MANO
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….
ENTORNOS INFORMÁTICOS
Sistema Informático Tradicional
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.
ENTORNOS INFORMÁTICOS
Sistema Informático Tradicional
ENTORNOS INFORMÁTICOS
Sistema Cliente – Servidor
Es una forma de sistema distribuido
La idea de un sistema Cliente – Servidor, es un
Computador Central (Servidor) que satisface las solicitudes
de muchos clientes que se conectan a él.
Se puede crear muchos tipos de Servidores (DHCP, DNS, Proxy,
LDAP, de Archivos, de Impresión, Wireless, etc…..)
ENTORNOS INFORMÁTICOS
Sistema entre iguales (P2P)
Los clientes y los servidores no se diferencian entre si,
todos los nodos del sistema se consideran iguales y cada
uno puede actuar como cliente o como servidor.
En el Sistema cliente – servidor, el Servidor es un cuello de
botella, pero en un sistema entre iguales varios nodos
distribuidos a través de la red pueden proporcionar los
servicios.
Servidor Servidor
Cliente
Servidor
GRACIAS
M.Sc. Ing. Hernán Leonardo Torres Carrión
hltorres@unl.edu.ec
Docente CIS-UNL