domingo, 23 de abril de 2017

Software

SOFTWARE


Las computadoras son capaces de procesar gran cantidad de información de acuerdo a una secuencia de órdenes. Esas órdenes son un conjunto de instrucciones detalladas que controlan el funcionamiento de la computadora, se denominan Programa. En una computadora se utilizan distintos tipos de programas, según la tarea que se quiera realizar. El conjunto de programas que se pueden ejecutar en una computadora se denomina Software.

Tanto el hardware como el software son importante para el funcionamiento de una computadora, sin cualquiera de ellos, el otro no puede funcionar.

Tipos de software

En una computadora es común encontrar una gran variedad de programas destinados a diferentes tareas, los cuales se pueden enmarcar en la siguiente clasificación:
  • De Sistemas: Se relaciona con la administración de los recursos de la computadora (ej: dispositivos de comunicación, CPU, etc.). Son las piezas de software que permiten el funcionamiento y comunicación entre las diferentes partes de la computadora.  Dentro de este tipo de software se señalan las instrucciones de cada dispositivo (conocido como drivers) que le permiten interactuar con las demás partes de la computadora.  Se denominan Sistemas Operatidos y permiten la comunicación entre la computadora y el usuario. El sistema operativo trabaja directamente sobre el hardware gestionando los recursos del sistema con las siguientes funciones: eficaz utilización de los recursos disponibles, proporciona las herramientas específicas para la configuración del equipo y gestión de los datos y administra la memoria disponible. En este grupo están los programas que controlan y coordinan el hardware para administrar los recursos de la computadora. Entre ellos se destacan los sistemas operativos, que actúan como intermediarios entre los componentes físicos y el usuario.
Algunos sistemas operativos más difundidos son: MS-DOS, Unix, OS/2, Windows ´95 en adelante y NT, Linux, Mac OS, etc.

Todas las computadoras necesitan un sistema operativo (SO) para funcionar, de los que hay varios tipos:  los de libre distribución, como los basados en Linux (Debian, Ubuntu, etc) y los que su uso requiere una licencia, como los de Microsoft (Windows XP, Vista, Seven) o los de Apple (OS Snow Leopard) entre otros.  Los equipos de computación pueden se fabricados por grandes empresas de Marca (HP, Compact, Sony, etc) o bien empresaslocales más pequeñas de diferentes macas, a estos se los llama clones.

Según el número de usuarios que utilicen simultáneamente la computadora, los sistemas operativos pueden ser monousuarios (la PC es operada por una sola persona) o multiusuario (permiten, desde una computadora central administrar una red de computadoras llamadas terminales, las cuales pueden compartir datos y programas). Los cuales pueden ser monotarea o multitarea (según la cantidad de procesos simultáneos que procese).
  • MS-DOS (Microsoft Disk Operating System) sistema operativo en disco, diseñado por Microsoft en 1979. Trabaja con interfaz de texto que se basa en comandos (órdenes) permite controlar la gestión de archivos, transferencia de datos entre periféricos y la carga y ejecución de programas. Es monousuario y monotarea.
  • Unix diseñado po AT&T en 1971. Es de propósitos generales, multiusuario y multitarea.
  • OS/2 (Operating System 2) diseñado por IBM y Microsoft para ser usados en equipos PS/2. Permite la conexión a una red y fue desarrollado para equipos potentes.
  • Windows 3.11 ´95, ´98, 2000 y 2003 ME, NT, XP, Vista, Windows 7 etc. de Microsoft, opera bajo entorno gráfico o interfaz gráfica, por lo que simplifica la comunicación con el usuario. Realizan las prestaciones de sistemas operativos tradicionales pero son multitareas, pueden compartir datos entre programas y tienen acceso mayor a la memoria central. Además se integra perfectamente a Internet.
Las plataformas, también llamadas sistemas operativos (SO), son programas básicos que se instalan en las computadoras para que podamos interactuar con ellas.  Sobre esas plataformas se instalará el resto de los programas.  Los sistemas operativos más conocidos son Windows, en todas sus versiones, GNU - Linux, que es software libre (Debian, Ubuntu, Fedora, Gentoo), Mac OS, para computadoras Macintosh - Apple(Tiger, Leopard, Snow Leopard), y muchos otros que se usan en computadoras más grandes y más pequeñas.  Cada SO tienen diferentes versiones o distribuciones.

Genealogía del Windows

Desde sus comienzos (en noviembre de 1985), el sistema operativo Windows estuvo dirigido sólo a los hogares. Ocho años más tarde, Microsoft incorporó una línea para redes de empresas. A fines del año 1999 el lanzamiento de la versión de Windows 2000. A fines 2001 el lanzamiento de Windows XP. Windows Server 2003, Windows Vista, Windows Server 2008 y Windows 7. Cada nueva versión con mejoras en el diseño, la estabilidad, más dispositivos de red, nuevos servicios, más capacidades multimedia, etc…

Hoy pueden distinguirse básicamente dos familias de sistemas operativos: los del tipo Microsoft Windows® y los de tipo Unix® dentro del que encontramos las diversas versiones de GNU/Linux®. Windows fue desarrollado como una interfaz gráfica, sobre el primer sistema operativo (DOS). En la actualidad es el sistema operativo más utilizado en computadoras de escritorio y pequeños servidores, es lo que se denomina software propietario; la empresa lo comercializa y además mantiene un secreto parte del código fuente.

Los sistemas operativos basados en Unix son una familia amplia de sistemas operativos. Existen diferentes variedades, entre ellos las distintas distribuciones de GNU/Linux, si bien el núcleo es el mimo, lo que ofrecen los diferentes desarrollos son los paquetes de software que vienen con el sistema operativo. Gran cantidad de programadores colaboran con su trabajo para producir más y mejores aplicaciones. Se utiliza frecuentemente la expresión “Software Libre” para denominar a los sistemas de código abierto, suele entenderse que sus aplicaciones son gratuitas.

Breve historia de GNU/Linux

En 1991, Linus Benedict Torvalds escribió el primer código de lo que hoy es el sistema Linux, a partir de ello invitó a la comunidad de programadores a seguir con el desarrollo. La respuesta de la comunidad se convirtió en un movimiento que puede cambiar el curso de la historia de la computación. Hoy en día se ha convertido en un sistema operativo de código abierto, libre y gratuito, enriquecido por el trabajo colaborativo de miles de participantes del proyecto, que amenaza la hegemonía de Windows. Si bien el núcleo del sistema operativo es el mismo, existen algunas variantes en las aplicaciones que se ofrecen. Entre las distribuciones más conocidas se encuentran: Redhat, Debian, SusE, Mandrake. El pingüino Tux es la mascota de linux.
  • De Aplicación: Se trata de los programas que utilizan los usuarios para trabajar con la computadora. Algunos de ellos solo corren en un sistema operativo determinado, mientras otros son multiplataforma. Encontramos a todos los programas estándar existentes en mercado, desde videojuegos hasta sistemas de contabilidad y gestión de empresas. Incluye programas que se ejecutan para realizar trabajos relacionados con áreas específicas. Para utilizarlos es necesario que exista un software de sistema que permita su ejecución. Algunas de las aplicaciones estándar más difundidas son:
  • Procesadores de texto: se usan para crear, modificar e imprimir todo tipo de documentos, cuentan con posibilidades de edición, formato, inclusión de imágenes y gráficos, corrección ortográfica, configuración de páginas e impresión Ej: Ami Pro, Word Perfect, Microsoft Word, etc.
  • Planilla de cálculo (electrónica): es una tabla compuesta por celdas que puede almacenar texto, números, fórmulas y funciones. Realiza cálculos en forma automática, permite la representación gráfica de los datos e impresión de la información. Ej: Excel, Quattro Pro, Lotus, Writer, etc.
  • Gestor de Base de datos: maneja gran cantidad de datos de un archivo, organiza los registros y campos, facilidad de actualización , ordenamiento, elaboración de informes, aplicar filtros y ordenamientos, etc. Ej: Access, dBase, Fox Pro, Calc, etc.
  • Graficadores: consiste en módulos o conjunto de varias aplicaciones con posibilidad para realizar gráficos, retocar fotografías, crear prestaciones, etc. En líneas generales se dividen entre los que trabajan con imágenes vectoriales y los que lo hacen con mapas de bits. Los primeros se centran más en el detalle de la imágen y suelen usarse en diseño gráfico, planos, esquemas, logotipos, tipografías, etc. Ej: Corel Draw, Windows Draw, etc. Los programas que trabajan con mapas de bits atienden en mayor medida el procesamiento de imágenes en cuanto a brillo, contraste, color, nitidez, etc. Suelen emplearse en el retoque de fotografías, ilustraciones, dibujos hechos a mano. En este grupo hay programas como Corel Photopaint y Adobe Photoshop, Gimp, Illustrator, Inkscape, Photoshop, etc.
  • Gestor de comunicaciones: administra la transmisión de información entre computadoras a través de la red telefónica o redes de telecomunicación. Ej: Microsoft Mail, Outlook, Pegasus Mail, etc.
  • A Medida: Abarca los programas que sirven para crear nuevos programas usando un lenguaje de programación determinado. Son programas diseñados especialmente para cumplir con tareas no contempladas en las aplicaciones estándar, tales como la realización de facturas de ventas, el cálculo de trayectorias de satélites, simulaciones científicas, rutinas para la animación, programas específicos para el manejo de bancos y otras entidades financieras, etc. Además se utilizan para crear software de sistema y de aplicación. Este tipo de programas son realizados generalmente por profesionales que utilizan lenguajes de programación para indicar las instrucciones a la computadora.
  • De Compresión: Son programas que reducen el espacio de almacenamiento (ocupan menos lugar en disco).
Ejemplos:
 PKZIP/PKunZIP de Phil Katz, ARJ, PAK, RAR con o sin pérdida de datos.
Jpeg (JPG) – GIF y BMP, para imágenes fijas.
AVI – Mpeg, para imágenes en movimiento.

Uso y Licencia

Al comprar un programa, lo que se está adquiriendo no es el programa en sí mismo, sino el derecho de uso que entrega el dueño, a través de una licencia. El programa puede copiarse o bajarse desde Internet, pero la utilización de un programa sin la autorización correspondiente, es un acto ilegal.

Las licencias que entrega el propietario puede ser para uso individual, o para un grupo de computadoras (empresas, instituciones, etc). 

La diferencia fundamental entre software libre y software propietario se refleja en los objetivos de quienes producen uno y otro.  En el primer caso existe un afán de mejorar las opciones pensando comunitariamente y es por eso que es de uso privilegiado en las universidades e instituciones sin fines de lucro.  En el segundo caso es el interés económico el motor de su desarrollo.

Los software propietarios pueden conseguirse con distintos tipos de licencia:
  • Trialware: Se autoriza al usuario a usar el software de manera gratuita durante un periodo de tiempo determinado, luego del cual el programa deja de funcionar. Para continuar utilizándolo, deberá pagarse la licencia.
  •  Demoware: Consiste en una versión reducida del programa, del cual solo pueden ejecutarse algunas funciones, y permite al usuario decidir si está interesado o no en adquirir la licencia del programa.
  • Shareware: En esta modalidad, el programa es ofrecido al usuario para que lo utilice durante un periodo de prueba, luego del cual se deberá abonar la licencia. A diferencia del trialware, el programa continúa funcionando aún completado el lapso de prueba.
  • Freeware: El propietario cede de manera gratuita los derechos de uso del programa.
Software Portable

Una aplicación es portable cuando puede ser utilizada en cualquier computadora que posea un sistema operativo para la que fue programada sin necesidad de realizar una instalación previa.  Esto significa que no es necesaria la instalación de archivos adicionales en el sistema para su funcionamiento.

No todas las aplicaciones informáticas son portables.  Usualmente existe una versión normal de la aplicación (la versión instalable) y luego esta se modifica para crear su versión portable.