Í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