Sistemas operativos en tiempo real

Anuncio
ÍNDICE
SISTEMA OPERATIVO EN TIEMPO REAL:
Para este tipo de Sistema Operativo hemos elegido los semáforos, ya que necesitan un Sistema Operativo
capaz de coordinarlos y de estimar las prioridades entre procesos para evitar cualquier tipo de contratiempo.
En el caso que planteamos, hemos pensado que, un claro ejemplo de utilización de este tipo de sistema sería el
pulsador que se encuentra en algunos semáforos y que sirve para intentar permitir el paso a los peatones en el
mínimo tiempo posible.
En el momento en que es pulsado el botón, se deben realizar una serie de operaciones y es donde podemos ver
que el Sistema Operativo en tiempo real es el mas adecuado gracias a algunas de sus principales
características:
• Gestión de entradas y salidas: en el momento en que se pulsa el botón deberá activarse un
subprograma que paralice la circulación y permita el paso a los peatones y en el cual ya esté
predeterminado un tiempo de espera para volver a reanudar la circulación.
• La capacidad de comunicación entre el Sistema Operativo y el exterior se intenta utilizar al máximo
poniendo los pulsadores.
Por tanto, la sincronización entre procesos es necesaria para evitar errores de temporización debido al acceso a
recursos compartidos. La sincronización entre procesos también permite el intercambio de señales de
temporización (Parar/Seguir) entre procesos cooperativos con el fin de preservar las relaciones especificadas.
Los semáforos son un mecanismo de sincronización entre procesos simples y satisfacen la mayoría de los
requisitos de concurrencia excepto procesos competidores como es el caso del pulsador que al activarlo hará
una reestructuración de los procesos para dar prioridad a este, que será dar paso a los peatones.
Gráficamente:
1
Aquí podemos observar el gráfico y la distribución de los pulsadores.
La calla Grande, es la calle con mayor prioridad, ya que es la que tiene mayor afluencia de tráfico, y por tanto,
el espacio de tiempo de paso de los vehículos será mayor que la otra calle ya que tiene menos circulación.
Se ha realizado un programa que ya tiene predeterminado el tiempo que debe permitir la circulación por las
distintas calles. En el momento en que alguien activa el pulsador, se ejecuta el programa alternativo y se
bloquea el paso de coches a la calle que se pretende cruzar.
Tenemos un semáforo a cada lado de la calle juntamente con un pulsador, para facilitar el acceso.
Procesos:
• Acceso por la Calle Grande (Porción de tiempo mayoritaria)
• Paso de la calle minoritaria
• Paso a los peatones (en el caso de pulsar el botón)*
• Como ya hemos mencionado anteriormente, este proceso, en el momento en que alguien ejecuta la
pulsación del botón., se vuelve completamente prioritario
SISTEMA OPERATIVO MULTIPROCESADOR
En el caso de esta modalidad de Sistema Operativo, hemos estado pensando en que situación
podríamos necesitarlo. Después de analizar los apuntes, hemos decidido que una clara situación donde
podemos necesitar gran potencia de cálculo (principal ventaja de este sistema) es el caso de los
Fórmula 1.
En el ejemplo que nosotros utilizamos, tenemos un coche lleno de sensores (se describirá de forma
mas concreta posteriormente)que tomarán una série de lecturas, y que deberán ser analizadas los mas
rápido posible, para conseguir poner a punto la máquina.
Primeramente, utilizaremos un Sistema Operativo Multiprocesador con memoria compartida, ya que
2
el volumen de información puede ser en determinados casos muy elevado, de tal manera debemos
poder aprovechar al máximo las posibilidades de la máquina, lo que sin duda, con el sistema
multiprocesador conseguiremos, ya que un mismo proceso se parte en trozos (tantos como CPU's) y
conseguimos rendibilizar al máximo la velocidad de lectura.
Otro punto muy importante ( y con el que no se acostumbra a pensar demasiado) es el riesgo de fallo
del sistema; en nuestro caso, al ser multiprocesador tenemos mayor tolerancia a los fallos, ya que si
algún componente de una CPU falla el sistema sigue funcionando pero sin ese componente, y además,
tenemos la posibilidad de hacer el llamado cambio en caliente, que se caracteriza en que podemos
cambiar dicho componente sin necesidad de tener que apagar la máquina.
Será un sistema diferido, es decir, la información es enviada a una capa intermedia que se encarga de
partir el proceso en subprocesos y enviarlo a la CPU que sea más conveniente, de esta manera,
ganamos velocidad. También será un Sistema Operativo con supervisores separados, es decir, cada
máquina tiene su Sistema Operativo.
Todo este sistema, se utilizará en el análisis posterior, es decir, en las horas que el equipo de Formula
1 tiene entreno, el piloto dará una serie de vueltas y, posteriormente, se analizará el contenido de las
lecturas, vamos a ver el gráfico del vehículo, así como la posición de los sensores, y la función que
realiza cada uno.
El programa, también tendrá unos sistemas de ponderación de las lecturas, y en caso que superen los
resultados prefijados, debe dar la alarma, en el punto donde se encuentre el error o el posible fallo.
Gráficamente:
Sensores del vehículo:
• Presión neumáticos: Durante el tiempo de circulación, se toman lecturas sobre la pérdida de presión o
ganancia, y se estima en que factores puede influir.
• Presión de los amortiguadores: Se utilizará para controlar la presión dentro del amortiguador y así,
conseguir los reglajes mas adecuados para ganar la máxima estabilidad.
• Recorrido del muelle: En situaciones extremas, y en relación con el amortiguador, daremos mas o
menos recorrido así como presión en el amortiguador.
3
• Inyección: Este sensor, tomará lecturas del flujo de aire y combustible; gracias a eso, llegaremos a
saber si la combustión se realiza correctamente o bien debemos enriquecerla con algún aditivo así
como aumentar el flujo de aire o de combustible.
• Temperatura motor: Según el régimen de revoluciones a que trabaje el motor, tendrá una temperatura
determinada, que puede aumentar o disminuir.
• Presión y temperatura del aceite: Se controla la presión del aceite, de esta manera sabremos el
desgaste de los lubricantes, y podremos hacer la comprobación de su resistencia a altas temperaturas.
• Desgaste pastillas de freno: Este no es un punto vital, ya que podríamos poner una pastilla con un
volumen predeterminado, pero de esta manera, conseguimos que la duración de las pastillas sea el
justo, y de esta manera eliminamos algo de peso.
• Temperatura discos: Sabremos a que temperatura llegan los discos y de esta manera decidiremos
cuales son los compuestos mas adecuados a utilizar como pastillas.
• Temperatura del habitáculo: El habitáculo siempre debe estar aislado y su temperatura controlada, si
no fuera así, el piloto no rendirá suficiente, al cambiar la meteorología, siempre debemos estar
preparados, ya que una deshidratación del piloto podría tener consecuencias fatales.
SISTEMA DISTRIBUIDO:
Son sistemas operativos utilizados en redes de computadoras, donde las tarifas
de distribución y de gestión de recursos son repartidas por diversas maquinas de
la red.
Los sistemas distribuidos están basados en las ideas de trasparencia,
eficiencia, flexibilidad, escalabilidad y fiabilidad.
Por eso hemos cogido como ejemplo de este sistema una gran empresa la cual hay
varios grupos de trabajo, coda uno necesita almacenar grandes cantidades de
información en el disco duro con una alta fiabilidad y disponibilidad.
La solución puede ser un sistema operativo distribuido:
Transparencia: El que el sistema disponga de varios procesadores lograría un
mayor rendimiento del sistema, de tal manera que todos los ordenadores puedan
acceder a todos los archivos del sistema, todos los ordenadores tendrían que
llevar siempre una copia actualizada de la estructura de archivos y directorios.
Eficiencia: o principal en conseguir con un sistema operativo distribuido es
la velocidad ,al igual, que las demás características.Por ello contra mas
velocidad tenga un ordenador más eficiente será y eso lo podemos conseguir con
4
un sistema operativo distribuido, siempre que, por ejemplo, evitemos
situaciones como enviar un trabajo de impresión a un ordenador que no tenga
conectada una impresora de forma local, porque la velocidad también depende de
aspectos como la localización del procesador, los datos, los dispositivos,
etc....
Flexibilidad :Un sistema operativo distribuido en una empresa como el ejemplo
que hemos escogido debe estar abierto a cambios y actualizaciones que mejoren
el funcionamiento del sistema y que en cualquier momento podamos cambiar
cualquier cosa en nuestro sistema debido a que al ser una gran empresa podrá
tener muchos cambios a lo largo de su historia, por ejemplo el ponerle mas
memoria......
Escalabilidad: En una empresa como la que hemos escogido de gran volumen, es
lógico que tenga muchos ordenadores y que no tenga limitado el numero de
ordenadores que pueda tener distribuidos , POreso, un sistema distribuido en
este caso es una buena elección, debido a la escabilidad, que debería funcionar
tanto para una docena de ordenadores como para varios millares. Con la
escabilidad lo que conseguimos es que cualquier ordenador sea capaz de trabajar
independientemente como un sistema distribuido, pero también hacerlo conectado a
muchas otras maquinas.
Fiabilidad: n una empresa como la nuestra la información no debe estar
guardada solo en un servidor de archivos sino en por lo menos dos maquinas, y
gracias a la redundancia de los principales archivos o de todos, vitamos el caso
de que el fallo de un servidor bloquee todo el sistema, al tener una copia
idéntica de los archivos en otro equipo.
ALGUNAS VENTAJAS PARA NUESTRA EMPRESA:
Economía: l cociente precio/ desempeño de la suma del poder de los
5
procesadores separados contra el poder de uno solo centralizado es mejor
cuando están distribuidos.
Velocidad: Relacionado con el punto anterior, la velocidad sumada es muy
superior.
Fiabilidad. Si una maquina falla, el sistema total sigue funcionando.
Crecimiento: El poder total del sistema puede irse incrementando al añadir
pequeños sistemas.
Compartir datos: Un sistema distribuido permite compartir datos mas fácilmente
que los sistemas aislados, que tendrían que duplicarlos en cada nodo para
lograrlo.
Compartir dispositivos: Permite acceder a los dispositivos desde cualquier nodo.
Comunicaciones: a comunicación persona a persona es factible en los sistema
distribuidos.
1
6
Descargar