INTRODUCCIÓN
SISTEMA OPERATIVO
Un sistema operativo es un programa o
conjunto de programas de computadora destinado a permitir una gestión
eficaz de sus recursos. Comienza a trabajar cuando se enciende el computador,
y gestiona el hardware de la máquina desde los niveles más básicos,
permitiendo también la interacción con el usuario.
Un sistema operativo se puede encontrar
normalmente en la mayoría de los aparatos electrónicos que
utilicen microprocesadores para funcionar, ya que gracias a estos podemos
entender la máquina y que ésta cumpla con sus funciones (teléfonos móviles,
reproductores de DVD, autoradios… y computadoras)
FUNCIONES BÁSICAS
Los sistemas operativos, en su condición de
capa software que posibilita y simplifica el manejo de la computadora, desempeñan
una serie de funciones básicas esenciales para la gestión del equipo. Entre las
más destacables, cada una ejercida por un componente interno (módulo en núcleos
monolíticos y servidor en microkernels), podemos reseñar las siguientes:
Proporcionar comodidad en el uso de un
computador.
Gestionar de manera eficiente los recursos del
equipo, ejecutando servicios para los procesos (programas)
Brindar una interfaz al usuario, ejecutando
instrucciones (vulgarmente comandos).
Permitir que los cambios debidos al desarrollo
del propio SO se puedan realizar sin interferir con los servicios que ya se
prestaban (evolutividad).
HISTORIA Y EVOLUCIÓN DE LOS
SISTEMAS OPERATIVOS
Todo empenzó en la década de los 40.
AÑOS 40
A finales de los años 1940, con lo que
podríamos llamar la aparición de la primera generación de computadoras, se
accedía directamente a la consola de la computadora desde la cual se actuaba
sobre una serie de micro interruptores que permitían introducir directamente el
programa en la memoria de la computadora (en realidad al existir tan pocas
computadoras todos podrían considerarse prototipos y cada constructor lo hacía
sin seguir ningún criterio predeterminado). Por aquel entonces no existían los
sistemas operativos, y los programadores debían interactuar con el hardware del
computador sin ayuda externa. Esto hacía que el tiempo de preparación para
realizar una tarea fuera considerable. Además para poder utilizar la
computadora debía hacerse por turnos. Para ello, en muchas instalaciones, se
rellenaba un formulario de reserva en el que se indicaba el tiempo que el
programador necesitaba para realizar su trabajo. En aquel entonces las
computadoras eran máquinas muy costosas lo que hacía que estuvieran muy
solicitadas y que sólo pudieran utilizarse en periodos breves de tiempo. Todo
se hacia en lenguaje de máquina.
AÑOS 50
A principios de los años 50 con el objeto de
facilitar la interacción entre persona y computador, los sistemas operativos
hacen una aparición discreta y bastante simple, con conceptos tales como el
monitor residente, el proceso por lotes y el almacenamiento temporal.
Monitor residente
Su funcionamiento era bastante simple, se
limitaba a cargar los programas a memoria, leyéndolos de una cinta o de
tarjetas perforadas, y ejecutarlos. El problema era encontrar una forma de
optimizar el tiempo entre la retirada de un trabajo y el montaje del siguiente.
Procesamiento por lotes
Como solución para optimizar el tiempo de
montaje surgió la idea de agrupar los trabajos en lotes, en una misma cinta o
conjunto de tarjetas, de forma que se ejecutaran uno a continuación de otro sin
perder apenas tiempo en la transición.
Almacenamiento temporal
Su objetivo era disminuir el tiempo de carga de
los programas, haciendo simultánea la carga del programa o la salida de datos
con la ejecución de la siguiente tarea. Para ello se utilizaban dos técnicas,
el buffering y el spooling.
AÑOS 60
En los años 1960 se produjeron cambios notorios
en varios campos de la informática,con la aparicion de el circuito cerrado la
mayoría orientados a seguir incrementando el potencial de los computadores.
Para ello se utilizaban técnicas de lo más diversas:
Multiprogramación
En un sistema multiprogramado la memoria
principal alberga a más de un programa de usuario. La CPU ejecuta instrucciones
de un programa, cuando el que se encuentra en ejecución realiza una operación
de E/S; en lugar de esperar a que termine la operación de E/S, se pasa a
ejecutar otro programa. Si éste realiza, a su vez, otra operación de E/S, se
mandan las órdenes oportunas al controlador, y pasa a ejecutarse otro. De esta
forma es posible, teniendo almacenado un conjunto adecuado de tareas en cada
momento, utilizar de manera óptima los recursos disponibles.
Tiempo compartido
En este punto tenemos un sistema que hace buen
uso de la electrónica disponible, pero adolece de falta de interactividad; para
conseguirla debe convertirse en un sistema multiusuario, en el cual existen
varios usuarios con un terminal en línea, utilizando el modo de operación de
tiempo compartido. En estos sistemas los programas de los distintos usuarios
residen en memoria. Al realizar una operación de E/S los programas ceden la CPU
a otro programa, al igual que en la multiprogramación. Pero, a diferencia de
ésta, cuando un programa lleva cierto tiempo ejecutándose el sistema operativo
lo detiene para que se ejecute otro aplicación. Con esto se consigue repartir
la CPU por igual entre los programas de los distintos usuarios, y los programas
de los usuarios no se sienten demasiado lentos por el hecho de que los recursos
sean compartidos y aparentemente se ejecutan de manera concurrente.
Tiempo real
Estos sistemas se usan en entornos donde se
deben aceptar y procesar en tiempos muy breves un gran número de sucesos, en su
mayoría externos al ordenador. Si el sistema no respeta las restricciones de
tiempo en las que las operaciones deben entregar su resultado se dice que ha
fallado. El tiempo de respuesta a su vez debe servir para resolver el problema
o hecho planteado. El procesamiento de archivos se hace de una forma continua,
pues se procesa el archivo antes de que entre el siguiente, sus primeros usos
fueron y siguen siendo en telecomunicaciones.
Multiprocesador
Permite trabajar con máquinas que poseen más de
un microprocesador. En un multiprocesador los procesadores comparten memoria y
reloj.
Sistemas operativos desarrollados
Además del Atlas Supervisor y el OS/360, los
sesenta marcaron el inicio de UNIX, a mediados de los 60 aparece Multics,
sistema operativo multiusuario – multitarea desarrollado por los laboratorios
Bell de AT&T y programado en PL/1 uno de los pocos SO desarrollados en un
lenguaje de alto nivel en aquel tiempo, luego del fracaso del proyecto UNIX
comienza a desarrollarse a partir de este a finales de la década.
AÑOS 70
Debido al avance de la electrónica, pudieron
empezar a crearse circuitos con miles de transistores en un centímetro cuadrado
de silicio, lo que llevaría, pocos años después, a producirse los primeros
sistemas integrados. Ésta década se podría definir como la de los sistemas de
propósito general y en ella se desarrollan tecnologías que se siguen utilizando
en la actualidad. Es en los años 1970 cuando se produce el boom de los
miniordenadores y la informática se acerca al nivel de usuario. En lo relativo
a lenguajes de programación, es de señalar la aparición de Pascal y C, el
último de los cuales se creó específicamente para reescribir por completo el
código del sistema operativo Unix, convirtiéndolo en uno de los pocos SO
escritos en un lenguaje de alto nivel. En el campo de la programación lógica se
dio a luz la primera implementación de Prolog, y en la revolucionaria orientación
a objetos, Smalltalk.
Inconvenientes de los sistemas
existentes
Se trataba de sistemas grandes y costosos, pues
antes no se había construido nada similar y muchos de los proyectos
desarrollados terminaron con costos muy por encima del presupuesto y mucho
después de lo que se marcaba como fecha de finalización. Además, aunque
formaban una capa entre el hardware y el usuario, éste debía conocer un
complejo lenguaje de control para realizar sus trabajos. Otro de los
inconvenientes es el gran consumo de recursos que ocasionaban, debido a los
grandes espacios de memoria principal y secundaria ocupados, así como el tiempo
de procesador consumido. Es por esto que se intentó hacer hincapié en mejorar
las técnicas ya existentes de multiprogramación y tiempo compartido.
Características de los nuevos
sistemas
Para solventar los problemas antes comentados,
se realizó un costosísimo trabajo para interponer una amplia capa de software
entre el usuario y la máquina, de forma que el primero no tuviese que conocer
ningún detalle de la circuitería.
Sistemas operativos desarrollados
* MULTICS (Multiplexed Information and Computing
Service): Originalmente era un proyecto cooperativo liderado por Fernando
Corbató del MIT, con General Electric y los laboratorios Bell, que comenzó en
los 60, pero los laboratorios Bell abandonaron en 1969 para comenzar a crear el
sistema UNIX. Se desarrolló inicialmente para el mainframe GE-645, un sistema
de 36 bits; después fue soportado por la serie de máquinas Honeywell 6180.
Fue uno de los primeros sistemas operativos de
tiempo compartido, que implementó un solo nivel de almacenamiento para el
acceso a los datos, desechando la clara distinción entre los ficheros y los
procesos en memoria, y uno de los primeros sistemas multiprocesador.
* MVS (Multiple Virtual Storage): Fue el sistema
operativo más usado en los modelos de mainframes -ordenadores grandes, potentes
y caros usados principalmente por grandes compañías para el procesamiento de
grandes cantidades de datos- System/370 y System/390 de IBM, desarrollado
también por IBM y lanzado al mercado por primera vez en 1974. Como
características destacables, permitía la ejecución de múltiples tareas, además
de que introdujo el concepto de memoria virtual y finalmente añadió la capacidad
de que cada programa tuviera su propio espacio de direccionamiento de memoria,
de ahí su nombre.
* CP/M (Control Program/Monitor): Desarrollado por Gary Kildall para el microprocesador 8080/85 de Intel y el Zilog Z80, salió al mercado en 1976, distribuyéndose en disquetes de ocho pulgadas. Fue el SO más usado en las computadoras personales de esta década. Su éxito se debió a que era portátil, permitiendo que diferentes programas interactuasen con el hardware de una manera estandarizada. Estaba compuesto de dos subsistemas:
o CCP (Comand Control Processor): Intérprete de comandos que permitía introducir los mandatos con sus parámetros separados por espacios. Además, los traducía a instrucciones de alto nivel destinadas a BDOS.
o BDOS (Basic Disk Operating System): Traductor de las instrucciones en llamadas a la BIOS.
El hecho de que, años después, IBM eligiera
para sus PCs a MS-DOS supuso su mayor fracaso, por lo que acabó desapareciendo.
AÑOS 80
Con la creación de los circuitos LSI
-integración a gran escala-, chips que contenían miles de transistores en un
centímetro cuadrado de silicio, empezó el auge de los ordenadores personales.
En éstos se dejó un poco de lado el rendimiento y se buscó más que el sistema
operativo fuera amigable, surgiendo menús, e interfaces gráficas. Esto reducía
la rapidez de las aplicaciones, pero se volvían más prácticos y simples para
los usuarios. En esta época, siguieron utilizándose lenguajes ya existentes,
como Smalltalk o C, y nacieron otros nuevos, de los cuales se podrían destacar:
C++ y Eiffel dentro del paradigma de la orientación a objetos, y Haskell y
Miranda en el campo de la programación declarativa. Un avance importante que se
estableció a mediados de la década de 1980 fue el desarrollo de redes de
computadoras personales que corrían sistemas operativos en red y sistemas
operativos distribuidos. En esta escena, dos sistemas operativos eran los
mayoritarios: MS-DOS, escrito por Microsoft para IBM PC y otras computadoras
que utilizaban la CPU Intel 8088 y sus sucesores, y UNIX, que dominaba en los
ordenadores personales que hacían uso del Motorola 68000.
Apple Macintosh
El lanzamiento oficial se produjo en enero de
1984, al precio de 2495 dólares. Muchos usuarios, al ver que estaba
completamente diseñado para funcionar a través de una GUI (Graphic User
Interface), acostumbrados a la línea de comandos, lo tacharon de juguete. A
pesar de todo, el Mac se situó a la cabeza en el mundo de la edición a nivel
gráfico.
MS-DOS
En 1981 Microsoft compró un sistema operativo
llamado QDOS que, tras realizar unas pocas modificaciones, se convirtió en la
primera versión de MS-DOS (MicroSoft Disk Operating System). A partir de aquí
se sucedieron una serie de cambios hasta llegar a la versión 7.1, a partir de
la cual MS-DOS dejó de existir como tal y se convirtió en una parte integrada
del sistema operativo Windows.
Microsoft Windows
Familia de sistemas operativos propietarios
desarrollados por la empresa de software Microsoft Corporation, fundada por
Bill Gates y Paul Allen. Todos ellos tienen en común el estar basados en una
interfaz gráfica de usuario basada en el paradigma de ventanas, de ahí su
nombre en inglés. Las versiones de Windows que han aparecido hasta el momento
se basan en dos líneas separadas de desarrollo que finalmente convergen en una
sola con la llegada de Windows XP. La primera de ellas conformaba la apariencia
de un sistema operativo, aunque realmente se ejecutaba sobre MS-DOS.
Actualmente existe Windows Vista.
AÑOS 90
GNU/Linux
En 1991 aparece la primer versión del núcleo de
Linux. Creado por Linus Torvalds y un sinfín de colaboradores a
través de Internet. Este sistema se basa en Unix, un sistema que en principio
trabajaba en modo comandos, estilo MS-DOS. Hoy en día dispone de Ventanas,
gracias a un servidor grafico y a gestores de ventanas como KDE, GNOME entre
muchos. Recientemente GNU/Linux dispone de un aplicativo que convierte las
ventanas en un entorno 3D como por ejemplo Beryl. Lo que permite utilizar linux
de una forma muy visual y atractiva
SISTEMAS OPERATIVOS MAS COMUNES
El sistema
operativo es la pieza de software más importante de la computadora. Este
sistema gestiona los recursos de hardware, determina qué programas son
compatibles con el sistema y ejecuta estos programas cuando el usuario decide utilizarlos.
El sistema operativo influye sobre los elementos que permiten el funcionamiento
de la computadora, convirtiéndolo en un factor determinante cuando se trata de
la experiencia del usuario. Un sistema operativo determinado no sólo tiene su
propia funcionalidad, sino también una apariencia y sensación únicas que crean
un entorno específico. Cada uno de los sistemas operativos importantes del
mundo tienen su propio grupo de seguidores apasionados, lo que provoca un
interminable debate sobre cuál sistema es superior y para qué. Para aprender
sobre ellos frente a este cambiante panorama competitivo es necesario
comprender ciertos principios básicos.
Ubuntu
Ubuntu está
basado en una versión del sistema operativo Linux conocido como Debian
GNU/Linux. Su principal beneficio es que es gratuito y de código abierto. Esto
significa que los usuarios pueden modificar el código si lo consideran
conveniente. Ubuntu también destaca debido a que se actualiza cada seis meses,
a diferencia de otros programas de código abierto que no tienen un calendario
de actualización estricto. La mayoría del software compatible con Ubuntu
también es gratuito y está disponible en "repositorios" en línea. Los
usuarios pueden probar Ubuntu en sus computadoras usando el modo "Live
CD" del programa. Esto te permite ejecutar el sistema sin instalarlo en tu
computadora. Debido a que los programas de Ubuntu son menos ubicuos que los de
los sistemas más conocidos, es posible que los usuarios tengan que investigar
un poco antes de encontrar las soluciones de software que necesitan.
Android
Android es un
sistema operativo "móvil" mantenido por Open Handset Alliance, un
grupo de compañias y organizaciones que contribuyen al desarrolo del sistema
bajo la dirección de Google Inc. El sistema es una "norma abierta",
lo que significa que una completa comunidad de desarrolladores pueden modificar
el software, no sólo Google. Android viene preinstalado en teléfonos
inteligentes y en computadoras tablet para las que fue diseñado. A la fecha de
esta publicación, las cuatro compañías más importantes, Verizon, T-Mobile,
Sprint y AT&T, tienen dispositivos Android disponibles. Una variedad de
fabricantes también elaboran dispositivos compatibles con Android. Uno de los
principales beneficios del estado de código abierto del sistema es que los
desarrolladores pueden crear versiones diferentes de sus programas básicos, lo
que permite que los usuarios tengan una mayor libertad para personalizar sus
dispositivos móviles.
Mac OS X
Aunque una
versión de Mac OS X viene preinstalada en todas las computadoras Apple
Macintosh, los usuarios deben pagar si desean usar nuevas versiones cuando se
encuentran disponibles. El sistema no es de código abierto, por lo que sólo los
desarrolladores de Apple tienen la capacidad para realizar modificaciones o
mejoras de forma legítima a su código. Mac OS X se diferencia de otros sistemas
operativos computacionales al funcionar sólo en computadoras Apple. Su
característica clave es su facilidad de uso. La versión más reciente hasta la fecha
de esta publicación incluye una característica de "resumen" que
vuelve a abrir aplicaciones en el mismo estado que tenían cuando las cerraste
por última vez. También incluye una característica de "Control de
misión", la cual te permite ver todos tus archivos abiertos de un vistazo.
iOS
iOS es el
sistema operativo móvil de Apple. Este sistema se ejecuta sobre los
dispositivos iPod, iPhone y iPad de la compañía. Al igual que Mac OS X, sólo
puede ser usado en dispositivos móviles de Apple. Una ventaja de iOS es que
para este sistema existen más aplicaciones disponibles que para cualquier otro
sistema operativo móvil. En el verano del 2011, habían aproximadamente 400.000
aplicaciones para iOS, mientras que para Android habían 300.000. Esto
incrementa las posibilidades de que los usuarios encuentren el tipo de
aplicación que están buscando. Las características fundamentales del sistema
incluyen soporte multitarea, que permite que los usuarios ejecuten varias
aplicaciones de forma simultánea, y FaceTime, un programa de chat de video que
viene preinstalado en dispositivos iOS.
Windows
Windows es un
sistema operativo desarrollado y operado por Microsoft. Se diferencia de los
sistemas de código abierto en que sólo Microsoft tiene la capacidad para
modificar el código. Sin embargo, también se diferencia de Mac OS X en que
puede ser instalado en diversas computadoras diferentes de una serie de
fabricantes que compiten, lo que le ofrece más libertad de elección al usuario
cuando se trata de hardware. Según Net Market Share, Windows es el sistema
operativo más utilizado. La versión más reciente a la fecha de esta publicación
incluye soporte para pantallas táctiles, lo cual combina la facilidad de uso de
una tablet con la potencia de una computadora de escritorio. También cuenta con
las características "Reproducir en" y "Transmisión multimedia
remota", las cuales de permiten reproducir archivos multimedia desde tu
computadora en otros dispositivos de su entorno y acceder a tus archivos
multimedia cuando estás lejos de tu computadora.
Comentarios
Publicar un comentario