martes, 17 de julio de 2012

Software de Computadoras

1) ¿Qué es el software?
2) ¿Cómo se lo puede clasificar al software?
3) ¿Qué es un sistema operativo?
4) ¿Cuáles son los niveles en que se puede dividir a un sistema operativo?
5) ¿Cuáles son las principales tareas que debe cumplir un sistema operativo?
6) ¿Qué tipo de interfaces hay para un sistema operativo?
7) ¿Qué es un sistema operativo monousuario? ¿Qué es un sistema operativo multiusuario?
RESPUESTAS:

1) Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados que forman parte de las operaciones de un sistema de computación. Es el equipamiento lógico o soporte lógico de un sistema informático, comprende el conjunto de los componentes lógicos necesarios que hacen posible la realización de tareas específicas, en contraposición a los componentes físicos, que son llamados hardware.
2) Se puede clasificar al software en tres grandes tipos:Software de sistema:

     Su objetivo es desvincular adecuadamente al usuario y al programador de los detalles del sistema informático en particular que se use, aislándolo especialmente del procesamiento referido a las características internas de: memoria, discos, puertos y dispositivos de comunicaciones, impresoras, pantallas, teclados, etc. El software de sistema le procura al usuario y programador adecuadas interfaces de alto nivel, controladores, herramientas y utilidades de apoyo que permiten el mantenimiento del sistema global. Incluye entre otros:
  • Sistemas operativos
  • Controladores de dispositivos
  • Herramientas de diagnóstico
  • Herramientas de Corrección y Optimización
  • Servidores
  • Utilidades
  • Software de programación:
     Es el conjunto de herramientas que permiten al programador desarrollar programas informáticos, usando diferentes alternativas y lenguajes de programación, de una manera práctica. Incluyen básicamente:
  • Editores de texto
  • Compiladores
  • Intérpretes
  • Enlazadores
  • Depuradores
  • Entornos de Desarrollo Integrados (IDE): Agrupan las anteriores herramientas, usualmente en un entorno visual, de forma tal que el programador no necesite introducir múltiples comandos para compilar, interpretar, depurar, etc. Habitualmente cuentan con una avanzada interfaz gráfica de usuario (GUI).
  • Software de aplicación
    : Es aquel que permite a los usuarios llevar a cabo una o varias tareas específicas, en cualquier campo de actividad susceptible de ser automatizado o asistido, con especial énfasis en los negocios. Incluye entre muchos otros:
  • Aplicaciones para Control de sistemas y automatización industrial
  • Aplicaciones ofimáticas
  • Software educativo
  • Software empresarial
  • Bases de datos
  • Telecomunicaciones (por ejemplo Internet y toda su estructura lógica)
  • Videojuegos
  • Software médico
  • Software de cálculo Numérico y simbólico.
  • Software de diseño asistido (CAD)
  • Software de control numérico (CAM)

3) Básicamente en el sistema operativo se incorporan las funciones de control del hardware de una computadora, de administración de sus recursos físicos y de sus usuarios, así como el control efectivo de la ejecución de los programas que en ella se carguen. 

  • El funcionamiento del Sistema Operativo implica de existencia de al menos un 
    programa que está permanentemente  ejecutándose junto con nuestras aplicaciones.  
  • Esto significa que un subconjunto de los recursos de las computadoras son 
    “tomados” por el Sistema Operativo que se comunica directa o indirectamente con los programas de aplicación que  se ejecutan para cooperar en la ejecución o retomar el control del hardware en caso de problemas. 
4) Un sistema operativo se puede encontrar normalmente en la mayoría de los aparatos electrónicos que podamos utilizar sin necesidad de estar conectados a una computadora y que utilicen microprocesadores para funcionar, ya que gracias a estos podemos entender la máquina y que ésta cumpla con sus funciones (teléfonos móviles, reproductores de DVD, autoradios... y computadoras)
5) Las principales tares que debe cumplir son:

  • Comunicación con los periféricos 
Una de las tareas más complejas realizadas por una computadora es lacomunicación con pantallas, scanners,  impresoras, unidades de disco, mouses,teclados, placas de sonido, placas conversoras analógico/digitales y otrosdispositivos periféricos. El sistema operativo incluye programas que se encargande un modo transparente al usuario de los detalles de comunicación con losperiféricos o con el hardware que controla estos periféricos. 
  • Control de autorización de usuarios 
En el caso de las computadoras monousuario el sistema operativo puede verificar(mediante una password por ejemplo) que el usuario que trata de utilizar el equipoestá habilitado para ello. Más aún puede  tener derechos sobre determinadosrecursos del equipo pero no sobre todos los recursos.Cuando se trata de computadoras multiusuario, o en el caso de redes decomputadoras, la tarea de administración de usuarios del sistema operativo esbastante más compleja, porque los  derechos de cada usuario pueden serdiferentes sobre cada máquina, cada base de datos o cada periférico.En algunos casos este control de usuarios, incluye control de tiempos deutilización para el cobro posterior de los servicios. 
  • Control de la ejecución de programas 
La ejecución efectiva de un programa (escrito en cualquier lenguaje deprogramación o aplicación) requiere una comunicación permanente con el sistemaoperativo para acceder a los recursos de la computadora, recursos que el sistemaoperativo controla y verifica. De este modo se puede detectar que una orden deimpresión escrita en un programa es imposible de ejecutar porque la impresora noestá encendida, o que un dato de un archivo no se puede recuperar porque fallael dispositivo periférico, o que la ejecución de un programa ha tardado más de untiempo máximo determinado, etc. También el sistema operativo monitorea el resultado de la ejecución para trasmitiral usuario el mensaje adecuado resultante de la evolución de la ejecución.
  • Control de concurrencia 
Las computadoras multiusuario (que tienen terminales conectadas a un granprocesador central), o las redes de computadoras, o las modernas computadorasparalelas con varios procesadores  internos, pueden tener varios trabajosejecutándose al mismo tiempo (procesamiento concurrente). Esto exige que elsistema operativo controle que hace cada  proceso y permita que los mismoscompartan datos y recursos (es decir se comuniquen y se sincronicen).Por otra parte estos múltiples procesos pueden tener diferente prioridad paraacceder a los recursos, lo que debe ser  controlado también por el sistemaoperativo. 
  • Control de errores 
  • Controles de seguridad de datos 
  • Son intuitivas. El usuario no necesita estudiar un manual de comandos para 
    comprender lo que la imagen le muestra en un menú. 
  •  Son consistentes. Toda una gama de  aplicaciones (por ejemplo los 
    múltiples programas de un Office) tienen la misma forma de interfaz, lo que favorece el aprendizaje y la seguridad del usuario en su utilización. 
  • Facilitan el autoaprendizaje al ser repetitivas. 
  • Incorporan mecanismos de seguridad. Se trata de impedir determinados 
    errores mediante mensajes y bloqueos para el usuario (por ejemplo borrar inadvertidamente un disco rígido) y también se trata de permitir  “volver atrás”, de modo de corregir alguna secuencia incorrecta de acciones. 
  • Incrementan la flexibilidad. En particular se puede usar simultánea o 
    alternativamente el teclado o el mouse.
    6) El modo en que el sistema operativo se comunica con el usuario constituye la interfaz del mismo. 
La interfaz es particularmente importante para establecer una vinculación amigable entre el usuario de la computadora y el manejo de la misma que da el sistema operativo. Históricamente las interfaces estuvieron basadas en  comandos formados por palabras clave que se combinaban con una sintaxis determinada para ser interpretados por el sistema operativo. Estas interfaces se denominan orientadas a caracteres. El ejemplo clásico de una interfaz orientada a caracteres es el sistema operativo DOS que ¿todos? conocen de las primitivas PCs.  Las ventajas que tienen las interfaces orientadas a caracteres son su simplicidad, confiabilidad y poco costo en el desarrollo del sistema operativo que las soporta.  Las desventajas son que requieren un usuario calificado que estudie y conozca los comandos, lo cual resulta muy restrictivo para la difusión del uso de las computadoras.
En los últimos años se han impuesto las  interfaces gráficas que contienen imágenes representativas (por ejemplo de los archivos  o dispositivos o de los comandos), llamadas iconos que se pueden organizar en menúes que se abren y cierran (menúes descendentes) y que pueden expandirse en presentaciones dentro de múltiples ventanas en la pantalla. En todos  los casos el dispositivo apuntador a las selecciones del usuario es fundamentalmente el mouse. Ventajas de las interfaces gráficas tipo VIMA  VIMA  (WIMP en inglés) significa  Ventanas,  Iconos,  Menúes y  Apuntadores y como interfaz de usuario tiene una serie de ventajas: 

  • Son intuitivas. El usuario no necesita estudiar un manual de comandos para 
  • comprender lo que la imagen le muestra en un menú. 
  • Son consistentes. Toda una gama de  aplicaciones (por ejemplo los 
  • múltiples programas de un Office) tienen la misma forma de interfaz, lo que favorece el aprendizaje y la seguridad del usuario en su utilización. 
  • Facilitan el autoaprendizaje al ser repetitivas. 
  • Incorporan mecanismos de seguridad. Se trata de impedir determinados 
  • errores mediante mensajes y bloqueos para el usuario (por ejemplo borrar inadvertidamente un disco rígido) y también se trata de permitir  “volver atrás”, de modo de corregir alguna secuencia incorrecta de acciones. 
  • Incrementan la flexibilidad. En particular se puede usar simultánea o 
  • alternativamente el teclado o el mouse.
7) Un sistema operativo multiusuario permite proveer servicio y procesamiento a múltiples usuarios simultáneamente (tanto en paralelismo real como simulado). En la categoría de multiusuario se encuentran todos los sistemas que cumplen simultáneamente las necesidades de dos o más usuarios, que comparten los mismos recursos. Actualmente este tipo de sistemas se emplean especialmente en redes, pero los primeros ejemplos de sistemas multiusuario fueron sistemas centralizados que se compartían a través del uso de múltiples dispositivos de interfaz humana (e.j. una unidad central y múltiples pantallas y teclados).
  • Procesador
  • Memoria.
  • Almacenamiento secundario (almacenaje en disco duro).
  • Programas.
  • Periféricos como impresoras, plotters, scanners, etc.