- INTRODUCCIÓN
Sin el software, una computadora no es más que una masa metálica sin utilidad. Con el software, una computadora puede almacenar, procesar y recuperar información, encontrar errores de ortografía en manuscritos, tener aventuras e intervenir en muchas otras valiosas actividades para ganar el sustento. El software para computadoras puede clasificarse en general en dos clases: los programas de sistema, que controlan la operación de la computadora en sí y los programas de aplicación, los cuales resuelven problemas para sus usuarios. El programa fundamental de todos los programas de sistema es el sistema operativo (SO), que controla todos los recursos de la computadora y proporciona la base sobre la cual pueden escribirse los programas de aplicación.
2. HISTORIA
Los primeros sistemas (1945-1955) eran grandes máquinas operadas desde la consola maestra por los programadores. Durante la década siguiente (1955-1965) se llevaron a cabo avances en el hardware: lectoras de tarjetas, impresoras, cintas magnéticas, etc. Esto a su vez provocó un avance en el software: compiladores, ensambladores, cargadores, manejadores de dispositivos, etc.
A finales de los años 1980, una computadora Commodore Amiga equipada con una aceleradora Video Toaster era capaz de producir efectos comparados a sistemas dedicados que costaban el triple. Un Video Toaster junto a Lightwave ayudó a producir muchos programas de televisión y películas, entre las que se incluyen Babylon 5, SeaQuest DSV y Terminator 2.8
- ¿QUE ES UNSISTEMA OPERATIVO?
Un Sistema Operativo es un programa o conjunto de programas que actúa como interface entre el usuario o programador y la máquina física (el hardware) (a veces también citado mediante su forma abreviada OS en inglés) se encarga de crear el vínculo entre los recursos materiales, el usuario y las aplicaciones (procesador de texto, videojuegos, etcétera). Cuando un programa desea acceder a un recurso material, no necesita enviar información específica a los dispositivos periféricos; simplemente envía la información al sistema operativo, el cual la transmite a los periféricos correspondientes a través de su driver (controlador). Si no existe ningún driver, cada programa debe reconocer y tener presente la comunicación con cada tipo de periférico. En abreviatura (SO o, frecuentemente, OS —del inglés Operating System—)
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 (teléfonos móviles, reproductores de DVD, computadoras, radios, enrutadores, etc.). En cuyo caso, son manejados mediante una interfaz gráfica de usuario, un gestor de ventanas o un entorno de escritorio, si es un 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.
- TIPOS BASICOS
Los tipos básicos de sistemas operativos. Están divididos en grupos relacionados con el tipo de computadora que controlan y el tipo de aplicaciones que soportan. Estas son las categorías más amplias:
- SISTEMA OPERATIVO EN TIEMPO REAL
- SISTEMAS MULTIUSUARIO.
- SISTEMAS MONOUSUARIOS.
- SISTEMA OPERATIVO MONOTAREAS.
- SISTEMAS OPERATIVOS POR LOTES.
- SISTEMAS OPERATIVOS DISTRIBUIDOS.
- SISTEMAS OPERATIVOS DE RED.
- SISTEMAS OPERATIVOS PARALELOS.
4.1 SISTEMA OPERATIVO EN TIEMPO REAL (RTOS - REAL-EQUIPO OPERATING SYSTEM).
Es utilizado para controlar máquinas, instrumentos científicos y sistemas industriales. Generalmente un RTOS no tiene una interfaz para el usuario muy simple y no está destinado para el usuario final, ya que el sistema es entregado como una “caja sellada”. La función del RTOS es controlar los recursos del equipo para que una operación específica sea ejecutada siempre, durante el mismo periodo de tiempo. En una máquina compleja, si una parte se mueve más rápidamente, porque existen recursos del sistema disponibles para hacerlo, puede llegar a ser catastrófico.
4.2 SISTEMAS MULTIUSUARIO.
Un sistema operacional multiusuario permite que varios usuarios utilicen simultáneamente los recursos del equipo. El sistema operativo debe asegurarse que las solicitudes de varios usuarios se encuentren balanceadas. Cada uno de los programas utilizados debe disponer de recursos suficientes y separados, de forma que un problema de un usuario no afecte a toda la comunidad de usuarios. Unix, Windows Server, VMS y sistemas operativos mainframe como el MVS son ejemplos de sistemas operativos multiusuario.
Es importante diferenciar los sistemas operativos multiusuario de los sistemas operativos monousuarios que soportan redes. Algunas versiones de Windows pueden soportar varios usuarios en red, pero los sistemas operativos en sí no son sistemas multiusuarios reales. El administrador del sistema es el único “usuario”. El soporta a la red y todos los usuarios remotos son, del punto de vista del sistema operativo, un programa siendo ejecutado por el administrador.
4.3 SISTEMAS MONOUSUARIOS
Es sistema operativo que puede ser ocupado solo por una persona , ya que con el hecho de que le pongas una clave a tu sesión será completamente privado el equipo, los datos que tiene el sistema son accesibles para cualquiera que pueda conectarse.
VENTAJAS
• La gran seguridad de datos y la protección de los mismos como datos CONFIDENCIALES y datos IMPORTANTES que no deben ser manipulados por terceros.
• El poder trabajar en cualquier pc con solo contar con una cuenta de usuario en la red
• Seguro.
• Administra recursos de memoria, procesos y dispositivos de las PC’S.
DESVENTAJAS
• No permite la ejecución de dos o más usuarios a la vez.
• Se tiene que finalizar la sesión de un usuario para poder usar otro.
• Sistema operativo en el que solo se puede usar un usuario a la vez
4.4 TIPOS DE SISTEMAS OPERATIVOS MONOUSUSARIOS
Este sistema operativo fue creado para que un único usuario pueda hacer una cosa a la vez. Algunos sistemas operativos utilizados por los teléfonos celulares son el mejor ejemplo de un moderno sistema operativo monousuario y monotarea.
Este tipo de sistema operativo es el más utilizado en computadoras de escritorio y notebooks. Las plataformas Microsoft Windows y Apple Mac OS y dispositivos móviles de alta gama son ejemplos de sistemas operativos que permiten que un único usuario utilice varios programas al mismo tiempo. Por ejemplo, es perfectamente posible que un usuario de Windows escriba una nota en un procesador de texto al mismo tiempo que realiza una descarga de un archivo de internet e imprima un e-mail.
ANDROID
4.5 SISTEMAS OPERATIVOS POR LOTES
Los sistemas operativos por lotes, procesan una gran cantidad de trabajos con poca o ninguna interacción entre los usuarios
y los programas en ejecución. Cuando estos sistema son bien planeados, pueden tener un tiempo de ejecución muy alto, porque
el procesador es mejor utilizado y los sistemas operativos pueden ser simples, debido a la secuencialidad de la ejecución
de los trabajos. Algunas características de los sistemas operativos por lotes son las siguientes:
• Requiere que el programa, datos y órdenes al sistema sean remitidos todos juntos en forma de lote
• Permiten poca o ninguna interacción con el usuario
• Mayor potencial de utilización de Recursos que Procesamiento serial simple en sistemas multiusuarios
• Conveniente para programas de largos tiempos de ejecución
4.6 SISTEMAS OPERATIVOS DISTRIBUIDOS
Permiten distribuir trabajos, tareas o procesos, entre un conjunto de procesadores. Puede ser que este conjunto de procesadores esté en un equipo o en diferentes, en este caso es trasparente para el usuario. Los sistemas distribuidos deben de ser muy confiables, ya que si un componente del sistema se compone otro componente debe de ser capaz de reemplazarlo.
Entre los diferentes Sistemas Operativos distribuidos que existen tenemos los siguientes: Sprite, Solaris-MC, Mach, Chorus, Spring, Amoeba, Taos, etc.
Características de los Sistemas Operativos distribuidos:
• Colección de sistemas autónomos capaces de comunicación y cooperación mediante interconexiones hardware y software.
• Gobierna operación de un S.C. y proporciona abstracción de máquina virtual a los usuarios.
Objetivo clave es la transparencia.
• Generalmente proporcionan medios para la compartición global de recursos.
• Servicios añadidos: denominación global, sistemas de archivos distribuidos, facilidades para distribución de cálculos (a través de comunicación de procesos internados, llamadas a procedimientos remotos, etc.).
4.7 SISTEMA OPERATIVO DE RED
Son aquellos sistemas que mantienen a dos o más computadoras unidas através de algún medio de comunicación (físico o no), con el objetivo primordial de poder compartir los diferentes recursos y la información del sistema.
El primer Sistema Operativo de red estaba enfocado a equipos con un procesador Motorola 68000, pasando posteriormente a procesadores Intel como Novell Netware.
Los Sistemas Operativos de red mas ampliamente usados son: Novell Netware, Personal Netware, LAN Manager, Windows NT Server, UNIX, LANtastic.
4.8 SISTEMA OPERATIVO PARALELO
En estos tipos de Sistemas Operativos se pretende que cuando existan dos o más procesos que compitan por algún recurso se puedan realizar o ejecutar al mismo tiempo.
En UNIX existe también la posibilidad de ejecutar programas sin tener que atenderlos en forma interactiva, simulando paralelismo (es decir, atender de manera concurrente varios procesos de un mismo usuario). Así, en lugar de esperar a que el proceso termine de ejecutarse (como lo haría normalmente), regresa a atender al usuario inmediatamente después de haber creado el proceso.
Ejemplos de estos tipos de Sistemas Operativos están: Alpha, PVM, la serie AIX, que es utilizado en los sistemas RS/6000 de IBM.
- FUNCIONES DEL SISTEMA OPERATIVO
ADMINISTRACIÓN DEL PROCESADOR: el sistema operativo administra la distribución del procesador entre los distintos programas por medio de un algoritmo de programación. El tipo de programador depende completamente del sistema operativo, según el objetivo deseado.
GESTIÓN DE LA MEMORIA DE ACCESO ALEATORIO: el sistema operativo se encarga de gestionar el espacio de memoria asignado para cada aplicación y para cada usuario, si resulta pertinente. Cuando la memoria física es insuficiente, el sistema operativo puede crear una zona de memoria en el disco duro, denominada “memoria virtual”. La memoria virtual permite ejecutar aplicaciones que requieren una memoria superior a la memoria RAM disponible en el sistema. Sin embargo, esta memoria es mucho más lenta.
GESTIÓN DE ARCHIVOS: el sistema operativo gestiona la lectura y escritura en el sistema de archivos, y las autorizaciones de acceso a archivos de aplicaciones y usuarios.
ADMINISTRACIÓN DE AUTORIZACIONES: el sistema operativo se encarga de la seguridad en relación con la ejecución de programas garantizando que los recursos sean utilizados sólo por programas y usuarios que posean las autorizaciones correspondientes.
GESTIÓN DE ENTRADAS/SALIDAS: el sistema operativo permite unificar y controlar el acceso de los programas a los recursos materiales a través de los drivers (también conocidos como administradores periféricos o de entrada/salida)
.
GESTIÓN DE EJECUCIÓN DE APLICACIONES: el sistema operativo se encarga de que las aplicaciones se ejecuten sin problemas asignándoles los recursos que éstas necesitan para funcionar. Esto significa que si una aplicación no responde correctamente puede “sucumbir”.
GESTIÓN DE LA INFORMACIÓN: el sistema operativo proporciona cierta cantidad de indicadores que pueden utilizarse para diagnosticar el funcionamiento correcto del equipo.
ADMINISTRACIÓN DE IMPRESIÓN: La Administración de impresión ofrece un punto de administración central para compartir impresoras en una red y administrar las tareas de servidores de impresión e impresoras de red.
- INTERFAZES
En informática es la superficie de contacto que se utiliza para nombrar a la conexión física y funcional entre dos sistemas o dispositivos de cualquier tipo dando una comunicación entre distintos niveles. Su plural es interfaces.
6.1 INTERFAZ DE LÍNEA DE COMANDOS.
La forma de interfaz entre el sistema operativo y el usuario en la que este escribe los comandos utilizando un lenguaje de comandos especial. Los sistemas con interfaces de líneas de comandos se consideran más difíciles de aprender y utilizar que los de las interfaces gráficas. Sin embargo, los sistemas basados en comandos son por lo general programables, lo que les otorga una flexibilidad que no tienen los sistemas basados en gráficos carentes de una interfaz de programación. Tan bien conocido como “CMD O SIMBOLO DE SISTEMAS” ejemplo:
6.2 INTERFAZ GRÁFICA DEL USUARIO.
Es el tipo de visualización que permite al usuario elegir comandos, iniciar programas y ver listas de archivos y otras opciones utilizando las representaciones visuales (iconos) y las listas de elementos del menú. Las selecciones pueden activarse bien a través del teclado o con el mouse.
Para los autores de aplicaciones, las interfaces gráficas de usuario ofrecen un entorno que se encarga de la comunicación con el ordenador o computadora. Esto hace que el programador pueda concentrarse en la funcionalidad, ya que no está sujeto a los detalles de la visualización ni a la entrada a través del mouse o el teclado. También permite a los programadores crear programas que realicen de la misma forma las tareas más frecuentes, como guardar un archivo, porque la interfaz proporciona mecanismos estándar de control como ventanas y cuadros de diálogo. Otra ventaja es que las aplicaciones escritas para una interfaz gráfica de usuario son independientes de los dispositivos: a medida que la interfaz cambia para permitir el uso de nuevos dispositivos de entrada y salida, como un monitor de pantalla grande o un dispositivo óptico de almacenamiento, las aplicaciones pueden utilizarlos sin necesidad de cambios. Ejemplo: “INTERFAZ GRAFICA DE WINDOWS 7 Y WINDOWS 8”
• Microsoft Windows
• Mac OS X
• GNU/Linux
• Unix
• Solaris
• FreeBSD
• OpenBSD
• Google Chrome OS
• Debían
• Ubuntu
• Mandriva
• Sabayón
• Fedora
• Linpus Linux
• Haiku (BeOS)