viernes, 20 de noviembre de 2009

Semana 05

DEFINICIÓN DE SOFTWARE

Probablemente la definición más formal de software sea la siguiente:
“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”.
Bajo esta definición, el concepto de software va más allá de los programas de cómputo en sus distintos estados: código fuente, binario o ejecutable; también su documentación, datos a procesar e información de usuario es parte del software: es decir, abarca todo lo intangible, todo lo “no físico” relacionado.
El término «software» fue usado por primera vez en este sentido por John W. Tukey en 1957. En las ciencias de la computación y la ingeniería de software, el software es toda la información procesada por los sistemas informáticos: programas y datos. El concepto de leer diferentes secuencias de instrucciones desde la memoria de un dispositivo para controlar los cálculos fue introducido por Charles Babbage como parte de su máquina diferencial. La teoría que forma la base de la mayor parte del software moderno fue propuesta por vez primera por Alan Turing en su ensayo de 1936, “Los números computables”, con una aplicación al problema de decisión.¨
Clasificación del software

Si bien esta distinción es, en cierto modo, arbitraria, y a veces confusa, a los fines prácticos se puede clasificar al software en tres grandes tipos:
  • Software de sistema: en algunas ocasiones también denominado software de base, consiste en un software que sirve para controlar e interactuar con el sistema, proporcionando control sobre el hardware y dando soporte a otros programas. En contraposición del llamado Software de Aplicación. El software de sistema realiza tareas como la transferencia de datos entre la memoria RAM y los dispositivos de almacenamiento (disco rígido, unidades de discos ópticos, etc), o bien puede realizar la operación de renderizado de texto en una pantalla.. El software de sistema le procura al usuario y programador adecuadas interfaces de alto nivel, herramientas y utilidades de apoyo que permiten su mantenimiento. Incluye entre otros:

- Sistemas operativos

- Controladores de dispositivo

- Herramientas de diagnóstico

- Herramientas de Corrección y Optimización

- Servidores

- Utilidades

  • Software de aplicación: 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 otros:

- Aplicaciones de Sistema de control y automatización industrial

- Aplicaciones ofimáticas

- Software educativo

- Software empresarial

- Bases de datos

- Telecomunicaciones (p.ej. internet y toda su estructura lógica)

- Videojuegos

- Software médico

- Software de Cálculo Numérico

- Software de Diseño Asistido (CAD)

- Software de Control Numérico (CAM)

  • Software (Lenguajes) 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. Incluye entre otros:

- Editores de texto

- Compiladores

- Intérpretes

- Enlazadores

- Depuradores

- Entornos de Desarrollo Integrados (IDE): Agrupan las anteriores herramientas, usualmente en un entorno visual, de forma 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).

Sistema operativo

Un sistema operativo es un software de sistema, es decir, un conjunto de programas de computación destinados a realizar muchas tareas entre las que destaca la administración eficaz de sus recursos.

Comienza a trabajar cuando en memoria se carga un programa específico y aun antes de ello, que se ejecuta al iniciar el equipo, o al iniciar una máquina virtual, y gestiona el hardware de la máquina desde los niveles más básicos, brindando una interfaz con el usuario. Un sistema operativo se puede encontrar normalmente en la mayoría de los aparatos electrónicos que utilicen microprocesadores para funcionar, ya que gracias a éstos podemos entender la máquina y que ésta cumpla con sus funciones (teléfonos móviles, reproductores de DVD, autoradios, computadoras, radios,etc).

Funciones Básicas

Los sistemas operativos, en su condición de capa software que posibilitan y simplifica el manejo de la computadora, desempeñan una serie de funciones básicas esenciales para la gestión del equipo. Entre las más destacables, cada una ejercida por un componente interno (módulo en núcleos monolíticos y servidor en micronúcleos), podemos reseñar las siguientes:

  • Proporcionar más comodidad en el uso de un computador.
  • Gestionar de manera eficiente los recursos del equipo, ejecutando servicios para los procesos (programas)
  • Brindar una interfaz al usuario, ejecutando instrucciones (comandos).
  • Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban (evolutividad).

Un sistema operativo desempeña 5 funciones básicas en la operación de un sistema Informático:

  1. Suministro de interfaz al usuario.
  2. Administración de recursos.
  3. Administración de archivos.
  4. Administración de tareas.
  5. Servicio de soporte y utilidades.

Interfaces del usuario (GUI)

Es la parte del sistema operativo que permite comunicarse con él, de tal manera que se puedan cargar programas, acceder archivos y realizar otras tareas. Existen tres tipos básicos de interfaces: las que se basan en comandos, las que utilizan menús y las interfaces gráficas de usuario.

Administración de recursos

Sirven para administrar los recursos de hardware y de redes de un sistema informático, como el CPU, memoria, dispositivos de almacenamiento secundario y periféricos de entrada y de salida.

Administración de archivos

Un sistema de información contiene programas de administración de archivos que controlan la creación, borrado y acceso de archivos de datos y de programas. También implica mantener el registro de la ubicación física de los archivos en los discos magnéticos y en otros dispositivos de almacenamiento secundarios.

Administración de tareas

Los programas de administración de tareas de un sistema operativo administran la realización de las tareas informáticas de los usuarios finales. Los programas controlan que áreas tiene acceso al CPU y por cuánto tiempo. Las funciones de administración de tareas pueden distribuir una parte específica del tiempo del Cpu para una tarea en particular, e interrumpir al CPU en cualquier momento para sustituirla con una tarea de mayor prioridad.

Servicio de soporte

Los servicios de soporte de cada sistema operativo dependerán de la implementación particular de éste con la que estemos trabajando. Entre las más conocidas se pueden destacar las implementaciones de Unix, desarrolladas por diferentes empresas de software, los sistemas operativos de Apple Inc., como Mac OS X para las computadoras de Apple Inc., los sistemas operativos de Microsoft, y las implementaciones de software libre, como GNU/Linux o BSD producidas por empresas, universidades, administraciones públicas, organizaciones sin fines de lucro y/o comunidades de desarrollo.

Estos servicios de soporte suelen consistir en:

  • Actualización de versiones.
  • Mejoras de seguridad.
  • Inclusión de alguna nueva utilidad (un nuevo entorno gráfico, un asistente para administrar alguna determinada función, ...).
  • Controladores para manejar nuevos periféricos (este servicio debe coordinarse a veces con el fabricante del hardware).
  • Corrección de errores de software.
  • Otros.

No todas las utilidades de administración o servicios forman parte del sistema operativo, además de éste, hay otros tipos importantes de software de administración de sistemas, como los sistemas de administración de base de datos o los programas de administración de redes. El soporte de estos productos deberá proporcionarlo el fabricante correspondiente (que no tiene porque ser el mismo que el del sistema operativo).

No hay comentarios:

Publicar un comentario