Clasificación y Fundamentos de Aplicaciones, Licencias y Sistemas Operativos

Tipos de Aplicaciones Informáticas

Las aplicaciones informáticas pueden clasificarse en dos tipos:

Aplicaciones de Propósito General

Se utilizan para el desempeño de funciones no específicas. Se suelen comercializar en paquetes integrados denominados suites, y se componen de:

  • Gestión de texto: Editores de texto, Procesadores de texto, Editores de XML y HTML, etc.
  • Herramientas para la comunicación: Trabajo en grupo, como gestores de correo electrónico, mensajería instantánea, etc.
  • Utilidades y herramientas: Como antivirus, navegadores web y gestores de archivos.

Aplicaciones de Propósito Específico

Se utilizan para el desempeño de funciones específicas, científicas, técnicas o de gestión, tales como:

  • Administración: Contabilidad, facturación, gestión de almacén.
  • Entornos gráficos de desarrollo: Visual Studio, Borland Builder C++, etc.
  • Herramientas de gestión de red: Tivoli, NetView, etc.
  • Herramientas de diseño gráfico y maquetación: Corel Draw, Visio, Adobe PhotoShop.

Licencias de Software

Las licencias de software sirven para establecer un contrato entre el autor de una aplicación y el usuario. Existen varios tipos de software según las limitaciones impuestas a las acciones del usuario sobre el mismo:

  • Software propietario.
  • Software libre.
  • Software semilibre.
  • Software de dominio público.
  • Software con copyleft.

Software Propietario

Es el software cuya redistribución o modificación están prohibidas. Los usuarios tienen limitadas las posibilidades de usarlo, modificarlo o redistribuirlo; su código fuente no está disponible. Lo que se le otorga al usuario es el derecho de uso de la aplicación.

Una persona física o jurídica posee los derechos de autor sobre este software. El software sigue siendo propietario aun si el código fuente es hecho público.

Software Libre

Proporciona al usuario las siguientes libertades:

  • Utilizar el programa para cualquier propósito.
  • Estudiar cómo funciona el programa y adaptarlo a sus necesidades (deben proporcionarse las fuentes).
  • Distribuir copias.
  • Mejorar el programa y hacer públicas las mejoras a los demás.

Todo programa que no incorpore alguna de estas libertades se considera no libre o semilibre. La mayoría de estos programas surgen de la FSF (Free Software Foundation). Suele ser gratuito o al costo de la distribución, pero no es obligatorio, por lo que no debe confundirse con “software gratuito” (freeware).

Ejemplos de software libre:

  • Sistemas Operativos: Debian GNU/Linux, Ubuntu, Linex.
  • Entornos de escritorio: GNOME, KDE, etc.
  • Aplicaciones de oficina: OpenOffice, KOffice, LATEX, etc.
  • Navegación web: FireFox, Konqueror, etc.
  • Aplicaciones para Internet: Apache, Zope, etc.

Software de Dominio Público

No está protegido por copyright y no requiere licencia, ya que sus derechos de explotación son para toda la humanidad. Esto ocurre cuando el autor lo dona o cuando los derechos expiran en un plazo de 70 años desde la muerte de este.

Software con Copyleft

Es el software libre cuyos términos establecen que cualquier versión modificada debe ser también libre.

Otros Tipos de Software

Existen otros tipos de software, tales como:

  • Freeware: Programa totalmente gratuito. Es posible que requiera que nos registremos, pero siempre de forma gratuita.
  • Shareware (Demo): Se trata de una versión reducida del programa, con algunas funciones desactivadas para que podamos probarlo y decidir si lo vamos a comprar o no.
  • Shareware (Versión limitada por tiempo): Se trata de una versión totalmente funcional por un cierto número de días (normalmente 30), tras la cual no se podrá usar o se verá reducida su funcionalidad. Su objetivo es poder probar la aplicación y luego decidir si se compra o no.

Sistemas Operativos

El sistema operativo (SO) es un conjunto de programas que se encarga de gestionar los recursos hardware y software del ordenador, y actúa como interfaz entre los programas de usuario y el hardware.

Los principales objetivos de los sistemas operativos son:

  • Abstraer al usuario de la complejidad del hardware, haciendo que el ordenador sea más fácil de usar.
  • Eficiencia: Permitir que los recursos del ordenador se utilicen de la forma más eficiente posible.
  • Acceder a los dispositivos de entrada/salida.
  • Proporcionar una estructura y conjunto de operaciones para el sistema de archivos.
  • Detección y respuesta ante errores.
  • Capacidad de adaptación: Que pueda evolucionar a la vez que surgen actualizaciones de hardware y software.

Tipos de Sistemas Operativos

Por su estructura

  • Monolíticos: Estructura de los primeros sistemas operativos, que consistía en un solo programa desarrollado con rutinas entrelazadas que podían llamarse entre sí.
  • Jerárquicos: Necesarios para una mayor organización del software, dividiéndose en partes más pequeñas, diferenciadas por funciones y con una interfaz clara.
  • Máquina Virtual: Estas máquinas son una réplica de la máquina real y en cada una de ellas se puede ejecutar un sistema operativo diferente.
  • Microkernel: El objetivo es aislar el núcleo del sistema de las operaciones de E/S, gestión de memoria, gestión del sistema de archivos, etc. Esto incrementa la tolerancia a fallos.

Por sus servicios

  • Monousuario: Soportan a un usuario a la vez, sin importar el número de procesos que el usuario pueda ejecutar en un mismo instante.
  • Multiusuario: Dan servicio a varios usuarios a la vez, sin importar el número de procesadores en la máquina ni el número de procesos que puede ejecutar cada usuario.
  • Monotarea: Permite una tarea a la vez por usuario. Se puede dar el caso de un sistema multiusuario y monotarea.
  • Multitarea: Permite al usuario realizar varias tareas al mismo tiempo.
  • Monoprocesador: Es aquel capaz de manejar solo un procesador; tener más es inútil.
  • Multiprocesador: Se refiere al número de procesadores del sistema (más de uno), y el SO es capaz de utilizarlos todos. Trabajan de dos formas: simétricamente y asimétricamente.

Por su forma

  • Sistemas operativos en red: Tienen la capacidad de interactuar con los sistemas operativos de otras máquinas a través de la red para intercambiar información. El usuario debe conocer la ubicación de los recursos en red a los que desee acceder.
  • Sistemas operativos distribuidos: Abarcan los servicios de red. Las funciones se distribuyen entre diferentes ordenadores, logrando integrar recursos en una sola máquina virtual a la que accede el usuario. El usuario no necesita saber la ubicación de los recursos.

Servicios de los Sistemas Operativos

Los principales recursos que administra el sistema operativo son:

  • El procesador.
  • La memoria.
  • Los dispositivos de entrada/salida.
  • El sistema de archivos.

El Núcleo (Kernel)

El Núcleo gestiona todos estos recursos o, normalmente, representa solo una pequeña parte de todo el SO. Reside, por lo general, en la memoria principal y se encarga de controlar y administrar los servicios y peticiones de recursos.

Se divide en distintos niveles:

  • Gestión de procesos.
  • Gestión de memoria.
  • Gestión de la entrada/salida (E/S).
  • Gestión del Sistema de archivos.

Organización de la Información para la Administración de Recursos

Los sistemas operativos organizan la información necesaria para la administración de los procesos y recursos en cuatro categorías:

  1. Tablas de memoria: Se utilizan para rastrear la memoria principal y secundaria. Los procesos se mantienen en memoria secundaria. Estas deben incluir la información siguiente:
    • La asignación de memoria principal a los procesos.
    • La asignación de memoria secundaria a los procesos.
    • Atributos de protección de segmentos de memoria principal o virtual, como qué procesos pueden acceder a ciertas regiones compartidas de memoria.
    • Cualquier otra información necesaria para gestionar la memoria virtual.
  2. Tablas de E/S: Son utilizadas por el sistema operativo para administrar los dispositivos y los canales de E/S.
  3. Tablas de archivos: Ofrecen información sobre la existencia de archivos, su posición en memoria secundaria, su estado actual y sus atributos.
  4. Tablas de procesos: Contienen información relativa a la identificación, ubicación y a los atributos de los procesos.

Estas tablas deben estar enlazadas o disponer de referencias cruzadas de alguna manera. El sistema operativo crea y mantiene estas tablas, para lo que debe tener algún conocimiento sobre el entorno básico, como cuánta memoria principal hay, cuáles son los dispositivos de E/S, etc.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.