miércoles, 25 de marzo de 2015

Control de Tareas y Procesos

Todos los SO de multi-programación están construido entorno al concepto de proceso

Los requerimientos principales que debe cumplir  un SO para con los procesos  son los siguientes:
1._ El SO debe intercalar la ejecución de procesos para optimizar la  utilización de el procesador ofreciendo alavés un tiempo de respuesta razonable
2._ El SO debe asignar los  recursos del sistema a los procesos en conformidad con una política específica que evite situaciones de ínter bloqueo
3._ El SO podría tener que dar soporte a la comunicación entre procesos y ofrecer mecanismos para su creación
Creación y terminación de procesos
El sistema de operación debe crear un mecanismo para la creación y terminación de procesos.
 1._  Creación de procesos
   Cuando un nuevo proceso se agrega el sistema de operación construye las estructuras de datos que son usadas para administrar los procesos y le asigna espacio de direcciones. Estas acciones constituyen la creación de un nuevo proceso.
Los eventos comunes para la creación de procesos

- En un ambiente batch, un proceso es creado en   respuesta al sometimiento a ejecución de un trabajo.
- En un ambiente interactivo, un proceso es creado cuando un nuevo usuario entra al sistema.
- El sistema de operación puede crear un proceso para que realice una función en respuesta a una petición de un programa usuario, sin que el usuario tenga que esperar.
- Creación de procesos hijos por parte de procesos usuarios ya existentes el proceso que crea se llama proceso padre.

2._  Terminación de procesos

      Un proceso termina cuando ejecuta su última instrucción y pide al sistema operativo que lo elimine.
 En este momento, el proceso puede devolver un valor de estado a su proceso padre.
      El sistema operativo libera la asignación de todos los recursos del proceso, incluyendo las memorias física y virtual, los archivos abiertos y los búferes de
E\S.
La terminación puede producirse también en otras circunstancias.
Un proceso puede causar la terminación de otro proceso a través de la adecuada llamada al sistema.
Dicha llamada al sistema al sistema sólo puede ser invocada por el padre del proceso que va am terminar.
En caso contrario, los usuarios podrían terminar arbitrariamente los trabajos de otros usuarios.
Adicionalmente, un número de error  o una condición de fallo puede llevar a la finalización de un proceso. Las condiciones mas habituales son las siguientes:
Finalización normal .
Limite de tiempo excedido.
Memoria no disponible.
Violaciones de frontera .
Error de protección .
Limite de tiempo.
Fallo de E/S.
Instrucción no válida.
Instrucción privilegiada.
Uso inapropiado de datos.
Intervención del operador por el sistema operativo.
Terminación del proceso padre.
Solicitud del proceso padre.

ESTADOS DE UN PROSESO DE SISTEMAS

Preparado (R).- Proceso que está listo para ejecutarse
Ejecutando (O).- Sólo uno de los procesos preparados se está ejecutando en cada momento
Suspendido (S).- Se esta suspendido si no entra en el reparto de CPU, el proceso pasa a formar parte del conjunto de procesos preparados.
 PARADO (T).- Será cuando pasarán a estar preparados cuando reciban una señal determinada que les permita continuar.
Zombie (Z).- Todo proceso al finalizar avisa a su proceso padre . En vaso de que el padre no lo reciba, el proceso hijo queda en estado zombie, no está consumiendo CPU, pero sí continua consumiendo recursos del sistema .

Transiciones de estado de los procesos

De ejecución á Bloqueado: Se realiza esta transición cuando cuando queda en espera cuando por la concesión de sus recursos o por la determinación de un suceso.
De ejecución á Listo: Cuando el proceso que ocupa la CPU lleva demasiado tiempo ejecutándose ,el sistema operativo decide que otro proceso ocupe la CPU, pasando el proceso que ocupaba la CPU a estado listo.
De Listo á en ejecución: Cuando lo requiere el planificador de la CPU.
De Bloqueado á Listo: Se dispone del recurso por el que se había bloqueado el proceso.
De Nuevo a Preparado: Es cuando el SO acepta o admite un proceso mas.
De Preparado a Terminado: Ocurre cuando cuando el proceso padre decide finalizar la ejecución del hijo.

De Bloqueado a Terminado: Ocurre cuándo el proceso supere el tiempo máximo de espera de un recurso y el SO decida terminarlo.

martes, 17 de marzo de 2015

Software Propietario

El Software propietario, es cualquier programa que no cumple los criterios para el software libre. Propietario significa que algún individuo o compañía retiene el derecho de autor exclusivo sobre una pieza de programación, al mismo tiempo que niega a otras personas el acceso al código fuente del programa y el derecho a copiarlo, modificarlo o estudiarlo.
El término “propietario” alude a que está "poseído y controlado privadamente". No obstante, el programa puede seguir siendo propietario aunque su código fuente se haya hecho público, si es que se mantienen restricciones sobre su uso, distribución o modificación.

Estos software poseen ventaja sobre otro tipo de software.


VENTAJAS DEL SOFTWARE PROPIETARIO


1. Propiedad y decisión de uso del software por parte de la empresa
El desarrollo de la mayoría de software requiere importantes inversiones para su estudio y desarrollo. Este esfuerzo, de no ser protegido se haría en balde, puesto que la competencia se podría apropiar inmediatamente del producto una vez finalizado, para sus propios fines. Esto garantiza al productor ser compensado por la inversión, fomentando así el continuo desarrollo.


2. Soporte para todo tipo de hardware
Refiriéndonos por supuesto solo al mercado del sistema operativo mayoritario, que es Microsoft Windows, y no al resto de sistemas operativos de tipo Unix, que es minoritario. Se da, que el actual dominio de mercado invita a los fabricantes de dispositivos para ordenadores personales a producir drivers o hardware solo compatible con Windows. Por lo que la elección del sistema operativo de Microsoft tiene garantizado un soporte de hardware seguro.


3. Mejor acabado de la mayoría de aplicaciones
El desarrollador de software propietario, generalmente, da un mejor acabado a las aplicaciones en cuestiones, tanto de estética, como de usabilidad de la aplicación. Aunque muchas aplicaciones de software libre tienen un excelente acabado, aquí se nota de forma especial el cuidado y el esfuerzo del desarrollador de software propietario. Al fin y al cabo gana dinero directamente con su producto y debe demostrar porqué su producto es una mejor opción.


4. Las aplicaciones número uno son propietarias
Obviamente, el actual dominio de mercado no sólo interesa a los fabricantes de hardware, sino que también a los de software. Algunas de las aplicaciones más demandadas son, según ámbitos: Microsoft Office, Nero Burning Rom, 3DStudio, etc...

5. El ocio para ordenadores personales está destinado al mercado propietario
Los desarrolladores de juegos tienen sus miras en el mercado más lucrativo, que es el de las consolas y en última instancia el de los ordenadores personales. Además, en estos últimos la practica totalidad de títulos benefician a Microsoft Windows.

6. Menor necesidad de técnicos especializados
El mejor acabado de la mayoría de sistemas de software propietario y los estándares de facto actuales permiten una simplificación del tratamiento de dichos sistemas, dando acceso a su uso y administración, a técnicos que requieren una menor formación, reduciendo costes de mantenimiento.

7. Mayor mercado laboral actual
Como muchas de las ventajas restantes se deben al dominio del mercado, no hay que ignorar que cualquier trabajo relacionado con la informática pasará, en casi todos los casos, por conocer herramientas de software propietario.

8. Mejor protección de las obras con copyright
Las obras protegidas por copyright se ven beneficiadas por mecanismos anticopia, como el DRM y otras medidas, que palían o dificultan en cierto grado la piratería. El fenómeno de la piratería, está en constante debate sobre a quien perjudica y quien beneficia realmente (veanse cuáles son las empresas que mayores beneficios han obtenido, a pesar de ser las más pirateadas y ofreciendo la competencia en ocasiones mejores productos), aunque eso, por supuesto, es otra discusión que merece ser tratada a parte.

9. Unificación de productos
Una de las ventajas más destacables del software propietario es la toma de decisiones centralizada que se hace en torno a una línea de productos, haciendo que no se desvíe de la idea principal y generando productos funcionales y altamente compatibles. Aquí, el software libre tiene una clara desventaja, al ser producido y tomadas las decisiones por un exceso de grupos y organismos descentralizados que trabajan en líneas paralelas y no llegan muchas veces a acuerdos entre ellos. Esto ocasiona que en algunas ocasiones haya un gran caos a programadores y usuarios finales que no saben que vías tomar. Además genera productos cuya compatibilidad deja bastante que desear.


Caracteristicas

El software propietario posee notables caracteristicas pero con esta posee ventajas y desventajas

Caracteristicas:

Este software no te pertenece no puedes hacerle ningún tipo de modificación al código fuente.

No puedes distribuirlo sin el permiso del propietario.

El usuario debe realizar cursos para el manejo del sistema como tal debido a su alta capacidad de uso.

Este posee accesos para que el usuario implemente otro tipo de sistema en el.

Cualquier ayuda en cuanto a los antivirus.

- VENTAJAS DEL SOFTWARE PROPIETARIO:

Propiedad y decisión de uso del software por parte de la empresa.

Soporte para todo tipo de hardware.

Mejor acabado de la mayoría de aplicaciones.

Las aplicaciones número uno son propietarias.

Menor necesidad de técnicos especializados.

El ocio para ordenadores personales está destinado al mercado propietario.

Mayor mercado laboral actual.

Mejor protección de las obras con copyright.

Unificación de productos.

Facilidad de adquisición (puede venir pre-instalado con la compra del PC, o encontrarlo fácilmente en las tiendas).

Existencia de programas diseñados específicamente para desarrollar una tarea.

Las empresas que desarrollan este tipo de software son por lo general grandes y pueden dedicar muchos recursos, sobretodo económicos, en el desarrollo e investigación.

Interfaces gráficas mejor diseñadas.

Más compatibilidad en el terreno de multimedia y juegos.

Mayor compatibilidad con el hardware.

-DESVENTAJAS DEL SOFTWARE PROPIETARIO:

No existen aplicaciones para todas las plataformas (Windows y Mac OS).

Imposibilidad de copia.

Imposibilidad de modifación.

Restricciones en el uso (marcadas por la licencia).

Imposibilidad de redistribución.

Por lo general suelen ser menos seguras.

El coste de las aplicaciones es mayor.

El soporte de la aplicación es exclusivo del propietario.

El usuario que adquiere software propietario depende al 100% de la empresa propietaria.



Algunos software propietarios tienen un requerimiento minimo del hardware para ser instalados:

MSN Messenger

Windows

- Sistema operativo: Windows XP.

- Procesador: 233 MHz.

- Memoria RAM: 64 MB.

- Internet Explorer 6 SP1.

- Hasta 50 MB de espacio disponible en el disco duro para la instalación y 15 MB para ejecutar el programa.


MAC

- Sistema operativo: Mac OS 9.2.2

- Procesador: Macintosh Power PC

- Memoria: 24 MB de RAM

- Disco duro: 3 MB de espacio disponible en el disco duro

- Internet Explorer 5.1.7 o posterior, o Netscape Navigator 4.0 o posterior

PGP (Pretty Good Privacy)

- S.O.: Win98/NT/ME/2000/XP

Lotus Notes

Microsoft® Windows® 2000, Microsoft Windows 2003

Plataformas soportadas

- Microsoft Windows 2000 Server

- Microsoft Windows 2000 Advanced Server

- Microsoft Windows 2003 Server Standard Edition

- Microsoft Windows 2003 Server Enterprise Edition

- Microsoft Windows 2003 Server x64 Edition

Requisitos hardware

- Intel Pentium or higher and compatibles

- 256 MB RAM minimum; 512 MB or more recommended per CPU (Windows 2000)

- 512 MB RAM minimum; 512 MB or more recommended per CPU (Windows 2003)

- 1.5 GB minimum disk space (per partition)

- Disk swap space: 2 times the physical RAM installed

- Color monitor required


Protocolos soportados

- NetBIOS over NetBEUI(1) (Note: Windows 2003 is not supported)

- NetBIOS over IP(2) (Note: Windows 2003 64-bit is not supported)

- NetBIOS over IPX (Note: Windows 2003 64-bit is not supported)

- TCP/IP

- TCP/IP IPV6 (Note: TCP/IP IPV6 is not supported on Windows 2000)

- X.PC


IBM® AIX®, Linux®, Sun Solaris

Plataformas soportadas

- IBM AIX 5.2 (64-bit kernel)

- IBM AIX 5.3 (64-bit kernel)

- Novell SuSE Linux Enterprise Server (SLES) 8

- Novell SuSE Linux Enterprise Server (SLES) 9

- Novell SuSE Linux Enterprise Server (SLES) 10 (32- and 64-bit)

- Red Hat Enterprise Linux (RHEL) 4 (32- and 64-bit)

- Sun Solaris 9 (64-bit kernel)

- Sun Solaris 10 (64-bit kernel)


Requisitos hardware


IBM AIX(3)

- Power PC

- 512 MB RAM minimum; 512 MB or more recommended

- 1.5 GB disk space minimum; 1.5 GB or more recommended

- Disk swap space: Same amount as Physical memory required; recommended 2 times the physical RAM installed.

- Any standard display monitor (local or remote)


Linux

- Intel Pentium or higher and compatibles

- 512 MB RAM minimum; 512 MB or more recommended per CPU

- 1.5 GB disk space minimum; 1.5 GB or more recommended

- Disk swap space: 2 times the Physical RAM installed recommended

- Any standard display monitor (local or remote)


Sun Solaris(3)

- UltraSPARC III and newer

- 512 MB RAM minimum; 512 MB or more recommended per CPU

- 1.5 GB disk space minimum; 1.5 GB or more recommended per CPU

- Disk swap space: 3 times the physical RAM recommended

- Any standard display monitor (local or remote)