Вы находитесь на странице: 1из 21

1.

Clasificacin de los sistemas operativos


Existen numerosas clasificaciones de los sistemas operativos, atendiendo a distintas
caractersticas:

1.1. N de usuarios:
- Monousuario: solo 1 usuario puede usar los recursos del sistema simultneamente
- Multiusuario: varios usuarios pueden usar los recursos del sistema simultneamente.
Por tanto, aunque haya ms de un usuario dado de alta en el sistema, si no pueden
trabajar de forma simultnea, el SO no es multiusuario.

1.2. N de procesos o tareas:


- Monotarea: solo puede ejecutar 1 tarea a la vez
- Multitarea o multiprogramacin: puede ejecutar varios programas a la vez

1.3. N de procesadores :
- Monoprocesador: el SO es capaz de gestionar solo 1 procesador, de manera que si
tuviese ms sera intil. En estos SO los procesos irn alternando su ocupacin en la
CPU.
- Multiprocesador: el SO es capaz de gestionar varios procesadores, de modo que puede
usarlos simultneamente para distribuir su carga de trabajo. Estos sistema trabajan de
dos formas:
Asimtrica: el SO reparte las tareas, que est realizando, entre los
procesadores. Determinados procesos los ejecutar siempre un
procesador, y el otro procesador slo se utilizar para realizar procesos
de usuario. En este caso, es posible que un proceso est siempre
trabajando y el otro, en ocasiones, sin actividad.
Simtrica: los procesos son enviados indistintamente a cualquiera de
los procesadores disponibles.

1.4. Tiempo de respuesta


tiempo que tarda el usuario en obtener los resultados despus de iniciar la ejecucin de un
programa):
- Procesamiento por lotes: el tiempo de respuesta no es importante y suele ser alto. Los
procesos se ejecutan secuencialmente uno tras otro. No existe interaccin con el
usuario. Ejemplo: copias de seguridad
- Tiempo compartido: el procesador divide su tiempo entre todos los procesos (usando
algoritmos de planificacin como Roud Robin). Ejemplo: sistemas multiusuarios
interactivos (los usuarios interactan con el sistema)
- Tiempo real: en estos SO, los procesos requieren un tiempo de respuesta muy bajo o
inmediato. Ejemplos donde esto es especialmente importante: sistemas donde el tiempo
de respuesta es crucial como sistemas mdicos de monitorizacin de pacientes,
sistemas bancarios, trfico areo

N de N de N Tiempo de
Sistema Operativo
usuarios procesos procesadores respuesta
MS-DOS Mono Mono Mono Real
Windows 9x, Me Mono Pseudo Mono Compartido
multitarea
Windows NT Workstation, Mono Multi Multi Compartido
2000 Professional,
XP/Vista/7/8/10
UNIX, Linux, Multi Multi Multi Compartido
Windows NT Server,
Windows 2000 Server,
2003 Server y 2008 Server
Nota: Los SO pseudo multitarea son SO capaces de cargar en memoria ms de un
proceso y aparentemente ejecutar ms de uno al mismo tiempo. Sin embargo, estos SO no
son capaces de utilizar ms de 1 procesador por lo que, en realidad, solo se ejecuta un
proceso en cada momento (el procesador ejecuta secuencialmente cada uno de los
procesos iniciados).

1.5. Por la funcionalidad que ofrecen


- Sistemas operativos monopuesto: Los sistemas operativos monopuesto son aquellos
que se instalan para un uso personal o particular en estaciones de trabajo. Algunas de
las versiones monopuesto de Windows ms conocidas son 2000, XP, 7, 8, 10, etc...La
versin monopuesto ms actual de Ubuntu (Ubuntu Desktop) es la 16.04.
Los equipos con estos sistemas operativos pueden organizarse en redes entre iguales
denominadas grupos de trabajo donde todos los equipos estn al mismo nivel y no
existen servidores que utilicen sistemas operativos en red. Los usuarios que inician
sesin en estos equipos se denominan USUARIOS LOCALES y estn dados de alta en
el equipo que utiliza el usuario
- Sistemas operativos multipuesto o en red: se instalan normalmente en
organizaciones, para proveer de servicios a los usuarios de las mismas. Los sistemas
operativos multipuesto soportan mltiples usuarios trabajando al mismo tiempo sobre el
mismo equipo (CPU, disco y memoria), pero cada uno con su propio monitor, teclado,
ratn y, opcionalmente, con su propia tarjeta de sonido. Con la configuracin multipuesto,
varios usuarios pueden compartir los recursos de la misma CPU, usando de este modo
un mayor porcentaje de su capacidad total y teniendo as un mejor aprovechamiento del
sistema.

2. Funciones del SO
El fin fundamental de un S.O. es coordinar la utilizacin que se hace del hardware dependiendo
de los programas o aplicaciones que se estn utilizando. Los programas que se utilizan los
decide, en la mayora de los casos, el usuario, pero en otras muchas ocasiones son programas
propios del SO los que tienen que estar funcionando para poder hacer que los programas de
usuario cumplan su objetivo.
En general, hardware, software y usuario se estructuran, en cuanto a la utilizacin de un
ordenador o sistema informtico, de forma jerrquica. Este tipo de estructura es la que permite
que el usuario interacte con el hardware, funcin esencial, por no decir nica, de cualquier
Sistema Operativo.
A continuacin se muestran las funciones principales que realiza todo sistema operativo:
- Gestin de procesos: control de la ejecucin de los programas. Para ello, acepta los
trabajos, administra la manera en que se realizan, les asigna los recursos y los conserva
hasta su finalizacin.
- Gestin de entrada / salida: administracin de perifricos, coordinando y manipulando los
dispositivos conectados al ordenador.
- Gestin de permisos de usuarios: adjudica los permisos de acceso a los usuarios y evita
que las acciones de uno afecten el trabajo que est realizando otro.
- Control de concurrencia. Establece prioridades cuando diferentes procesos solicitan el
mismo recurso.
- Gestin de ficheros: administra la informacin almacenada en los dispositivos de
almacenamiento en forma de ficheros.
- Control de errores. Gestiona los errores de hardware y la prdida de datos.
- Administracin de memoria. Asigna memoria a los procesos y gestiona su uso.
- Control de seguridad. Debe proporcionar seguridad tanto para los usuarios como para el
software y la informacin almacenada en los sistemas.

1.6. Gestin de procesos


En lo que respecta a la gestin de procesos, el SO debe ser capaz de soportar:
- La creacin, suspensin, reanudacin, eliminacin y planificacin de procesos
- La comunicacin y sincronizacin entre procesos.

Un proceso es un programa en ejecucin que necesita estar cargado en memoria y


disponer de recursos (CPU, memoria, archivos, dispositivos de E/S) para cumplir su objetivo.
Se trata de una entidad activa. Mientras que los programas son un conjunto de archivos que
estn almacenados en algn dispositivo de almacenamiento (disco duro, pendrive) y cuyo
cdigo fuente est escrito en algn lenguaje de programacin. Cuando este conjunto de
archivos se ejecutan, entonces pasan a ser un proceso.
Los procesos en un SO tienen las siguientes caractersticas:
- Un proceso, para empezar su ejecucin ha de residir completamente en memoria y tener
asignados todos los recursos que necesite.
- Cada proceso est protegido del resto de procesos: ningn otro podr escribir en las
zonas de memoria pertenecientes a este proceso.
- Los procesos pueden pertenecer al usuario o ser propios del Sistema Operativo. Estos
procesos pertenecientes a los usuarios se ejecutan en el llamado modo usuario del
procesador (con restricciones de acceso a los recursos hardware). Los procesos que
pertenecen al sistema se ejecutan en el modo kernel o modo privilegiado del procesador
(podrn acceder a cualquier recurso).
- Los procesos podrn comunicarse, sincronizarse y colaborar entre s. Debe quedar claro
que cualquier programa que se est ejecutando en un ordenador es un proceso, ya que
desde ese momento el programa, denominado ya proceso, se puede ejecutar, se puede
detener o se puede bloquear, entre otras muchas cosas.

Procesos activos en una sesin iniciada con Windows 7 [CTRL + SHIFT + ESC].
Durante la ejecucin de un proceso, este compite con el resto de los procesos que se estn
ejecutando de forma concurrente en el sistema, por el uso de los recursos hardware y a veces
por los recursos software. El reparto de los recursos del sistema entre los distintos procesos y
su ejecucin concurrente se conoce como multiprogramacin.
Durante su existencia, los procesos pasan por distintos estados cuyas transiciones estn
controladas por el sistema operativo.
Cuantas ms instrucciones sea capaz de ejecutar un procesador, mayor velocidad
obtendremos en el sistema, debido, especialmente, a que los procesos estarn esperando
menos tiempo a que la CPU o el procesador les asigne los recursos que necesitan.
A los procesos, dependiendo especialmente del sistema operativo utilizado, se les denomina
flujos de control, tareas, threads o hilos, dependiendo del contexto.

2.1.1. Threads o hilos


Un hilo es un punto de ejecucin de un proceso. Un proceso tendr siempre un hilo, en la que
corre el propio programa, pero durante su ejecucin puede generar ms hilos.
Los hilos representan un mtodo software para mejorar el rendimiento y eficacia de los
sistemas operativos. Los hilos de un mismo proceso compartirn recursos como memoria,
archivos, recursos hardware, etc.
Un proceso clsico ser aquel que solo posea un hilo. Por ejemplo, si se ejecuta el procesador
de textos Word, con un solo documento abierto, el programa Word convertido en proceso
estar ejecutndose en un nico espacio de memoria, tendr acceso a determinados archivos
(galera de imgenes, corrector ortogrfico, etc.), tendr acceso al hardware (impresora, disco),
etc. En definitiva, este proceso, de momento, solamente tiene un hilo.
Si en esta situacin, sin cerrar Word, abrimos un nuevo documento, Word no se vuelve a
cargar como proceso, sino que genera un hilo nuevo de modo que el proceso consta de dos
hilos. Word se est ejecutando una sola vez y el resto de documentos de texto que se abran en
esa misma sesin de trabajo no sern procesos propiamente dichos, sino que sern hilos que
compartirn memoria, recursos, etc. Al no tener que cargar de nuevo toda la informacin del
proceso en memoria, la apertura de estos nuevos documentos es mucho ms rpida.

2.1.2. Procesos y servicios


Los procesos que se ejecutan en un ordenador pueden estar en primer o segundo plano. Los
de primer plano interactan con los usuarios, mientras que los de segundo plano realizan
una funcin especfica sin que interacte el usuario. Adems, los procesos pueden pertenecer
al usuario o ser propios del SO.
De este modo, el sistema operativo puede crear procesos, algunos de los cuales residen en
segundo plano y se llaman servicios en Windows y demonios en Linux. El administrador
del sistema puede iniciar, detener, pausar, reanudar estos servicios. Los procesos que
pertenecen al sistema se ejecutan en el modo kernel o modo privilegiado (podrn acceder a
cualquier recurso).
Otros procesos son los que crea el usuario, donde ste interacta con ellos, es decir, se
ejecutan en primer plano, como, por ejemplo, el Firefox. Estos procesos se ejecutan en el
llamado modo usuario (con restricciones de acceso a los recursos hardware).

2.1.3. Estados de un Proceso


El estado de un proceso se define por su actividad actual, que cambia a medida que se ejecuta.
La ejecucin de un proceso alterna una serie de rfagas de CPU y E/S.

Un proceso, desde el punto de vista de su ejecucin, puede estar en uno de los siguientes
estados:
- Estado LISTO, PREPARADO o EJECUTABLE. Cuando se encuentre en memoria
principal, sin operaciones de E/S pendientes, y listo o preparado para entrar (o continuar)
en ejecucin, en el instante que el SO le asigne CPU. Es decir, el proceso se encuentra
preparado para ser ejecutado. Est esperando turno para poder utilizar su intervalo de
tiempo y poner en funcionamiento sus instrucciones accediendo a los recursos del
sistema.
- Estado de EJECUCIN o ACTIVO. Corresponde al proceso que en ese momento est
siendo atendido por la CPU. Un proceso activo sale del estado de ejecucin, en un
sistema de tiempo compartido, cuando:
1. Se le acaba su tiempo de ejecucin, pasando entonces al estado de LISTO.
2. Se inicia una operacin de Entrada/Salida en cuyo caso pasa a la situacin de
BLOQUEADO. Del estado de bloqueado pasa al de LISTO cuando acaba la operacin
de E/S.
- Estado de BLOQUEADO o Retenido en Cola. Son los que se encuentran en estado de
espera de ejecucin en un archivo cola de espera. El proceso est retenido, es decir,
est bloqueado debido a causas mltiples. Una de estas causas puede ser que dos
procesos utilicen el mismo fichero de datos. Otra puede ser que dos procesos necesiten
utilizar la misma unidad de CD-ROM para cargar determinados datos, etc.
Cada proceso tiene un identificador que lo discrimina de los dems. Cada proceso tiene un
nmero asignado por el sistema operativo que sirve precisamente para identificar el proceso,
lanzarlo a ejecucin, detenerlo, cancelarlo, reanudarlo, etc. Este identificador de proceso se
nombra con la abreviatura PID (Process IDentification).
Por otro lado, en cada sistema operativo, los procesos los lanzan normalmente otros procesos.
Es decir, que cada proceso que se lanza a ejecucin depende, en la mayora de los casos, de
otro proceso denominado proceso padre. As, al nuevo proceso lanzado se le denomina
proceso hijo.
Una vez que un programa se ha lanzado y se ha convertido en proceso, puede atravesar varias
fases o estados hasta que finaliza o termina. Cuando un proceso se lanza, nunca se ejecuta
directamente, sino que se coloca en la cola de procesos en un estado denominado preparado.
Cuando la CPU le asigna su tiempo, el proceso pasa de preparado a ejecucin. Estos dos
estados se alternarn en caso de que se est ejecutando ms de un proceso en el sistema.
Los cambios de estado en los que se puede encontrar un proceso se denominan transiciones.

Los diferentes estados tienen una relacin directa con lo que se denomina prioridades, que son
aquellas que el administrador del sistema, o el propio sistema, asignan a cada proceso. De ello
depender que un proceso se ejecute en ms o menos tiempo.
El S.O guarda en la tabla de procesos por cada proceso una estructura de datos llamada
Bloque de Control de Proceso (PCB) que almacena la siguiente informacin:
- Identificacin de proceso (del proceso en s (PID), del proceso padre(PPID) y de
usuario)
- Informacin de estado del proceso: preparado, en ejecucin, bloqueado
- Prioridad del proceso
- Direccin de memoria donde se ha cargado el proceso
- Otros (recursos utilizados, valores de los registros del procesador, propietario,
permisos)

Para dar sensacin de ejecucin simultnea o multiprogramacin, el tiempo de CPU debe


repartirse entre los procesos. Esto implica cambios de contexto que consisten en quitarle la
CPU al proceso en ejecucin y asignrsela a otro en estado preparado. Esta operacin la
realiza un componente del S.O. llamado dispatcher o planificador a corto plazo y en ella se
guarda el contexto del proceso en ejecucin en su PCB y se restaura el contexto del nuevo
proceso a ejecutar mediante su PCB.

Los cambios de contexto pueden suponer una sobrecarga si se utilizan con mucha frecuencia.
En general, suelen producirse cuando un proceso finaliza, es expulsado o se suspende.
Polticas principales para la planificacin:
- Planificacin no apropiativa: (algoritmos no expulsivos)
Los procesos se ejecutan hasta que terminan o se bloquean.
Sencillo de implementar.
Rendimiento pobre en general.
- Planificacin apropiativa: (algoritmos expulsivos)
Los procesos pueden ser expulsados de la CPU.
Mayor coste de implementacin. Necesitan soporte hardware adicional (relojes)
Mejora el servicio y evita monopolizacin de la CPU.

2.1.4. Algoritmos de planificacin


Eligen el siguiente proceso para entrar en la CPU. Los principales algoritmos de planificacin
son:
- FCFS (First Come First Served): cola del supermercado. La CPU es asignada a los
procesos en el mismo orden que lo solicitan. Es un algoritmo no expulsivo.
Ventajas:
o Sencillo de implementar (cola FIFO).
Inconvenientes:
o Mal tiempo medio de espera.
o Efecto convoy (procesos con largas rfagas de CPU retrasan a
procesos con rfagas cortas).
o No vlido para procesos interactivos.

- SJF (Shortest Job First): primero el que menos tiempo total de CPU requiere. Se
escoge el proceso de la cola de preparados con una prxima racha de CPU ms corta y
se ejecuta hasta que se termine o se suspenda. Si hay varios procesos con rachas de
CPU iguales, se puede aplicar FIFO. Algoritmo no expulsivo.
Ventajas:
o Optimiza el tiempo de espera
o Favorece los procesos orientados a E/S
Desventajas:
o Es costoso averiguar cunto dura la siguiente racha de CPU
o Inanicin de los procesos con rachas de CPU largas.

- SRTF (Shortest Remainig Time First): primero al que menos tiempo de CPU le queda
para acabar. Versin apropiativa de SJF (como el SJF, solo que se puede echar a los
procesos)
- Planificacin por prioridades:primero el que tiene ms prioridad. Cada proceso tiene
asignada una prioridad. El planificador selecciona el proceso con prioridad ms alta (a
igual prioridad se selecciona con FCFS). Las prioridades pueden ser dinmicas (cambian
con el tiempo) o estticas (se mantienen).
Inconvenientes:
o Riesgo de inanicin de procesos con prioridad baja. Una
solucin sera aumentar la prioridad con el incremento del
tiempo de espera.

Prioridades sin expulsin:

Prioridades con expulsin:

- Planificacin circular (Round Robin): se asigna a todos el mismo tiempo, por turnos. A
cada proceso se le asigna una cantidad de tiempo de CPU llamada quantum. Si el
proceso tiene un intervalo de CPU mayor que el quantum es expulsado de la CPU. La
cola de preparados se gestiona con una poltica FIFO.
Si el valor de quantum es grande el algoritmo degenera en FCFS. Si es pequeo se
generar una sobrecarga debido a cambios de contexto. Es equitativo
Ej. (Quantum = 2):

Algoritmo Prioridad Apropiativo


FCFS Orden de llegada NO
SJF El ms corto primero NO
SRTF Al que le falte menos por ejecutar primero SI
Prioridades Prioridad explcita SI / NO
Round Robin Orden de llegada con lmite de tiempo de ejecucin SI

2.1.5. Procesos en Windows y en Linux


Podemos ver los procesos, as como su consumo de CPU y RAM:
- En Windows:
Administrador de tareas: apretando alt+ctrol+supr
Monitor de recursos: ejecutarresmon; viene por defecto en Win7
Explorador de procesos: (http://download.sysinternals.com/files/ProcessExplorer.zip)
- En Linux:
Monitor del sistema (sistemaadministracinmonitor del sistema)
Comando ps

1.7. Gestin de la memoria


El sistema gestor de memoria del SO debe encargarse de resolver varias problemticas:

1.7.1. Reubicacin
Un proceso debe poder ejecutarse en diferentes ubicaciones de la memoria fsica, lo que
implica que las referencias a memoria que existen en el cdigo del programa tienen que ser
concretadas en posiciones de memoria fsica.
Adems, si un proceso enva informacin de memoria principal a memoria secundaria, cuando
vuelva a cargarse en memoria principal, debe poder hacerlo en otro lugar de la memoria
diferente al que estaba inicialmente.
Las tareas de gestin de la memoria son muy complejas, por lo que estas tareas se llevan a
cabo combinando una parte software (el gestor de memoria del SO) con una parte hardware: la
MMU (Unidad de Manejo de Memoria). La MMU es un componente hardware (normalmente
integrado en la CPU), responsable de manejar las peticiones de acceso a memoria que solicita
la CPU.
Concretamente, la MMU es la responsable de transformar las direcciones lgicas o virtuales
que emite la CPU a direcciones fsicas que recibe la memoria y proteger la memoria, entre
otras funciones.

Por tanto, al igual que un computador dispone de una memoria fsica, podemos considerar que
cada proceso tiene su memoria lgica o virtual.

1.7.2. Proteccin de la memoria


En los sistemas operativos multiproceso, habr numerosos procesos que se estn ejecutando
concurrentemente y estn haciendo uso simultneo de la memoria. El SO debe asegurar que
estos procesos no se pisen entre ellos, disponiendo de un espacio de direcciones fsicas para
cada uno de ellos, de forma que cada proceso solamente podr acceder a su espacio (salvo
que el sistema permita compartir zonas de memoria). Especialmente importante es asegurar
que ningn proceso acceda a zonas de memoria del SO.
La solucin ms habitual implementada por los sistemas operativos consiste en reservar las
primeras posiciones de memoria para el propio sistema operativo y dividir el resto de la
memoria entre los procesos en ejecucin.

1.7.3. Asignacin de la memoria


La memoria fsica puede ser asignada a los diversos procesos en ejecucin siguiendo diversas
tcnicas:
- Asignacin contigua: el espacio de direcciones lgicas de un proceso se mapea sobre
una nica zona de la memoria fsica, de modo que las direcciones de memoria son
contiguas. Existen dos mtodos:
Particiones fijas: la memoria se divide en particiones fijas,
normalmente de distintos tamaos. Hay varias estrategias para ubicar
los procesos en memoria: ubicarlos en la particin que mejor se ajuste
al tamao del proceso, en la primera particin libre que se encuentre,
en la que peor ajuste, . Su principal desventaja es la fragmentacin
interna (se desperdicia mucho espacio interno de cada bloque)
Particiones dinmicas: la memoria se divide en particiones en
nmero y longitud variable, de modo que cuando se carga un proceso
a memorial se le asigna el espacio que necesita y no ms. Este
particionado comienza siendo muy bueno, pero con el trascurso del
tempo deja un gran nmero de huecos pequeos en la memoria que
quedan desaprovechados, lo que se denomina fragmentacin externa

- Asignacin dispersa: la memoria lgica se divide en fragmentos (pginas o


segmentos), que se mapean sobre zonas no contiguas de la memoria fsica. Existen dos
tcnicas de asignacin dispersa:
Paginacin: la memoria se divide en secciones fsicas de igual tamao,
denominadas marcos de pgina, y los datos y programas se dividen en secciones
lgicas, denominadas pginas. Cuando se carga informacin de la memoria
secundaria a la memoria principal, se divide esa informacin en pginas y se
reparten stas entre los marcos de pgina que estn libre en ese momento en la
memoria. Una pgina puede ir a cualquier marco de pgina, por lo que el SO debe
guardar registro de la ubicacin de cada pgina para transformar las direcciones
virtuales de los programas en direcciones reales.
Cuando la memoria est llena y llegan nuevos procesos, es necesario determinar por
medio de un algoritmo qu pgina debe ser sustituida. Existen varias opciones:
FIFO (primera en entrar, primera en salir), sustituir la que lleve ms tiempo sin ser
referenciada, la que menos se ha usado recientemente,
o Ventajas: mecanismo de traduccin de direcciones rpido y
sencillo, permiten ubicar las pginas en zonas no consecutivas
de memoria (no requiere compactacin), permite cargar un
programa teniendo solo una parte del mismo en memoria e ir
cargando el resto bajo demanda.
o Desventajas: requiere mantenimiento de la ubicacin de cada
pgina, produce fragmentacin interna (si guardamos 5k en
una pgina de 20k se desperdicia espacio).
Segmentacin: la memoria se divide en segmentos de tamao variable
(normalmente cada segmento se corresponde con un mdulo del programa).
o Ventajas: permite ubicar en memoria mdulos separados de un
mismo programa, los segmentos pueden crecer de tamao
dinmicamente (el tamao de las pginas es fijo), y no produce
fragmentacin interna.
o Desventajas: traduccin de direcciones ms costosa, produce
fragmentacin externa (quedan huecos libres en memoria,
pero tan pequeos que no se puede ubicar en ellos ningn
segmento porque no caben).
Segmentacin paginada: es una combinacin de ambas tcnicas: se
divide la memoria en segmentos de tamao variable que a su vez se
dividen en pginas de tamao fijo.
1.7.4. Memoria virtual
A medida que han ido evolucionando los sistemas informticos, se han incrementado tambin
las necesidades de memoria de los mismos, para poder dar soporte a aplicaciones con mucho
consumo de memoria (multimedia) o la ejecucin de mltiples aplicaciones simultneamente.
Esto hace que las necesidades de memoria habitualmente sean mayores que la disponibilidad
real de memoria del equipo.
Existen dos tcnicas que dan solucin a este problema:
- intercambio o swapping: cuando el sistema trabaja con varios procesos
concurrentemente y no nos caben todos en memoria, lo que hace es mover a disco la
imagen de memoria de los procesos que no caben.
- memoria virtual: cuando se ejecuta una tarea y el equipo se queda sin memoria RAM
disponible, se mueven datos de la RAM a ese espacio del disco, dejando espacio en
memoria libre para que el equipo pueda completar esa tarea. Esto tiene la ventaja de que
ofrece la posibilidad de utilizar ms memoria que la que realmente tiene el equipo (de
otra forma no se podran ejecutar aplicaciones que consumen ms memoria que la
fsicamente disponible), pero tiene el problema de que el acceso a disco es lento, lo que
obliga a optimizar el uso de la memoria para evitar en lo posible los accesos a disco. Lo
que hacen los sistemas operativos actuales para tratar de minimizar los accesos a disco
es buscar el menor consumo posible de memoria por parte de las aplicaciones, de forma
que todas las tareas que estn en ejecucin pero no estn activas (servicios,
aplicaciones en segundo plano, ) entran en un estado de suspensin y liberan toda la
memoria que no necesitan para poder ejecutar otras tareas, de forma que se evitan
consumos de memoria innecesarios. Cuando se activa de nuevo una tarea en
suspensin, el sistema lee su estado y recupera toda la memoria que necesite
nuevamente casi de forma instantnea..

1.8. Gestin de entrada/salida


La gestin de entrada/salida es una de las funciones ms importantes del SO, ya que el SO
debe ser capaz de manejar los diferentes perifricos existentes.
Para ello debe:
- Enviar rdenes a los dispositivos de E/S
- Determinar el dispositivo que necesita la atencin del procesador
- Detectar las interrupciones
- Controlar los errores
- Proporcionar una interfaz entre los dispositivos y el resto del sistema que sea sencilla e
igual para todos los dispositivos.

El software de E/S se organiza en niveles. Los del nivel inferior ocultan las particularidades del
hardware a los del nivel superior que presentan una interfaz simple y uniforme al usuario.

Driver
2.1.6. Drivers
En general, las unidades de E/S constan de:
- Dispositivos de E/S: es el componente mecnico del dispositivo.
- Controlador: es el componente electrnico. Sus principales funciones son:
Comunicacin con el perifrico, intercambio de rdenes, informacin del estado.
Deteccin de errores.
Comunicacin con el procesador, descodificadores de rdenes, datos, informacin
de estado, reconocimiento de direccin.
El controlador se gestiona por medio de un componente software denominado driver, que
se instala en el SO. Para llevar a cabo una tarea de E/S el SO se comunica con el
controlador por medio del driver.

2.1.7. Manejador de interrupciones


El SO tiene varias maneras de llevar a cabo la E/S:
- E/S programada: cuando se ejecuta un programa, ste es quien controla las
operaciones de E/S. El problema de este mtodo es que el procesador se tiene que
quedar esperando parado a recibir respuesta, lo que desperdicia mucho espacio de
CPU.
- E/S controlada por interrupciones: cuando un programa requiere realizar una
operacin de E/S, la CPU pasa a ejecutar otros programas hasta que el dispositivo est
listo para la transmisin. Cuando el dispositivo est listo enva una seal de interrupcin
a la CPU que se encarga de realizar la transferencia de informacin entre el dispositivo y
la memoria.
- E/S por DMA (acceso directo a memoria): cuando un programa necesita realizar una
operacin de E/S, enva la peticin y un chip (el controlador de memoria) se encarga de
acceder a la memoria para realizar la transferencia, sin pasar por el procesador. Cuando
ha finalizado la transferencia, avisa a la CPU por medio de una interrupcin.
Actualmente los discos duros, unidades de CD, DVD, Blueray, admiten DMA y la tienen
activada por defecto.
Dado que la velocidad del procesador es muy superior a la de los dispositivos de E/S, se
utilizan tcnicas de almacenamiento intermedio para mejorar el rendimiento del sistema:
- Caching: consiste en almacenar en una cach temporal de rpido acceso los datos que
se usan con ms frecuencia.
- Buffering: consiste en utilizar un rea de memoria como buffer, simulando un dispositivo
o un perifrico lgico, que har de dispositivo intermedio entre el perifrico real y el
procesador. El buffer es independiente del dispositivo de entrada y/o salida, por lo que
permite que el procesador comience a trabajar leyendo o almacenando en el buffer
mientras la informacin del perifrico se va almacenando o extrayendo del buffer. Esto
evita que un perifrico lento afecte al rendimiento del equipo.
Un ejemplo de aplicacin del buffering, en otro contexto, es la visualizacin de vdeo en
streaming: en el momento que empezamos a descargar vdeo podemos comenzar a
visualizarlo sin tener que esperar a que finalice la descarga. La informacin se almacena
temporalmente en un buffer intermedio, y se va enviando al reproductor de vdeo a
medida que est disponible, de modo que el buffer permite sincronizar ambos procesos
(descarga del servidor y envo al reproductor), que trabajan a distintas velocidades.
- Spooling: consiste en simular una memoria intermedia (un buffer especial en memoria o
disco) donde la CPU va depositando trabajos que deben ser procesados por un
dispositivo. Estos dispositivos son mucho ms lentos, por lo que van procesando los
trabajos del buffer a su ritmo. Esto permite que la CPU pueda trabajar en otras tareas
mientras que espera que el dispositivo ms lento acabe de procesar el trabajo.
La aplicacin ms comn del spooling es la impresin: los documentos son cargados en un
rea de un disco, y la impresora los saca de ste a su propia velocidad.

1.8.1. Gestin de acceso al disco


Los discos son almacenamiento masivo no voltil. Dan soporte al sistema de archivos y al
sistema de memoria virtual.

Estructura de un disco:
El tiempo de leer o escribir un sector del disco est determinado principalmente por estos
factores:
- Mover los cabezales sobre el cilindro solicitado => tiempo de bsqueda
- Esperar a que el sector pase ante la cabeza => tiempo de latencia
- Leer o escribir el sector => tiempo de transmisin
El ms costoso es el tiempo de bsqueda (tiempo que tarda el disco en mover los cabezales
sobre el cilindro solicitado), por lo que las peticiones a disco deben ser planificadas de modo
que se siga un orden que minimice el recorrido del cabezal (siguiendo algoritmos como el
FCFS, SSTF, SCAN). Esto tiene que ser logrado por el manejador del dispositivo (driver).
Los principales algoritmos de planificacin de acceso al disco existentes son los siguientes:

- FCFS (primero en llegar primero en ser servido): Planificacin por orden de llegada.
Ejemplo: Posicin cabezal: cilindro 53
Cola (n de cilindro): 98, 183, 37, 122, 14, 124, 65, 67

Ventajas: implementacin simple


Inconvenientes: recorridos totales elevados y movimientos bruscos del cabezal

- SSTF (menor tiempo de bsqueda primero): Primero, el cilindro ms cercano (menor


tiempo de posicionamiento)
Ejemplo: Posicin cabezal: cilindro 53
Cola (n de cilindro): 98, 183, 37, 122, 14, 124, 65, 67

Ventajas: recorridos totales ms bajos


Inconvenientes: El cabezal oscila sobre la zona central (posible inanicin)
- SCAN (barrido): El cabezal recorre el disco de un extremo a otro atendiendo las
peticiones que encuentra en su camino; cuando llega al final cambia de direccin.
Ejemplo: Posicin cabezal: cilindro 53
Cola (n de cilindro): 98, 183, 37, 122, 14, 124, 65, 67

Ventajas: recorrido total bajo, sin inanicin


Inconvenientes: las peticiones de los extremos tienen tiempos de servicio altos.
Una variante del algoritmo SCAN es el C-SCAN, que difiere del anterior en que al llegar a
la ltima posicin del disco en lugar dar la vuelta y recorrer el disco en sentido inverso, se
sita en la primera posicin y recorre de nuevo el disco hacia adelante. La ventaja de
este mtodo es que las peticiones de los extremos tienen los mismos tiempos de servicio
que el resto de posiciones.

1.9. Gestin de ficheros


El sistema gestor de ficheros es la parte del SO que permite administrar la informacin
almacenada de los dispositivos de E/S en forma de ficheros.
Los objetivos del gestor de ficheros son:
- Crear, modificar o borrar ficheros (o carpetas)
- Controlar el acceso a los ficheros (mediante permisos)
- Permitir intercambio de datos entre ficheros.
- Permitir realizar copias de seguridad de los ficheros
- Permitir el acceso a los ficheros mediante nombres simblicos.

Un fichero o archivo es un conjunto de informacin de un determinado tipo que esta


almacenada en un dispositivo de almacenamiento. Ejemplo: documento de texto, cancin,
imagen...
Los archivos generalmente se componen de un nombre (la mayora de SO permiten usar
nombres de hasta 255 caracteres y algunos SO, como Linux, distinguen entre maysculas y
minsculas) y una extensin (permite saber tipo de fichero de que se trata. Algunos SO como
Linux no necesitan el uso de extensiones).
Existen tres tipos de ficheros:
- Ficheros normales o regulares: Aquellos ficheros que contienen datos (informacin).
- Directorios: fichero que se utiliza para organizar los ficheros (u otras carpetas).
- Ficheros especiales de dispositivos: representan a dispositivos de E/S
Un fichero contiene la siguiente informacin: nombre, tamao, fechas (de creacin y
modificacin), propietario, permisos (de lectura, escritura, ejecucin...), ubicacin, enlaces
(puntos desde los que se puede acceder al fichero), etc.
Sobre un fichero se pueden realizar las siguientes operaciones: creacin, apertura, escritura,
cierre, eliminacin, fragmentacin, compactacin y compresin.
Los directorios son un tipo especial de fichero que se utiliza para organizar ficheros u otras
carpetas. Sobre un directorio se pueden realizar las siguientes operaciones: crearlo, entrar en
l, salir de l, leer su contenido, aadir o eliminar en l archivos o directorios y borrarlo.

Existen tres tipos de estructuras de directorios:


- Un nivel: Todos los ficheros en un nico directorio
- Jerrquico: un directorio puede incluir otros directorios y archivos. La mayora de los
sistemas operativos tienen un sistema de archivos de estructura jerrquica, en el que
los directorios parten de uno llamado directorio raz, y del que cuelgan todos los dems
en forma de rbol, de ah que se utilicen trminos como rbol de subdirectorios.

rbol de directorios Grafo de directorios

Existen dos tipos de directorios especiales: el directorio . (directorio actual) y el directorio ..


(directorio padre)
Una ruta es una concatenacin de directorios y subdirectorios para llamar a un archivo en una
estructura de directorios. Existen dos tipos de ruta:
- Absolutas: se llama al archivo desde el directorio raz hasta el archivo (ejemplo:
C:\web\imagenes\logo.gif)
- Relativa: se llama al archivo desde el directorio actual en el que estemos. (ejemplo: si
estamos en la carpeta web la ruta hasta llegar al archivo logo.gif sera:
imagenes/logo.gif)

2.1.8. Sistemas transaccionales


Una transaccin se define como una unidad lgica de tratamiento (conjunto de rdenes) que
aplicada a un estado coherente del sistema lo deja de nuevo en un estado coherente, despus
de hacer las modificaciones. Una transaccin solo se puede ejecutar completamente o ser
anulada. La gestin de transacciones debe asegurar que la ejecucin simultnea de
transacciones en el sistema da el mismo resultado que una ejecucin secuencial.
Un sistema transaccional debe controlar las transacciones para mantener la seguridad y
consistencia de los datos involucrados, y debe ser capaz de enmendar cualquier error ocurrido
durante una transaccin, pudiendo deshacer las operaciones realizadas, manteniendo los datos
tal cual estaban antes del error.

Para que un sistema informtico pueda ser considerado como un sistema transaccional, debe
cumplir las propiedades ACID:
- Atomicidad: Si una operacin consiste en una serie de pasos, todos ellos ocurren o
ninguno, es decir, las transacciones son completas.
- Consistencia: Integridad. Es la propiedad que asegura que slo se empieza aquello que
se puede acabar. Por lo tanto se ejecutan aquellas operaciones que no van a romper las
reglas y directrices de Integridad del sistema. Cualquier transaccin llevar el sistema de
un estado vlido a otro tambin vlido. De esta manera podemos garantizar que la
informacin que se presenta al usuario ser siempre la misma.
- Aislamiento (isolation): es la propiedad que asegura que una operacin no puede
afectar a otras. Esto asegura que la realizacin de dos transacciones sobre la misma
informacin sean independientes y no generen ningn tipo de error. Esta propiedad
define cmo y cundo los cambios producidos por una operacin se hacen visibles para
las dems operaciones concurrentes.
- Durabilidad: Persistencia. Es la propiedad que asegura que una vez realizada la
operacin, sta persistir y no se podr deshacer aunque falle el sistema y que de esta
forma los datos sobrevivan de alguna manera.

2.1.9. Particiones
Una particin de un disco duro es una divisin lgica del mismo, en la cual se alojan y
organizan los archivos mediante un sistema de archivos. Formalmente se denomina particin al
conjunto de cilindros contiguos de un disco que forman una unidad lgica independiente.

Para instalar un SO en un disco duro, o emplearlo para guardar datos, previamente hay que
particionarlo (crear particiones) e instalar un sistema de archivos.
Existen numerosas herramientas para crear particiones: el administrador de discos de Windows
o de Linux, Fdisk, Diskpart, Partition Magic, Acronis, ...

Existen distintos esquemas de particiones para la distribucin de particiones en un disco. Los


ms conocidos y difundidos son MBR (Master Boot Record) y GPT (GUID Partition Table).
Para poder contener datos, las particiones tienen que poseer un sistema de archivos. El
espacio no asignado en un disco no es una particin, por lo que no puede tener un sistema de
archivos. Existen mltiples sistemas de archivos con diferentes capacidades como: FAT, NTFS,
FAT32, EXT2, EXT3, EXT4, Btrfs, FedFS, ReiserFS, Reiser4 u otros.
Los discos pticos (DVD, CD) utilizan otro tipo de particiones llamada UDF (Universal Disc
Format, "Formato de Disco Universal" por sus siglas en ingls), que permite agregar archivos y
carpetas y es por ello que es usado por la mayora de programas de grabacin de unidades
pticas.

En Windows, las particiones reconocidas son identificadas con una letra seguida por dos
puntos (por ejemplo, C:), aunque tambin pueden ser montadas en directorios (por ejemplo
C:\Users). Prcticamente todo tipo de discos magnticosy memorias flash (como pendrives)
pueden particionarse. En sistemas UNIX y UNIX-like, las particiones de datos son montadas en
un mismo y nico rbol jerrquico, en el cual se montan a travs de una carpeta, proceso que
slo el superusuario (root) puede realizar.
2.1.9.1. Discos MBR (Master Boot Record)
Antes de hacer particiones, el disco se puede representar como un conjunto lineal de Sectores,
formado por conjuntos de 512 Bytes. El sector MRB sera el sector 1 del cilindro 0 y del cabezal
0. Tambin se llama registro de arranque maestro o sector de arranque. En su interior se
guardan:
Los parmetros fsicos del disco duro
Una estructura de datos llamada tabla de particiones
Un pequeo cdigo ejecutable que se encarga de leer la tabla de
particiones y detectar la particin activa (donde est el SO que debe
arrancar).

Con este esquema de organizacin se pueden crear cuatro tipos de particiones:


- Particiones Primarias: 4 como mximo si no est creada la particin extendida. Si hay
una particin extendida, solo se pueden tener 3 primarias como mximo (primarias +
extendida <= 4). En estas particiones es donde se instalan los Sistemas Operativos.
- Particin Activa: Es la particin primaria elegida para arrancar el equipo.
- Particin Extendida: 1 como mximo. En ella no se pueden guardar archivos
directamente, hay que dividirla en particiones lgicas (como mnimo una que ocupe todo
el espacio)
- Particiones Lgicas: Todas las que se quieran. Son las particiones en las que se divide
una Extendida.
Para guardar datos en un disco duro hay que crear, como mnimo, una particin, y como mucho
puede hacer 4 particiones entre primarias y extendida. Una particin extendida se puede dividir
en todas las lgicas que se quiera.
Una vez hecha la particin hay que formatearla, es decir, organizarla por medio de un sistema
de archivos que permita almacenar archivos en su interior. Para acceder a las particiones, hay
que asignarles una letra o montarlas en un directorio.

2.1.9.2. Discos GPT (GUID Partition Table)


La tabla de particin GUID (Globally Unique IDentifier) es un estndar para la colocacin de
la tabla de particiones en un disco duro fsico. Forma parte del estndar Extensible Firmware
Interface (EFI1) propuesto por Intel para sustituir a las BIOS del PC. La GPT llegar a sustituir
al Master Boot Record (MBR) usado con BIOS. Las ventajas ms relevantes de los discos GPT:
- Nmero arbitrarios de Particiones, aunque por defecto establece un mximo de 128.
- No hay necesidad de crear particiones extendidas y lgicas (todas son "primarias").
- Podemos trabajar con discos de capacidad superior a 2TB (tamao mximo del disco: 2
ZB).

1 La EFI es una especificacin desarrollada por Intel, dirigida a sustituir a la antigua interface do estndar IBM PC
BIOS (empleada hasta ahora). El objetivo de esta Interface es establecer la forma en la que un software especfico
como un Sistema Operativo o una aplicacin de arranque debe acceder a los recursos do sistema
Mientras que los sistemas con MBR se inician con el cdigo de arranque maestro (que contiene
un binario ejecutable que identifica la particin activa e inicia el proceso de arranque), la GPT
se basa en las capacidades extendidas de EFI para estos procesos.
El esquema GPT sigue teniendo una entrada de MRB al inicio del disco (MBR heredado), que
proporciona proteccin y compatibilidad, y la GPT propiamente dicha comienza con la cabecera
de la tabla de Particiones.
El principal propsito de este MBR heredado es evitar que utilidades de disco basadas en MBR
no reconozcan o estropeen los discos basados en GPT. En estos MBR se indica que el disco
tiene una sola particin que comprende toda la unidad GPT.
En lugar de utilizar direcciones fsicas del disco como MRB (modelo, cilindro, cabeza, sector),
GPT direccionamiento lgico, denominado LBA (Logical Block Addressing).
- La informacin de MBR heredado est almacenada en el LBA 0.
- La cabecera GPT est en el LBA 1. En la cabecera se definen los bloques de disco que
pueden ser utilizados por el usuario, y el nmero y tamao de las entradas de particin
que conforman la tabla de particiones. Contiene tambin el GUID (globally unique
identifier) el disco, y las posiciones donde se almacenan la cabecera GPT y la GPT
secundarias. Contiene tambin una suma de verificacin que permite a los procesos EFI
comprobar durante el arranque que tanto la cabecera GPT como la propia GPT son
correctas.
- La tabla de particiones en s se ubicar en los bloques sucesivos. En la tabla de
particiones se registran: el GUID (identificador nico global) tanto del disco duro como de
la particin, los bloques LBA de inicio y final (que delimitan la particin del disco), los
nombres de las particiones y atributos relevantes de stas.
En los SOs Windows de 64-bits, se reservan 32 sectores (16.384 bytes) para la GPT, dejando
el bloque LBA 34 como el primero utilizable del disco.
Otra de las ventajas de GPT es que proporciona redundancia, ya que tanto la cabecera GPT
como la tabla de particiones estn escritas tanto al principio como al final del disco.

2.1.10. Sistemas de ficheros


- FAT: Utilizado originariamente por los sistemas Windows, se sigue usando
especialmente en dispositivos extrables no pticos. Se basa en la divisin del disco en
clsters (grupos de segmentos), y la creacin de una tabla donde para cada fichero se
guardan los clsters donde se almacena. Esta tabla se crea en una zona reservada del
disco cuando ste se formatea, y es necesario cargarla en memoria para poder hacer
uso de ella. Es un mtodo muy sencillo y robusto que reconocen prcticamente todos
los SO, pero tiene varios problemas, especialmente que desperdicia mucho espacio
cuando el disco es muy grande, provoca mucha fragmentacin en disco (porque los
clsters de un archivo no tienen por qu ser consecutivos) y no permite almacenar
metadatos. Existen varias versiones (FAT12, FAT16, FAT32, extFAT, FATX ) que
mejoran problemas de las anteriores o adaptan el mecanismo para un dispositivo
concreto.
- NTFS: mecanismo utilizado por los sistemas Windows desde la versin NT. Contiene
varias mejoras sobre FAT, como el uso de metadatos, registro de transacciones
(permiten recuperacin ante errores), listas de control de acceso, soporte para
compresin o uso de estructuras de datos avanzadas para mejorar el rendimiento y
optimizar el uso del disco. Se basa en el uso de la Master File Table, una base de datos
con los atributos de todos los ficheros: nombre, fecha creacin, permisos, Los
archivos estn indexados en los directorios en forma de rboles B+ (en lugar de meras
colecciones de registros como en la FAT).
Su principal problema es que la MFT puede llegar a ser muy grande dado que controla
todo el sistema de ficheros, por lo que es poco adecuada para sistemas de archivos
pequeos.
- HFS: sistema de archivos de OSX. Muy similar a NTFS, guarda un catlogo en forma
de rbol B+ con entradas para todos los archivos y directorios del sistema. Tena el
problema de que el catlogo es de acceso exclusivo, por lo que no permita multitarea.
Evolucion posteriormente en el HFS+, que inclua varias mejoras, entre ellas nombres
de archivos ms grandes y en Unicode o el tamao variable del registro donde se
guarda la informacin del archivo (hace un uso ms eficiente del espacio).
- Ext: sistemas de archivos de los sistemas Linux. Al igual que los anteriores, utilizan una
estructura donde guardan informacin de los archivos en forma de inodos (registros
con informacin de los ficheros y directorios). Los directorios son ficheros especiales
con informacin de los archivos que contienen. Existen tambin varias versiones (ext3
y ext4).
- F2FS: Flash-friendly file system, sistema utilizado en sistemas Android, muy orientado
al almacenamiento en memorias de tipo flash, usadas habitualmente en smartphones.

FAT16 FAT32 NTFS ext4


Sistemas MS-DOS W98SE W2000 Linux
Operativos 6.22 W2000 WXP
W95 WXP W2003
W98 W2003 W2008
W2008 W7
W7
Mx. Tamao
2 GB 4 GB limitado por el tamao del volumen 16TB
Archivo
Mx. Tamao En la prctica, 16 TB usando clsteres
Particin de 4 KB (permite definir el tamao
del clster, a partir de 512 bytes que
2 GB 2 TB 1EB
es el tamao mnimo de un sector).
Aunque el mximo recomendado son
2TB

3. Sistemas operativos actuales


1.10. Telfonos mviles
3.1.1. Android
- SO libre creado por Google y la OHA (Open Handset Alliance) que es un
consorcio de fabricantes de hw y de sw y operadoras de telefona mvil.
- Est basado en el kernel (ncleo) de Linux.
- Permite su instalacin en todo tipo de modelos y marcas de mviles, as
como tablets, netbooks

3.1.2. iOS
- SO creado por Apple
- No permite que se instale en ningn dispositivo que no sea de Apple.
3.1.3. Windows Phone
- SO mvil compacto desarrollado por Microsoft, se basa en el ncleo del
sistema operativo Windows CE y cuenta con un conjunto de aplicaciones
bsicas
- Actualmente va por la versin de Windows 10.
- Est diseado para ser similar a las versiones de escritorio de Windows
estticamente y existe una gran oferta de software de terceros disponible
para Windows Phone, la cual se puede adquirir a travs de la tienda en lnea
de Windows Store para mviles.

3.1.4. Symbian
- SO creado por varias empresas de telefona mvil (Nokia, Sony Ericsson, Samsung,
LG)
- El objetivo de Symbian fue crear un sistema operativo para terminales mviles que
pudiera competir con el de Palm o el Smartphone de Microsoft.
- El declive de Nokia arrastr consigo a su SO. En octubre de 2011 se confirma de forma
oficial que Symbian tendr soporte hasta el ao 2016, al no poder competir con la
versin de smartphones con sistemas operativos de ltima generacin como Android,
iOS o Windows Phone.

Estadsticas de uso de SO mviles en julio de 2016 (http://gs.statcounter.com/#mobile+tablet+console-os-ww-monthly-


201607-201607-bar)

1.11. Ordenadores personales


3.1.5. Windows

- Tipo de ncleo: Monoltico (versiones basadas en MS-DOS). Hbrido (versiones basadas


en Windows NT)
- Licencia: Microsoft CLUF/EULA (contrato de Licencia para Usuario
Final): no permite que el software sea modificado, desensamblado,
copiado o distribuido.
- Cdigo cerrado.
- ltima versin: Windows 8, Windows Server 2012
- Windows XP, Vista, 7, 8: multitarea y monousuario
- Windows 2003, 2008 y 2012 Server: multitarea y
multiusuario
- Uso en Espaa en octubre de 2012: 87%
El SO Windows de Microsoft es un software propietario, a diferencia de Linux, que es software
libre, lo que significa que para instalarlo y utilizarlo en un equipo informtico es necesario
comprar una licencia.
Tras el SO Mac OS de Apple, Windows fue uno de los primeros en incorporar una interfaz
grfica de usuario basada en ventanas de ah su nombre.
En sus inicios, fue una aplicacin que se ejecutaba sobre el SO de interfaz en modo texto MS-
DOS, desarrollado tambin por Microsoft, pero posteriormente se convirti en un autntico SO
(con Windows 95).
A lo largo de su historia, han existido varias versiones de Windows que le han ido aadiendo
mejoras en su entorno grfico, en su rendimiento, en el aprovechamiento de las caractersticas
hardware del equipo y en las aplicaciones de utilidades para facilitar la labor al usuario.
En la actualidad, las versiones ms utilizadas son Windows XP y Windows 7.

3.1.6. Linux
- Tipo de ncleo: Monoltico. Se basa en el SO Unix. ltima
versin estable Kernel: 3.6.1
- Software libre y cdigo abierto
- Distribuciones de Linux actuales: Mint, Ubuntu, Fedora,
Debian, Mageia, OpenSUSE
- Multiusuario y multitarea.
- Uso en Espaa en octubre de 2012: 2,03%
Es un SO de libre distribucin, por lo que se puede instalar y
actualizar de forma gratuita. Adems, tambin es de cdigo
abierto, por lo que podemos utilizar su cdigo fuente para
introducir modificaciones o mejoras.
Con el paso de los aos ha ido introduciendo notables mejoras
en los interfaces grficos de usuario. Adems, cuenta con muchas distribuciones y gestores de
ventanas para el entorno grfico, por lo que el usuario puede elegir la distribucin que ms le
convenga para sus necesidades o la que ms le guste, donde se puede elegir qu gestor de
ventanas se quiere utilizar.
Asimismo, Linux ha mejorado bastante en cuanto al reconcomiendo del hardware sobre el que
se instala y en cuanto a mejoras y novedades en el software que se puede instalar.

3.1.7. Mac OS X
- Tipo de ncleo: hbrido. XNU basado en Mach y BSD de Unix
- Licencia: Propietaria / Apple CLUF
- Cdigo cerrado con componentes en cdigo
abierto (como Darwin y WebKit)
- ltima versin: Mac OS X Mountain Lion
- Multitarea y multiusuario
- Uso en Espaa en octubre de 2012: 6,61%
OS X es un sistema operativo desarrollado y
comercializado por Apple que ha sido incluido en su
gama de computadoras Macintosh desde 2002. Est
basado en BSD. Desde la versin Mac OS X 10.5
Leopard para procesadores Intel, el sistema tiene la
certificacin UNIX (esto permite certificar que puede
hacer funcionar ciertos software, como por ejemplo
Oracle).
Los nombres de las versiones de Mac OS X tienen
nombre de grandes felinos, por ejemplo: Mac OS X v10.7
es denominado Lion.
Porcentajes de uso de SOs de escritorio en julio de 2016 (http://gs.statcounter.com/#desktop-os-ww-monthly-201607-
201607-bar)

Вам также может понравиться