You are on page 1of 7

Concepto de sistema operativo.

Elementos y estructura
1. Introduccin a los sistemas operativos
El sistema operativo es el software bsico del ordenador; se encarga de gestionar todos los
recursos hardware del sistema informtico y proporciona la base para la creacin y ejecucin de
software de aplicacin.
El sistema operativo (SO) es un conjunto de programas, servicios y funciones que gestionan y
coordinan el funcionamiento del HW y el SW. Gracias al SO, el HW se identifica, se reconoce y el
sistema informtico empieza a funcionar. A continuacin, gracias a los programas y aplicaciones
del SO, el usuario podr realizar determinadas funciones. Con el SW de aplicaciones funcionando
por encima del SO, el usuario completar las necesidades de utilizacin del sistema informtico.
El SO ofrece al usuario la forma de comunicarse con el ordenador, mediante interfaz de texto o
grfica. El SO es el medio que el usuario utiliza para realizar sus funciones en un sistema
informtico u ordenador.
El SO es el que realizar todo el trabajo dentro del equipo; el usuario lo utiliza, pero se
despreocupa de gestionarlo o administrarlo. Gracias a una interfaz sencilla, proporciona al usuario
una comunicacin directa, sin que este tenga que preocuparse de la gestin de memoria, del
procesador o de cualquier otro recurso o componente de HW. Los recursos HW y SW que controla
o gestiona el SO son: procesador, memoria interna, perifricos de E/Sy la informacin.
Teniendo en cuenta la gestin que hacen del SW y el HW, y la forma en que el usuario los puede
utilizar, podemos clasificar los SO en:
A. Sistemas operativos Monousuario (SOMO) o clientes
Los recursos HW y SW que se estn utilizando estn a disposicin de un solo usuario.
B. Sistemas operativos Multiusuario (SOMU)
Varios usuarios pueden utilizar potencialmente los recursos SW y HW de un mismo ordenador
(pueden usar una misma impresora, acceder a una misma base de datos, etc.)
Hay multiusuarios que trabajan de diferente forma dependiendo de HW en el que estn
instalados.
Montados en MainFrames o en microordenadores: en los primeros SSOO multiusuario solo
haba una CPU, la del ordenador principal, a la que estaban conectados teclados y monitores
a modo de terminal. En estos Sistemas Informticos la nica CPU que exista realizaba todos
los procesos. Solo exista un procesador, un solo conjunto de RAM y uno o varios discos
duros dentro del mismo equipo, etc.
Montados en ordenadores personales: actualmente denominados SO en red o SORED, en
los que un ordenador que tiene un SO monousuario con elevada funcionalidad y conexiones
de red, comparte recursos con otros equipos que estn conectados en la misma red fsica; si
varios usuarios pueden utilizar un recurso, el SO tendr que controlar de algn modo la
secuencia y prioridad de los diferentes usuarios (funciones de control de trabajos, de
prioridades, de seguridad, etc.)

-1 -

2. Evolucin histrica de los sistemas operativos


La evolucin del HW ha determinado directamente la evolucin de los sistemas operativos y la
evolucin de estos ha contribuido a la mejora del HW.
Los primeros sistemas, denominadosmonolticos, tenan como caracterstica fundamental el que su
SW bsico era prcticamente imposible de modificar una vez creado e instalado.Cuando se quera
introducir modificaciones en l, se tena que reconfigurar todo el SO. A veces era ms prctico
redisear todo el SO por completo que modificar uno ya existente.
Histricamente se ha hablado de cuatro generaciones de ordenadores:
1. Primera generacin (1945 1955). Se utilizaban vlvulas de vaco.
2. Segunda generacin (1955 1965). Utilizaban transistores, que se introducen dentro
de la arquitectura de las computadoras. Tambin aparece lo que se llama procesamiento por
lotes (ver punto 6, ms adelante)
3. Tercera generacin (1965 1980). Con circuitos integrados. El gran salto es el diseo
de HW y SW bsico que permite a un SI realizar varios procesos a la vez (SOMU)
4. Cuarta generacin (1980 actual). Aparecen los ordenadores personales, integrando y
miniaturizando los componentes electrnicos.

3. Recursos. Funciones de un sistema operativo


HW, SW y usuario se estructuran, en cuanto a la utilizacin del SI u ordenador, de forma
jerrquica; as, el SO facilita que el usuario interacte con el HW. Esta comunicacin entre niveles
se realiza mediante las llamadas interfaces (se define interfazcomo el conjunto de programas o
servicios que se ejecutan en el ordenador y que relacionan los niveles para que el usuario final
pueda acceder al HW y ejecutar sus programas).
Para realizar este tipo de funciones, el SO cuenta con los llamados servicios1 (tipo de aplicacin
que se ejecuta normalmente en segundo plano, proporcionando al usuario aplicaciones que
incorporan diversas formas de poder utilizar los recursos del SO, como aplicaciones de tipo
cliente-servidor, servidores Web, servidores de bases de datos, etc.), esenciales para el
funcionamiento de muchas de las aplicaciones y del propio SO. En general, los servicios se utilizan
para inicial, detener, pausar, reanudar o deshabilitar programas y aplicaciones (que a su vez
pueden ser servicios) en equipos locales o remotos.

4. Gestin de recursos de un sistema operativo


4.1. Memoria
La parte del SO que administra la memoria es el administrador de memoria, cuya funcin es
llevar en un registro las partes de memoria que se estn utilizando y las que no, reservando
espacio de memoria para los nuevos procesos y liberando el espacio de los procesos
finalizados.Tambin gestiona el intercambio de datos entre memoria y disco cuando los procesos
son tan grandes que no caben en memoria de una sola vez.
Podemos clasificar los sistemas de administracin de memoria en dos grupos, los que desplazan
los procesos de memoria central al disco y viceversa, y aquellos que no realizan desplazamiento
1

Denominados tambin procesos en segundo plano, procesos en background o demonios (en Linux)
-2 -

Esta gestin de memoria es muy importante enmultitarea porque en ella se hace necesario
disponer de varios procesos residentes simultneamente en memoria.
Una posibilidad es dividir la memoria en particiones fijas(o particiones variables, para
solucionar el problema de la fragmentacin). El SO dispone de una cola de procesos que
solicitan entrar en memoria, siendo el planificador el que tiene en cuenta los requerimientos
de memoria de cada proceso y las particiones disponibles. Tambin es posible que cada
particin tenga asociada una cola de tareas.
Otra opcin es la de intercambio. Los procesos en espera pueden ser llevados al disco duro
y dejar libre la parte de memoria para que otros procesos entren en ejecucin. Para que los
procesos no se carguen siempre en la misma posicin de memoria o en otra, se utilizar
la reubicacin, que puede ser esttica o dinmica.

4.2. Procesos y procesador


Un proceso es un programa en ejecucin cuyas caractersticas son las siguientes:

Para empezar a ejecutarseha de residir completamente en memoria (tanto las instrucciones


que lo componen como los datos a los que afecta la ejecucin del mismo)y tener asignados
todos los recursos que necesite.
Cada proceso est protegido del resto de procesos (ningn otro podr escribir en zonas de
memoria pertenecientes a este)
Pueden pertenecer al usuario (se ejecutan en modo usuariodel procesador, con
restricciones de acceso a recursos HW) o ser propios del SO (se ejecutan en modo
kernel o modo privilegiado del procesador, pudiendo acceder a cualquier recurso)
Cada proceso tendr una estructura de datos(bloque de control de procesos) donde se
almacenar informacin sobre el mismo.
Los procesos pueden comunicarse, sincronizarse y colaborar entre s.

Los procesos se dividen en trozos de igual tamao (pginas, frames, etc.). Al cargarse un proceso,
se lleva a la memoria asignndole un n mximo de bloques (este espacio es igual al mximo que
el SO es capaz de gestionar, por ejemplo, en un SO de 32 bits se llegar a 64 GB), empleando
para ello tcnicas de gestin como la memoria virtual, swapping, paginacin, segmentacin, etc.
La memoria virtual es una tcnica que permite al SW usar ms memoria principal que la que
posee el ordenador en realidad. Cuando se ejecuta un proceso, si la CPU necesita atender a una
parte del mismo que no est cargada en memoria interna, la buscar en la memoria virtual y la
traer a la real, descargando otras que no se estn utilizando a la memoria virtual.
Los SO disponen de los servicios necesarios para la gestin de los procesos.El reparto de los
recursos del SO entre los distintos procesos y su ejecucin concurrente se conoce como
multiprogramacin.Un programa no es un proceso, sino que se convierte en tal en el momento
en que se pone en ejecucin.
4.3. Gestin de entrada/salida
Una de las tareas ms importantes de un SI, en particular de la CPU, es relacionar y comunicar los
perifricos de E/S con los componentes internos del equipo (memoria, procesador, buses,); esta
comunicacin se realiza por medio del chipset situado en la placa base.
Las interfaces son el medio de comunicacin entre HW y SW a travs del SO. Las interfaces se
pueden clasificar en:
-3 -

Tipo texto. Todas las rdenes que introduzca y las respuestas que el SO d se visualizarn
mediante cadenas de caracteres.
Tipo grfico. Se enva o recibe informacin sin necesidad de teclear nada, pero es
necesario el uso de ratn o pantallas tctiles. La informacin en pantalla se muestra en
bloques o en pantallas independientes, denominados ventanas.

Hoy en da casi todos los SO emplean ambas; la mayora de rdenes dadas al SO se pueden dar
en entorno grfico o mediante comandos en una interfaz de tipo texto.

5. Arquitectura y componentes
En la actualidad, los sistemas operativos se organizan como una jerarqua de niveles o capas,
cada uno construido sobre capas inferiores, comunicndose con los niveles inmediatamente
inferior o superior de manera que todos estn coordinados y cumplan el objetivo del SO. La capa
inferior (capa 0) es el HW y la ms alta (capa N) es la interfaz con el usuario:

Nivel ncleo: es el que se encarga de controlar todo lo que ocurre en el ordenador. Gestiona

los procesos que llegan para ser ejecutados. Son, fundamentalmente, S.0 multiusuarios. Este
nivel se encarga de realizar tareas bsicas del sistema, comunicacin con el hardware,
planificacin de procesos, etc.
Nivel ejecutivo: sobre este nivel se realiza la administracin y gestin de la memoria. Se
encarga de almacenar los procesos en pginas, tanto en memoria principal como en disco.
Ya veremos que esta gestin es la llamada gestin de memoria virtual.
Nivel supervisor: se encarga de realizar la comunicacin de cada proceso entre el sistema y
el usuario. Controla y coordina la gestin de entradas y salidas de los diferentes procesos
hacia los perifricos.
Nivel usuario: es el que controla los procesos que est utilizando el usuario, sin preocuparse
de la gestin de memoria, de la gestin de entrada y salida ni de nada en especial.
Simplemente, muestra al usuario el proceso que ste quiere ejecutar.
Los mordernos SO pueden trabajar en varias arquitecturas o plataformas gracias a la abstraccin
que de HW real se realiza, permitiendo ejecutar aplicaciones en zonas independientes de
memoria y ejecutar el HW como una copia del HW real para cada aplicacin, lo que le confiere
gran estabilidad. Esta emulacin del HW se materializa en las mquinas virtuales (archivo o
conjunto de archivos cada uno de los cuales es una copia exacta del HW real que gestiona el
propio SO, incluyendo todos los niveles, ncleo, ejecutivo, supervisor y usuario, como si fueran
independientes para cada usuario que est utilizando el sistema). Y una vez terminada de ejecutar
la aplicacin, es cuando se produce la interaccin real con el HW.

6. Modos de explotacin del sistema


Las formas de explotacin de un SO responden a la forma en la que el usuario utiliza los recursos
hardware y software que componen el sistema informtico. Explotar un SO significa utilizarlo.
Si trabajamos con un multitarea o SOMU puede que se estn ejecutando varios programas a la
vez; el procesador no es capaz de ejecutar dos instrucciones en el mismo intervalo de tiempo, de
modo que ir destinando ciclos de CPU secuencialmente a cada proceso. As, no todos los
programas que se han lanzado estn en la misma fase; habr uno en proceso, otros en espera y
puede que alguno est en espera debido a alguna necesidad de HW o SW.

-4 -

Para realizar la clasificacin de los diferentes modos de explotacin, se tendrn en cuenta el


nmero de usuarios que pueden utiizar el sistema, asi como los procesos que dicho sistema pueda
realizar simultneamente, uno o varios. Tambien depender del nmero de procesadores con los
que cuente el ordenador y, finalmente, del tiempo de respuesta del sistema.
Para poder hablar de cmo se explota un SO habr que tener en cuenta las necesidades de los
usuarios que los van a explotar y, por supuesto, el HW sobre el que est montado el SO.
De forma general, un SO se puede explotar de dos formas:
1. Proceso en lotes
Este sistema de explotacin se empez a usar en la segunda generacin de ordenadores. Tambin
aparece lo que se llama procesamiento por lotes, que implica tres fases:
Introduccin de datos a procesar en un componente HW.
Llevar fsicamente el soporte, cargado con los datos, a la computadora para que los
procesara.
El soporte, en el que estn los resultados, se lleva a otro dispositivo fsico distinto a la
computadora para finalmente realizar la generacin de resultados.

2. Procesos en tiempo real


Es similar a la anterior, pero en estos el usuario que introduce los datos es el que suele lanzar el
programa para ejecutar los datos introducidos, y el que obtiene la informacin procesada.
Actualmente la mayora de los ordenadores funciona en tiempo real. De esta forma, la carga de la
informacin se hace en el mismo equipo que se procesa. Adems, la informacin procesada se
visualizar o imprimir dentro del mismo sistema informtico.
Visto esto, los SO se pueden clasificar teniendo en cuenta los siguientes parmetros:
1. Segn nmero de usuarios
Monousuario. Cuando solo un usuario trabaja con un ordenador. En este sistema todos los
dispositivos de HW estn a disposicin de ese usuario y no pueden ser utilizados por nadie
ms hasta que ste no finalice su sesin. Ejemplos de este tipo de SO son DOS, Windows
3.X, Windows 9X, Windows ME, Windows XP, Windows Vista, Windows 7.
Multiusuario. Varios usuarios pueden utilizar simultneamente los recursos del sistema.
Pueden compartir los dispositivos externos de almacenamiento, perifricos de salida, acceso
a una misma base de datos, etc Pueden utilizar el ordenador principal tanto terminales
(teclado y monitor) como ordenadores cliente conectados al ordenador servidor.
Este tipo de sistemas se caracteriza porque varios usuarios podrn hacer las mismas cosas,
tendrn acceso o no a los mismos programas, podrn acceder a los soportes de
almacenamiento externo, etc. pudiendo estar un mismo ordenador configurado de forma
diferente para cada usuario que lo utilice. Ejemplos son Unix, Windows Server, VMS, OS/400.

2. Segn el nmero de procesos


Esta clasificacin se hace atendiendo al nmero de programas que puede ejecutar
simultneamente un ordenador. Para realizar esta clasificacin, se parte de la base de que un SI
con un solo procesador nicamente puede atender una tarea a la vez:
-5 -

Monoprogramacin o Monotarea. El sistema solamente puede ejecutar un programa o


proceso a la vez, obligando a que los recursos del sistema estn dedicados al programa
hasta que finalice su ejecucin. Que un SO sea monotarea no implica que no pueda ser
multiusuario (varios usuarios podran ejecutar sus programas en el mismo ordenador, pero
de forma sucesiva). Ejemplos de este tipo de SO son DOS y Windows 9X.
Multiprogramacin o Multitarea. Este tipo de SO puede ejecutar varios programas o
procesos simultneamente. Esta circunstancia solo se da en aquellos casos en los que el SI
cuente con ms de un microprocesador; si tiene un microprocesador, aunque sea multitarea,
solo podr realizar una tarea a la vez debiendo compartir el tiempo de uso del procesador
entre los diferentes programas a ejecutar. Ejemplos de este tipo de SO son Windows NT,
Windows 2000, Windows XP, Windows Vista, Windows 7, Unix, Windows Server y Novell.

3. Segn el nmero de procesadores del sistema informtico


Esta clasificacin depende del nmero de procesadores que el SO sea capaz de gestionar:
Monoprocesador. El ordenador consta de un nico procesador. Todos los trabajos a
realizar pasaran por l. El ordenador puede ser mono o multiusuario, pero siempre ser
monotarea, aunque se le confiera la categora de multitarea por la posibilidad de poder
ejecutar varios. Ejemplos de este tipo de SO son DOS, Windows 3X y Windows 9X.
Multiprocesador. El ordenador cuenta con dos o ms procesadores. As, determinados SO
pueden aprovechar las ventajas de este tipo de HW. Ejemplos de este tipo de SO son
Windows NT, Windows 2000, Windows XP, Windows Vista, Windows 7, Unix, Windows
Server y Novell. Hay dos formas de utilizar los diferentes procesadores por parte del SO:
o SMP o multiprocesador simtrico. El SO utilizar la potencia de los procesadores de
igual forma, utilizando simultneamente los dos o ms procesadores con los que cuente.
o AMP o multiproceso asimtrico. El SO reparte las tareas que se est realizando a cada
procesador con los que cuenta el SI. Determinados procesos siempre los realizar un
solo procesador y, en el caso de ser dos procesadores, el segundo solamente se utilizar
para realizar procesos o programas de usuario.

Con estas dos tcnicas lo que se consigue es que el tiempo de respuesta de la ejecucin de
varios programas en un mismo ordenador sea similar para todos ellos.
4. Segn el tiempo de respuesta
Esta clasificacin se hace atendiendo al tiempo que tarda el usuario del sistema en obtener los
resultados despus de lanzar un programa a ejecucin:

Tiempo real. La respuesta es casi inmediata tras lanzar un proceso.


Tiempo compartido. Cada proceso utilizar ciclos de la CPU hasta que finalice.

-6 -

7. Sistemas operativos ms usuales

Actualmente, la mayora de los SO, a partir de los 32 bits, son abiertos y segmentados, lo que
les hace fciles de modificar, pues los programas que lo componen estn divididos en bloques.
Tambin se articulan en una estructura determinada por niveles o capas, de modo que cada
nivel o parte del SO se encarga de una funcin, modificndose, si fuera necesario, solo la parte
afectada del programa y no a todo el SO. Estos SO realizan funciones tales como control y
ejecucin de programas, gestin y control de usuarios, de perifricos, de memoria, etc.
La ltima generacin de sistemas operativos, a partir de los 32 bits, son aquellos que se
denominan sistemas operativos de maquina virtual, y disponen de un ncleo que les permite
emular el hardware.
En la actualidad, ya existen SO de 64 bits que permiten que se pueda manejar mas memoria RAM
que los 4 GB a usar por los de 32 bits. Los procesos se ejecutan en estos SO tambin se ejecutan
en zonas independientes de memoria, lo que les da mucha estabilidad.

Puedes visualizar un video en el cual se muestra la evolucin de los sistemas operativos, desde los
primeros en aparecer hasta los que se conocen actualmente, en:
http://youtu.be/OFfDUZhqzMQ

-7 -

You might also like