Tipos de software: sistema, aplicación, desarrollo y licencias de software

Enviado por Comunidad Xuletas y clasificado en Plástica y Educación Artística

Escrito el en español con un tamaño de 4,51 KB

El software: concepto y clasificación

El software es el conjunto de programas que dirigen todas las tareas que realizan los componentes físicos del ordenador. Es la parte lógica del ordenador.

Tipos de software

  • Software de sistema: aísla al usuario y al programador de los detalles físicos del ordenador.
  • Software de desarrollo: es el conjunto de herramientas que permiten desarrollar nuevos programas informáticos.
  • Software de aplicación: programas que se ejecutan sobre el software de sistema y permiten a los usuarios realizar tareas específicas.
  • Software no libre: se refiere a cualquier programa informático en el que el usuario tiene limitaciones para usarlo, modificarlo o redistribuirlo (esto último con o sin modificaciones). Su código fuente no está disponible.
  • Software libre: es un software disponible para cualquiera que desee utilizarlo, copiarlo y distribuirlo, ya sea en su forma original o con modificaciones. La posibilidad de modificaciones implica que el código fuente está disponible. El software libre puede ser gratuito o no, y también tiene la licencia que lo regula.

Las cuatro libertades del software libre

Un software es libre si garantiza las 4 libertades siguientes:

  1. La libertad de usar el programa, con cualquier propósito.
  2. La libertad de estudiar cómo funciona el programa y modificarlo, adaptándolo a tus necesidades.
  3. La libertad de distribuir copias del programa.
  4. La libertad de mejorar el programa y hacer públicas sus mejoras a los demás, de modo que toda la comunidad se beneficie.

La Free Software Foundation (FSF)

La Free Software Foundation (FSF) es una fundación que promueve el desarrollo y uso del software libre. Fundada en 1985 por Richard Stallman, uno de los proyectos más importantes de la FSF es GNU, que tiene como objetivo la promoción del desarrollo colaborativo de software y conocimiento mediante el uso de licencias libres.

Las licencias de software

La licencia de software es el conjunto de permisos que un desarrollador otorga para la distribución, uso y/o modificación de la aplicación que desarrolla. Puede indicar en esta licencia también los plazos de duración, el territorio donde se aplica, etc.

Principales tipos de licencias de software

  • Propietarias o comerciales: son de pago, permitiendo el uso en un solo equipo o para un número determinado de equipos. Muy restrictivas: cualquier uso fuera de las cláusulas convierte el software en ilegal. Ejemplo: licencias de Windows.
  • Para software libre: permiten usar, copiar, estudiar, modificar y redistribuir. Código fuente incluido. Ejemplo: sistema operativo Linux. Se dividen en dos: licencias robustas (copyleft) y licencias permisivas.
  • Shareware: uso limitado en tiempo o en capacidades con fines de evaluación. Después hay que pagar un precio. Ejemplos: WinRAR, Nero...
  • Freeware: programas que permiten la redistribución pero no la modificación. No incluye código fuente. Ejemplos: Windows Media Player, Internet Explorer...

Tipos de software según su función

Software de sistema

  • Sistema operativo: es la base del software, necesaria para que el ordenador pueda trabajar y sobre él se apoya el resto del software.
  • Drivers o controladores de dispositivos: permiten al sistema operativo comunicarse con los periféricos.
  • Utilidades que acompañan al sistema operativo para la monitorización del hardware y el mantenimiento (compresión de archivos, desfragmentadores de disco, copias de seguridad, particionadores, creación de imágenes, etc.).
  • Servidores: aplicaciones que ofrecen diferentes servicios a través de Internet (web, FTP, correo).

Software de desarrollo

  • Programas que permiten construir otros programas.
  • Permiten escribir programas en diferentes lenguajes: C, Java, C++, etc. El programa escrito en estos lenguajes se llama programa o código fuente.
  • El programa fuente debe ser traducido a lenguaje máquina (el que entiende el procesador) por medio de programas compiladores o intérpretes.