jueves, 29 de enero de 2015

Sistemas Operativos

Un Sistema Operativo es un programa o conjunto de programas de un sistema informático que gestiona los recursos de hardware y provee servicios a los programas de aplicación, ejecutándose en modo privilegiado respecto de los restantes.

Uno de los propósitos del sistema operativo que gestiona el núcleo intermediario consiste en gestionar los recursos de localización y protección de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con estos detalles. La mayoría de aparatos electrónicos que utilizan microprocesadores para funcionar, llevan incorporado un sistema operativo. En cuyo caso son manejados mediante una interfaz gráfica de usuario, un gestor de ventanas o un entorno de escritorio, si es un teléfono celular, mediante una consola o control remoto si es un DVD, y mediante una línea de comandos o navegador web si es un enrutador.


Componentes de un sistema operativo

  • Gestión de procesos. Un proceso es simplemente, un programa en ejecución que necesita recursos para realizar su tarea: tiempo de CPU, memoria, archivos y dispositivos de entrada o salida. El sistema operativo es el responsable de: crear y destruir procesos; detener y reanudar procesos; ofrecer mecanismos para que los procesos puedan comunicarse y se sincronicen.
  • Gestión de la memoria principal. La memoria es una gran tabla de palabras o bytes que se referencian cada una mediante una dirección única. Este almacén de datos de rápido acceso es compartido por la CPU y los dispositivos de entrada o salida, es volátil y pierde sus contenido ante fallos del sistema. El sistema operativo es el responsable de: conocer qué partes de la memoria están siendo utilizadas y por quién; decidir qué procesos se cargarán en memoria cuando haya espacio disponible; asignar y reclamar espacio de memoria cuando sea necesario.
  • Gestión del almacenamiento secundario. Un sistema de almacenamiento secundario es necesario, ya que la memoria principal es volátil y además muy pequeña para almacenar todos los programas y datos. También es necesario mantener los datos que no convenga mantener en la memoria principal. El sistema operativo se encarga de: planificar los discos; gestionar el espacio libre; asignar el almacenamiento; verificar que los datos se guarden en orden.
  • El sistema de entrada y salida. Consiste en un sistema de almacenamiento temporal, una interfaz de manejadores de dispositivos y otra para dispositivos concretos. El sistema operativo debe gestionar el almacenamiento temporal de Entrada/Salida y servir las interrupciones de los dispositivos de Entrada/Salida.
  • Sistema de archivos. Los archivos son colecciones de información relacionada, definida por sus creadores. Estos almacenan programas y datos tales como imágenes, textos, información de bases de datos, etc. El sistema operativo es responsable de: construir, eliminar archivos y directorios; ofrecer funciones para manipular archivos y directorios; establecer la correspondencia entre archivos y unidades de almacenamiento; realizar copias de seguridad de archivos.
  • Sistemas de protección. Mecanismo que controla el acceso de los programas o los usuarios a los recursos del sistema. El sistema operativo se encarga de: distinguir entre uso autorizado y no autorizado; especificar los controles de seguridad a realizar; forzar el uso de estos mecanismos de protección.
  • Sistema de comunicaciones. Para mantener las comunicaciones con otros sistemas es necesario poder controlar el envío y recepción de información a través de las interfaces de red. También hay que crear y mantener puntos de comunicación que sirvan a las aplicaciones para enviar y recibir información, y crear y mantener conexiones virtuales entre aplicaciones que están ejecutándose localmente y otras que lo hacen remotamente. 
  • Programas de sistema. Son aplicaciones de utilidad que se suministran con el sistema operativo pero no forman parte de él. Ofrecen un entorno útil para el desarrollo y ejecución de programas, siendo algunas de las tareas que realizan: manipulación y modificación de archivos; información del estado del sistema; soporte a lenguajes de programación; comunicaciones.
  • Gestor de recursos. Como gestor de recursos, el sistema operativo administra: la unidad central de procesamiento; los dispositivos de entrada y salida; la memoria principal; los discos; los procesos y en general todos los recursos del sistema.


Clasificación de los sistemas operativos

Administrador de tareas
  • Monotarea: solamente permite ejecutar un proceso (aparte de los procesos del propio sistema operativo) en un momento dado. Una vez que empieza a ejecutar un proceso, continuará haciéndolo hasta su finalización y/o interrupción.
  • Multitarea: es capaz de ejecutar varios procesos al mismo tiempo. Este normalmente asigna los recursos disponibles de forma alternada los procesos que los solicitan, de manera que el usuario percibe que todos funcionan a la vez, de forma concurrente.
Administración de usuarios
  • Monousuario: solo permite ejecutar los programas de un usuario al mismo tiempo.
  • Multiusuario: permite que varios usuarios ejecuten simultáneamente sus programas, accediendo a la vez a los recursos de la computadora.
Manejo de recursos
  • Centralizado: permite usar los recursos de una sola computadora.
  • Distribuido: permite utilizar los recursos de más de una computadora al mismo tiempo.
Ejemplos de sistemas operativos para PC
  • Microsoft Windows
  • OS X
  • GNU/Linux
  • Unix
  • Solaris
  • FreeBSD
  • OpenBSD
  • Google Chrome OS
  • Debian
  • Ubuntu
  • Mandriva
  • Sabayon
  • Fedora
  • Puppy Linux
  • Plan 9
  • Android 
  • Tuquito
Ejemplos de sistemas operativos para dispositivos móviles
  • Android
  • iOS
  • Bada
  • BlackBerry OS
  • BlackBerry 10
  • Windows Phone
  • Symbian OS
  • HP webOS
  • Firefox OS
  • Ubuntu Phone OS
  • Tizen
  • Asha Platform


miércoles, 28 de enero de 2015

Diferencias entre Software Libre y Software Propietario

Software Libre es la denominación del software que respeta la libertad de todos los usuarios que adquirieron el producto, y por tanto, una vez obtenido puede ser usado, copiado, estudiado, modificado, y redistribuido libremente de varias formas. Según la Fundación para el Software Libre, el mismo se refiere a la seguridad de los usuarios para ejecutar, copiar, distribuir y estudiar el software, e incluso modificarlo y distribuirlo modificado.

Un programa informático es software libre si otorga a los usuarios todas estas libertades de manera adecuada. Existen diversos esquemas de distribución que no son libres, y si bien podemos distinguirlos en base a cuánto les falta para llegar a ser libres, su uso bien puede ser considerado contrario a la ética en todos los casos por igual.

El Software libre suele estar disponible gratuitamente, o al precio de costo de la distribución a través de otros medios; sin embargo no es obligatorio que sea así, por lo tanto no hay que asociar "software libre" a "software gratuito", ya que conservando su carácter de libre, puede ser distribuido comercialmente. Análogamente, el software gratis incluye en ocasiones el código fuente; no obstante, este tipo de software no es "libre" en el mismo sentido que el software libre, a menos que se garanticen los derechos de modificación y redistribución de dichas versiones modificadas del programa.

Tampoco debe confundirse software libre con "software de dominio público". Este último es aquel software que no requiere de licencia, pues sus derechos de explotación son para toda la humanidad, porque pertenece a todos por igual. Cualquiera puede hacer uso de él, consignando su autoría original. Este software sería aquel cuyo autor lo dona a la humanidad o cuyos derechos de autor han expirado. Si un autor condiciona su uso bajo una licencia, por muy débil que sea, ya no es del dominio público.




De acuerdo con la definición, un software es "libre" cuando garantiza las siguientes libertades:
  1. La libertad de ejecutar el programa para cualquier propósito (libertad 0).
  2. La libertad de estudiar cómo trabaja el programa, y cambiarlo para que haga lo que usted quiera. El acceso al código fuente es una condición necesaria (libertad 1).
  3. La libertad de redistribuir copias para que pueda ayudar al prójimo (libertad 2).
  4. La libertad de mejorar el programa y publicar sus mejoras, y versiones modificadas en general, para que se beneficie toda la comunidad. El acceso al código fuente es una condición necesaria (libertad 3).

Software Propietario es el termino creado para designar al antónimo del concepto de software libre, por lo cual en diversos sectores se le han asignado implicaciones políticas relativas al mismo. Para la Fundación para el Software Libre, este concepto se aplica a cualquier programa informático que no es libre o que sólo lo es parcialmente, sea porque su uso, redistribución o modificación está prohibida, o sea porque requiere permiso expreso del titular del software.

La persona física o jurídica, al poseer los derechos de autor sobre un software, tiene la posibilidad de controlar y restringir los derechos del usuario sobre su programa, lo que en el software no libre implica por lo general que el usuario sólo tendrá derecho a ejecutar el software bajo ciertas condiciones, comúnmente fijadas por el proveedor, que signifique la restricción de una o varias de las cuatro libertades descritas anteriormente.

Adicionalmente todo software propietario no ofrece acceso al código fuente por lo que a su vez es considerado software de código cerrado en contraposición al de código abierto.




Comparando Software Libre y Software Propietario tenemos que:


Software Libre
  1. Acceso al código.
  2. No requiere actualizaciones.
  3. No brinda soporte técnico.
  4. Libertad de uso.
  5. Orientación mediante foros, blogs.

Software Propietario
  1. No puede ser modificado.
  2. Requiere actualizaciones.
  3. Brinda soporte técnico.
  4. Limita al uso propietario.
  5. Se rige a través de un manual.
  6. Tiene costo.


Herramientas Ofimáticas

Herramienta Ofimática designa una recopilación de programas indispensables en el entorno de oficina, que cumplen diversos roles como crear, modificar, organizar, escanear, imprimir y muchas otras funciones relacionadas al manejo de archivos y documentos. Son ampliamente usados por diferentes empresas y personas naturales, ya que al ser una recopilación de programas son mucho más asequibles que adquirir cada uno por separado en el caso del software propietario.

No existe un estándar sobre los programas a incluir en una suite ofimática, pero la gran mayoría incluye al menos un procesador de textos y una hoja de cálculo. Por otra parte el común de las suites, independientemente de formar parte del software libre o propietario, presentan diferentes paquetes de programas para intentar satisfacer las exigencias del mercado.

Ahora bien, el término Ofimática también llamado burótica o automatización de escritorios o automatización de oficinas, se refiere al conjunto de técnicas, aplicaciones y herramientas informáticas que se utilizan en funciones de oficina para optimizar, automatizar, y mejorar tareas y procedimientos relacionados.

Las herramientas ofimáticas permiten idear, crear, manipular, transmitir o almacenar la información necesaria en una oficina. Actualmente es fundamental que las oficinas estén conectadas a una red local o Internet, por cuanto existen aplicaciones relacionadas que permiten crear y compartir trabajo en línea. Los documentos pueden ser creados o importados a partir de archivos de texto, presentaciones y hojas de cálculo existentes, siendo el principal aporte en este campo el poder compartir o editar documentos, transmitir datos, correo electrónico e incluso voz a través de la red entre varios usuarios en tiempo real.

La Origen de la Ofimática se remonta a la creación de la máquina de escribir y de la fotocopiadora, que permitieron mecanizar tareas que antes eran manuales. Más cerca en el tiempo, la automatización de la oficina también comenzó a incluir el traspaso de información hacia medios electrónicos. Pero la verdadera revolución de la automatización llegó de la mano de las computadoras personales en 1980. Aunque debemos recordar que fue en el año de 1971 cuando el uso de las tecnologías se hizo costumbre, las cuales ayudaron para avanzar en la búsqueda de una sociedad más completa, en el ambiente laboral.

Herramientas Ofimáticas más usuales

  1. Procesamiento de textos.
  2. Hojas de cálculo.
  3. Herramientas de presentación multimedia.
  4. Bases de datos.
  5. Utilidades: agendas, calculadoras, etc.
  6. Programas de correo electrónico, correo de voz, mensajeros.
  7. Herramientas de reconocimiento y síntesis del habla.
  8. Suite ofimática: paquete de múltiples herramientas ofimáticas.

Básicamente entonces, la Ofimática se originó para la gestión, el almacenamiento y el intercambio de datos.

En el mundo de las Herramientas Ofimáticas es importante destacar algunas por su popularidad, tal es el caso de Microsoft Office, suite ofimática que abarca el mercado completo en Internet e interrelaciona aplicaciones de escritorio, servidores y servicios para los sistemas operativos Microsoft Windows y Mac OS X. Microsoft Office fue lanzado en 1989 para Apple Macintosh, más tarde en 1990 saldría una versión para Windows. Desde su fundación, las aplicaciones de Office han crecido exponencialmente lo que le ha permitido ofrecer herramientas cada vez más complejas. También ofrece diferentes recopilaciones, pero todas estas presentan programas en común. Ellos son:

  • Word. Es el procesador de texto de la suite y posee una posición dominante en el mercado. Su formato propietario DOC es considerado un estándar de facto, aunque en su versión 2007 utilizaba un nuevo formato basado en XML llamado .DOCX, pero también tiene la capacidad de guardar y abrir documentos en el formato DOC. Está disponible para plataformas Windows y Macintosh.
  • Excel. Es un programa de hoja o planilla de cálculo, originalmente llamado Multiplan. Al igual que Word, posee actualmente un mercado dominante y funciona en las mismas plataformas. Es utilizado normalmente en tareas financieras y contables. 
  • PowerPoint. Es un muy popular programa usado para desarrollar y desplegar presentaciones visuales en entornos Windows y Mac. También se utiliza para crear diapositivas multimediales, es decir, compuestas por texto, imágenes, sonido, animaciones y videos.
  • Outlook/Entourage. Microsoft Outlook es un administrador de información personal y un complejo cliente de correo electrónico. Aunque históricamente ha estado disponible para Mac, el equivalente más cercano para Mac OS X es Microsoft Entourage, el cual ofrece un conjunto más reducido de funcionalidades.