<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>https://1984.lsi.us.es/wiki-ssoo/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jesdiamar</id>
		<title>Wiki de Sistemas Operativos - Contribuciones del usuario [es]</title>
		<link rel="self" type="application/atom+xml" href="https://1984.lsi.us.es/wiki-ssoo/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jesdiamar"/>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php/Especial:Contribuciones/Jesdiamar"/>
		<updated>2026-04-12T14:27:48Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.29.0</generator>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Soluci%C3%B3n_de_los_ejercicios_de_administraci%C3%B3n_de_ficheros&amp;diff=2381</id>
		<title>Solución de los ejercicios de administración de ficheros</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Soluci%C3%B3n_de_los_ejercicios_de_administraci%C3%B3n_de_ficheros&amp;diff=2381"/>
				<updated>2012-01-22T17:02:13Z</updated>
		
		<summary type="html">&lt;p&gt;Jesdiamar: /* Ejercicio 2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Ejercicio 1 ==&lt;br /&gt;
&lt;br /&gt;
A) '''Incoherencia nº1:''' Fichero2.txt está asociado a un bloque corrupto, el número 4.&lt;br /&gt;
&lt;br /&gt;
'''Incoherencia nº2:''' Cuando se accede al bloque 7 (correspondiente al archivo Imagen2.jpg), el siguiente en ser accedido es el número 4, que además de estar asociado a otro archivo, está corrupto.&lt;br /&gt;
&lt;br /&gt;
B)&lt;br /&gt;
   Entrada al directorio raíz E:   1 acceso al bloque 2&lt;br /&gt;
   Entrada a Imagen.jpg:           1 acceso al bloque 3&lt;br /&gt;
   Siguiente bloque de Imagen.jpg: 1 acceso al bloque 5&lt;br /&gt;
   Siguiente bloque de Imagen.jpg: 1 acceso al bloque 6 y final de fichero.&lt;br /&gt;
   Total: 4 accesos&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mejorada explicación del primer apartado y corregida la del segundo. --[[Usuario:Ferguatol|fernandoenzo]] 16:27 22 ene 2012 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Ejercicio 2 ==&lt;br /&gt;
&lt;br /&gt;
1º: Acceso al bloque del i-nodo.&lt;br /&gt;
2º y 3º: Acceso a los bloques para alcanzar el bloque del doble indirecto.&lt;br /&gt;
4º: Acceso al bloque del doble indirecto.&lt;br /&gt;
&lt;br /&gt;
Total: 4 accesos&lt;/div&gt;</summary>
		<author><name>Jesdiamar</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Introducci%C3%B3n_en_la_administraci%C3%B3n_de_archivos&amp;diff=2378</id>
		<title>Introducción en la administración de archivos</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Introducci%C3%B3n_en_la_administraci%C3%B3n_de_archivos&amp;diff=2378"/>
				<updated>2012-01-22T15:46:19Z</updated>
		
		<summary type="html">&lt;p&gt;Jesdiamar: /* Directorio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Administrador de ficheros =&lt;br /&gt;
&lt;br /&gt;
Se trata de la parte del sistema operativo que se encarga de la organización de los ficheros en el sistema operativo.&lt;br /&gt;
&lt;br /&gt;
= Bloque =&lt;br /&gt;
&lt;br /&gt;
La memoria disponible en un dispositivo de almacenamiento masivo se divide en porciones de igual tamaño denominados '''bloques'''. Dichos bloques se asignan completamente y en exclusividad a un fichero de manera que un fichero está compuesto por un conjunto de bloques.&lt;br /&gt;
&lt;br /&gt;
El tamaño de bloque es un parámetro que se establece en el tiempo de formateo. Por lo general, se emplean bloques de 4 KB y 8 KB dependiendo del tamaño de palabra del procesador. No obstante, es un parámetro configurable. En el caso de un sistema que tenga que alojar gran cantidad de ficheros muy pequeños, podría reducirse el tamaño de bloque para hacer un mejor aprovechamiento del espacio de almacenamiento en disco.&lt;br /&gt;
&lt;br /&gt;
*Aspectos relevantes en la elección del tamaño de los bloques:&lt;br /&gt;
&lt;br /&gt;
Podemos destacar los siguientes 4 aspectos:&lt;br /&gt;
&lt;br /&gt;
'''Desperdicio interno:'''&lt;br /&gt;
Cuanto mayor sean los bloques mayor desperdicio interno se producirá en el último bloque del fichero.&lt;br /&gt;
&lt;br /&gt;
'''Tiempos de espera:'''&lt;br /&gt;
Cuanto mayor sea el bloque menos bloques formarán los ficheros con lo que se reduce el numero de accesos al soporte y, en consecuencia, los tiempos de espera.&lt;br /&gt;
&lt;br /&gt;
'''Espacio intermedio:'''&lt;br /&gt;
Cuanto mayor sean los bloques mayor será el espacio necesario para mantenerlos cargados en memoria mientras se opera con ellos.&lt;br /&gt;
&lt;br /&gt;
'''Aprovechamiento de las operaciones de lectura y escritura:'''&lt;br /&gt;
Si el proceso no realiza accesos a memoria secuenciales, sino que son aleatorios, es muy probable que solo necesite unos pocos octetos de cada bloque del fichero. Sin embargo en cada lectura y escritura los bloques se leen o escriben completamente, lo que significa un desaprovechamiento de las operaciones de lectura y escritura.&lt;br /&gt;
&lt;br /&gt;
= Fichero =&lt;br /&gt;
&lt;br /&gt;
Un fichero es un contenedor de información que consta como mínimo de un nombre, además de una serie de atributos (llamados [http://www.alegsa.com.ar/Dic/metadato.php metadatos]) como la fecha de creación, última actualización, propietario, grupo entre otros; y un número de bloques asignados.&lt;br /&gt;
&lt;br /&gt;
= Directorio =&lt;br /&gt;
&lt;br /&gt;
Un directorio o carpeta es un contenedor de ficheros. Por lo general, disponen a su vez de dos pseudodirectorios denominados &amp;quot;.&amp;quot; y &amp;quot;..&amp;quot; que sirven como referencia al propio directorio y al directorio padre. De esta manera, los directorios se organizan en una estructura arbórea con una cierta raíz.&lt;br /&gt;
&lt;br /&gt;
= Organización de los directorios y ficheros =&lt;br /&gt;
&lt;br /&gt;
La organización de los directorios y ficheros en los sistemas operativos modernos emplea una estructura arbórea en la que existe un directorio raíz del que penden todos los demás directorios y ficheros.&lt;br /&gt;
&lt;br /&gt;
                                         raíz&lt;br /&gt;
                                          /\&lt;br /&gt;
                                         /  \&lt;br /&gt;
                                        d1  d2&lt;br /&gt;
                                       / \    \&lt;br /&gt;
                                      f1  f2   d3&lt;br /&gt;
                                               /\&lt;br /&gt;
                                              /  \&lt;br /&gt;
                                             f3  f4&lt;br /&gt;
&lt;br /&gt;
En el caso de sistemas operativos tipo Unix, la raíz se identifica con el directorio /. Para sistemas operativos de tipo-Microsoft, existe un directorio raíz por unidad. Cada unidad se trata de un sistema de fichero independiente que se identifica mediante una letra seguida de dos puntos, por ejemplo '''C:\''' .&lt;br /&gt;
&lt;br /&gt;
== Propietario, grupo y permisos ==&lt;br /&gt;
&lt;br /&gt;
Todo fichero o directorio en un sistema operativo moderno dispone de al menos un propietario que define las acciones que se pueden realizar sobre los ficheros. Por lo general son las siguientes:&lt;br /&gt;
&lt;br /&gt;
* Lectura: Es posible leer el contenido del fichero.&lt;br /&gt;
* Modificación: Es posible modificar el contenido del fichero.&lt;br /&gt;
* Ejecución: Es posible ejecutar el fichero.&lt;br /&gt;
&lt;br /&gt;
En general, este esquema se aplica al propietario, al grupo y al resto del mundo, de manera que el propietario de cualquier fichero o directorio establece los permisos. Por ejemplo, un fichero con un documento ofimático puede ser leído y modificado por el propietario y por el grupo, pero no por el resto del mundo.&lt;br /&gt;
&lt;br /&gt;
Ejemplo:&lt;br /&gt;
&lt;br /&gt;
  propietario     grupo    resto del mundo&lt;br /&gt;
      rwx          rwx          rwx &lt;br /&gt;
&lt;br /&gt;
  fichero.odt: rw------- (fichero openoffice con sólo lectura y escritura para el propietario)&lt;br /&gt;
  sudoku:      rwxr-xr-x (fichero ejecutable con permisos de lectura, modificación y ejecución para el propietario)&lt;br /&gt;
&lt;br /&gt;
== Tabla de entrada de ficheros ==&lt;br /&gt;
&lt;br /&gt;
Todo directorio dispone de una tabla de entrada de ficheros. Por cada entrada existe al menos una referencia al primer bloque que forma parte de dicho fichero, así como otros atributos como el propietario del fichero, la fecha de último acceso, modificación, etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Directorios2.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Cada tabla de entrada de ficheros ocupa como mínimo un bloque. Por cada entrada se almacena la siguiente información:&lt;br /&gt;
&lt;br /&gt;
* Nombre del fichero o directorio (tamaño variable)&lt;br /&gt;
* Fecha de creación y último acceso (entero sin signo de 64-bits)&lt;br /&gt;
* Propietario (entero sin signo de 32-bits para el identificador de usuario)&lt;br /&gt;
* Grupo (entero sin signo de 32-bits para el identificador de grupo)&lt;br /&gt;
* Permisos (entero sin signo de 16 bits que codifican los permisos).&lt;br /&gt;
&lt;br /&gt;
De esta manera, cada entrada ocupa un número de bytes. Suponiendo que toda entrada requiera 64 bytes, si se emplea un tamaño de bloque de 4 KB, con un bloque se podrían mantener hasta 64 entradas. En caso de que un directorio tuviera más entradas, serían necesarios más bloques para la tabla de entrada de ficheros.&lt;br /&gt;
&lt;br /&gt;
= Sistema de ficheros =&lt;br /&gt;
&lt;br /&gt;
Un sistema de fichero se trata de la estructura lógica (mediante un tipo abstracto de datos como una tabla, una lista o un árbol) y el conjunto de mecanismos que se emplean para gestionar los bloques asignados a ficheros y los bloques libres.&lt;/div&gt;</summary>
		<author><name>Jesdiamar</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Introducci%C3%B3n_en_la_administraci%C3%B3n_de_archivos&amp;diff=2377</id>
		<title>Introducción en la administración de archivos</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Introducci%C3%B3n_en_la_administraci%C3%B3n_de_archivos&amp;diff=2377"/>
				<updated>2012-01-22T15:33:02Z</updated>
		
		<summary type="html">&lt;p&gt;Jesdiamar: /* Bloque */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Administrador de ficheros =&lt;br /&gt;
&lt;br /&gt;
Se trata de la parte del sistema operativo que se encarga de la organización de los ficheros en el sistema operativo.&lt;br /&gt;
&lt;br /&gt;
= Bloque =&lt;br /&gt;
&lt;br /&gt;
La memoria disponible en un dispositivo de almacenamiento masivo se divide en porciones de igual tamaño denominados '''bloques'''. Dichos bloques se asignan completamente y en exclusividad a un fichero de manera que un fichero está compuesto por un conjunto de bloques.&lt;br /&gt;
&lt;br /&gt;
El tamaño de bloque es un parámetro que se establece en el tiempo de formateo. Por lo general, se emplean bloques de 4 KB y 8 KB dependiendo del tamaño de palabra del procesador. No obstante, es un parámetro configurable. En el caso de un sistema que tenga que alojar gran cantidad de ficheros muy pequeños, podría reducirse el tamaño de bloque para hacer un mejor aprovechamiento del espacio de almacenamiento en disco.&lt;br /&gt;
&lt;br /&gt;
*Aspectos relevantes en la elección del tamaño de los bloques:&lt;br /&gt;
&lt;br /&gt;
Podemos destacar los siguientes 4 aspectos:&lt;br /&gt;
&lt;br /&gt;
'''Desperdicio interno:'''&lt;br /&gt;
Cuanto mayor sean los bloques mayor desperdicio interno se producirá en el último bloque del fichero.&lt;br /&gt;
&lt;br /&gt;
'''Tiempos de espera:'''&lt;br /&gt;
Cuanto mayor sea el bloque menos bloques formarán los ficheros con lo que se reduce el numero de accesos al soporte y, en consecuencia, los tiempos de espera.&lt;br /&gt;
&lt;br /&gt;
'''Espacio intermedio:'''&lt;br /&gt;
Cuanto mayor sean los bloques mayor será el espacio necesario para mantenerlos cargados en memoria mientras se opera con ellos.&lt;br /&gt;
&lt;br /&gt;
'''Aprovechamiento de las operaciones de lectura y escritura:'''&lt;br /&gt;
Si el proceso no realiza accesos a memoria secuenciales, sino que son aleatorios, es muy probable que solo necesite unos pocos octetos de cada bloque del fichero. Sin embargo en cada lectura y escritura los bloques se leen o escriben completamente, lo que significa un desaprovechamiento de las operaciones de lectura y escritura.&lt;br /&gt;
&lt;br /&gt;
= Fichero =&lt;br /&gt;
&lt;br /&gt;
Un fichero es un contenedor de información que consta como mínimo de un nombre, además de una serie de atributos (llamados [http://www.alegsa.com.ar/Dic/metadato.php metadatos]) como la fecha de creación, última actualización, propietario, grupo entre otros; y un número de bloques asignados.&lt;br /&gt;
&lt;br /&gt;
= Directorio =&lt;br /&gt;
&lt;br /&gt;
Un directorio o carpeta es una contenedor de ficheros. Por lo general, disponen a su vez de dos pseudodirectorios denominados &amp;quot;.&amp;quot; y &amp;quot;..&amp;quot; que sirven como referencia al propio directorio y al directorio padre. De esta manera, los directorios se organizan en una estructura arbórea con una cierta raíz.&lt;br /&gt;
&lt;br /&gt;
= Organización de los directorios y ficheros =&lt;br /&gt;
&lt;br /&gt;
La organización de los directorios y ficheros en los sistemas operativos modernos emplea una estructura arbórea en la que existe un directorio raíz del que penden todos los demás directorios y ficheros.&lt;br /&gt;
&lt;br /&gt;
                                         raíz&lt;br /&gt;
                                          /\&lt;br /&gt;
                                         /  \&lt;br /&gt;
                                        d1  d2&lt;br /&gt;
                                       / \    \&lt;br /&gt;
                                      f1  f2   d3&lt;br /&gt;
                                               /\&lt;br /&gt;
                                              /  \&lt;br /&gt;
                                             f3  f4&lt;br /&gt;
&lt;br /&gt;
En el caso de sistemas operativos tipo Unix, la raíz se identifica con el directorio /. Para sistemas operativos de tipo-Microsoft, existe un directorio raíz por unidad. Cada unidad se trata de un sistema de fichero independiente que se identifica mediante una letra seguida de dos puntos, por ejemplo '''C:\''' .&lt;br /&gt;
&lt;br /&gt;
== Propietario, grupo y permisos ==&lt;br /&gt;
&lt;br /&gt;
Todo fichero o directorio en un sistema operativo moderno dispone de al menos un propietario que define las acciones que se pueden realizar sobre los ficheros. Por lo general son las siguientes:&lt;br /&gt;
&lt;br /&gt;
* Lectura: Es posible leer el contenido del fichero.&lt;br /&gt;
* Modificación: Es posible modificar el contenido del fichero.&lt;br /&gt;
* Ejecución: Es posible ejecutar el fichero.&lt;br /&gt;
&lt;br /&gt;
En general, este esquema se aplica al propietario, al grupo y al resto del mundo, de manera que el propietario de cualquier fichero o directorio establece los permisos. Por ejemplo, un fichero con un documento ofimático puede ser leído y modificado por el propietario y por el grupo, pero no por el resto del mundo.&lt;br /&gt;
&lt;br /&gt;
Ejemplo:&lt;br /&gt;
&lt;br /&gt;
  propietario     grupo    resto del mundo&lt;br /&gt;
      rwx          rwx          rwx &lt;br /&gt;
&lt;br /&gt;
  fichero.odt: rw------- (fichero openoffice con sólo lectura y escritura para el propietario)&lt;br /&gt;
  sudoku:      rwxr-xr-x (fichero ejecutable con permisos de lectura, modificación y ejecución para el propietario)&lt;br /&gt;
&lt;br /&gt;
== Tabla de entrada de ficheros ==&lt;br /&gt;
&lt;br /&gt;
Todo directorio dispone de una tabla de entrada de ficheros. Por cada entrada existe al menos una referencia al primer bloque que forma parte de dicho fichero, así como otros atributos como el propietario del fichero, la fecha de último acceso, modificación, etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Directorios2.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Cada tabla de entrada de ficheros ocupa como mínimo un bloque. Por cada entrada se almacena la siguiente información:&lt;br /&gt;
&lt;br /&gt;
* Nombre del fichero o directorio (tamaño variable)&lt;br /&gt;
* Fecha de creación y último acceso (entero sin signo de 64-bits)&lt;br /&gt;
* Propietario (entero sin signo de 32-bits para el identificador de usuario)&lt;br /&gt;
* Grupo (entero sin signo de 32-bits para el identificador de grupo)&lt;br /&gt;
* Permisos (entero sin signo de 16 bits que codifican los permisos).&lt;br /&gt;
&lt;br /&gt;
De esta manera, cada entrada ocupa un número de bytes. Suponiendo que toda entrada requiera 64 bytes, si se emplea un tamaño de bloque de 4 KB, con un bloque se podrían mantener hasta 64 entradas. En caso de que un directorio tuviera más entradas, serían necesarios más bloques para la tabla de entrada de ficheros.&lt;br /&gt;
&lt;br /&gt;
= Sistema de ficheros =&lt;br /&gt;
&lt;br /&gt;
Un sistema de fichero se trata de la estructura lógica (mediante un tipo abstracto de datos como una tabla, una lista o un árbol) y el conjunto de mecanismos que se emplean para gestionar los bloques asignados a ficheros y los bloques libres.&lt;/div&gt;</summary>
		<author><name>Jesdiamar</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Modelos_de_Dise%C3%B1o_de_Sistemas_Operativos&amp;diff=1671</id>
		<title>Modelos de Diseño de Sistemas Operativos</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Modelos_de_Dise%C3%B1o_de_Sistemas_Operativos&amp;diff=1671"/>
				<updated>2011-11-07T17:07:57Z</updated>
		
		<summary type="html">&lt;p&gt;Jesdiamar: /* Tipos de Sistemas Operativos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 2.5. Modelos de Diseño de SSOO =&lt;br /&gt;
&lt;br /&gt;
== Modos de operación del procesador ==&lt;br /&gt;
&lt;br /&gt;
Para entender los modelos de diseño de los sistemas operativos, tenemos que hacer referencia a los modos de ejecución del procesador. El modo de ejecución del procesador indica qué conjunto de instrucciones y a qué recursos del procesador se puede acceder en un cierto instante de tiempo.&lt;br /&gt;
&lt;br /&gt;
En la actualidad, un procesador ofrece como mínimo dos modos de operación(ejecución) que son:&lt;br /&gt;
&lt;br /&gt;
* '''Modo supervisor''', que permite la ejecución de todo el conjunto de instrucciones que ofrece el procesador (no tiene ninguna relación con el modo &amp;quot;root&amp;quot; o administrador de algunos sistemas operativos).&lt;br /&gt;
* '''Modo usuario''', que tiene algunas restricciones de acceso a aspectos del procesador o de ejecución de instrucciones.&lt;br /&gt;
&lt;br /&gt;
== Núcleo del sistema operativo ==&lt;br /&gt;
&lt;br /&gt;
El núcleo del sistema operativo, también conocido por la terminología inglesa ''kernel'', es la parte más esencial del sistema operativo. Se trata de la capa visible del software más baja del sistema que provee y gestiona los recursos del sistema de forma segura a través de las llamadas al sistema.&lt;br /&gt;
&lt;br /&gt;
El núcleo de un sistema operativo suele operar en modo supervisor. Al operar en dicho modo un error de programación en el núcleo del sistema operativo puede resultar en un error fatal del cual el sistema sólo puede recuperarse mediante el reinicio del sistema. A tal error fatal también se le conoce en los sistemas operativos UNIX por la locución inglesa ''[http://es.wikipedia.org/wiki/Kernel_panic kernel panic]'' y en los sistemas operativos Windows por el nombre de ''[http://www.google.es/url?sa=t&amp;amp;source=web&amp;amp;cd=1&amp;amp;ved=0CCwQFjAA&amp;amp;url=http%3A%2F%2Fes.wikipedia.org%2Fwiki%2FPantalla_azul_de_la_muerte&amp;amp;ei=s02WTqvCCMjHtAaxuJyBBA&amp;amp;usg=AFQjCNE2tZra15VdohxjrhSogTQZOVedKg Pantallazo azul o BSOD]''.&lt;br /&gt;
&lt;br /&gt;
== Tipos de Sistemas Operativos ==&lt;br /&gt;
&lt;br /&gt;
Los sistemas operativos se pueden clasificar en base a la cantidad de funcionalidad implementada en su núcleo. En general distinguimos dos tipos de sistemas operativos:&lt;br /&gt;
&lt;br /&gt;
* '''Monolíticos:''' son núcleos de gran tamaño (muchas líneas de código) con un alto número de funcionalidades, las cuales normalmente son compiladas junto al núcleo en el mismo momento.&lt;br /&gt;
* '''Micronúcleos:''' son núcleos de pequeño tamaño que fueron compilados sólo con las necesidades más básicas del sistema operativo. El resto de funcionalidades son añadidas mediante la adición de módulos externos al núcleo, lo que les proporciona flexibilidad y facilidad de ampliación en detrimento del desempeño necesario para la gestión dinámica de éstos.&lt;br /&gt;
* '''Pico/Nanonúcleos:''' se puede considerar un subtipo de Micronúcleo, son núcleos muy pequeños y flexibles, incluso mas pequeños que los Micronúcleos. Se usan en sistemas muy específicos, como satélites, en los que ya se sabe los procesos que se van a realizar. Son muy fiables.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
No obstante, existen tipologías híbridas o que acentúan algunos aspectos, que también detallamos en esta sección.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:OS-structure2b.svg|880px| Comparativa de distribución de funcionalidades entre distintos tipos de SO]]&lt;br /&gt;
&lt;br /&gt;
=== Sistemas operativos Monolíticos ===&lt;br /&gt;
&lt;br /&gt;
Los sistema operativos monolíticos se caracterizan por emplear un núcleo que implementa la planificación de procesos, el sistema de comunicación de procesos, el sistema de sincronizacion de procesos, la administración de la memoria principal, la administración de ficheros y la gestión de los dispositivos de entrada/salida. Por tanto, a mayor funcionalidad implementada en el núcleo, mayor número de líneas de código que se ejecutan en modo supervisor.&lt;br /&gt;
&lt;br /&gt;
Los sistemas operativos monolíticos son los predominantes hoy día, algunos ejemplos son:&lt;br /&gt;
&lt;br /&gt;
* Sistemas operativos UNIX, tales como FreeBSD, NetBSD y OpenBSD. &lt;br /&gt;
* Sistemas operativos GNU/Linux.&lt;br /&gt;
* DOS, tales como MS-DOS y DR-DOS.&lt;br /&gt;
&lt;br /&gt;
Como inconveniente, al emplear un núcleo que incluye gran parte de las funcionalidades básicas del sistema operativo, dispone de un alto número de líneas de código ejecutándose en modo supervisor. Por ello, un error de programación en el núcleo puede provocar un ''kernel panic''. Además el hecho de añadir nuevas funcionalidades provocaría una nueva recompilación del núcleo llevando a reiniciar el sistema para que se apliquen los nuevos cambios.&lt;br /&gt;
&lt;br /&gt;
Como principal ventaja, los sistemas operativo monolíticos ofrecen un alto rendimiento puesto que las peticiones entre los diferentes componentes se reducen a invocaciones de funciones.&lt;br /&gt;
&lt;br /&gt;
=== Sistemas operativos Micronúcleo ===&lt;br /&gt;
&lt;br /&gt;
También conocidos como sistemas operativos exokernel o exonúcleo, se caracterizan por disponer de un núcleo que implementa únicamente:&lt;br /&gt;
&lt;br /&gt;
* Planificación de procesos&lt;br /&gt;
* Mecanismo de comunicación entre procesos&lt;br /&gt;
* Gestión de interrupciones&lt;br /&gt;
&lt;br /&gt;
Además, existen procesos servidores que están fuera del núcleo, que se ejecutan en modo usuario del procesador, y que implementan la:&lt;br /&gt;
&lt;br /&gt;
* Administración de memoria principal&lt;br /&gt;
* Administración de ficheros&lt;br /&gt;
* Gestión de dispositivos de entrada/salida.&lt;br /&gt;
&lt;br /&gt;
Siguiendo este esquema, cuando un proceso cualquiera solicita un servicio a través de una llamada al sistema, el micronúcleo canaliza la petición al proceso servidor correspondiente. Dicha comunicación se realiza mediante mensajería.&lt;br /&gt;
&lt;br /&gt;
La principal ventaja de los sistemas operativos micronúcleo es que, al ejecutar menos líneas de código en modo supervisor, de manera intuitiva son más fiables. Otras ventajas son que se garantiza el aislamiento de las partes que están fuera del núcleo, como los módulos son independientes unos de otros, si cae alguno de ello los demás no se ven afectados y pueden seguir funcionando.&lt;br /&gt;
&lt;br /&gt;
Sin embargo, el principal problema que presentan es el rendimiento, puesto que cualquier petición requiere mensajería, que lleva consigo un coste extra debido a la construcción de los mensajes, el reparto y la interpretación. Son estos problemas relacionados con el rendimiento los que hacen que no existan sistemas operativos micronúcleo desplegables en productivo, a excepción de Minix 2, que tiene propósitos educativos. Otro ejemplo de micronúcleo es Symbian OS.&lt;br /&gt;
&lt;br /&gt;
=== Sistemas basados en Máquinas Virtuales ===&lt;br /&gt;
&lt;br /&gt;
Implementan el material (hardware) en el software. Algunos sistemas operativos ofrecen técnicas de paravirtualización.&lt;br /&gt;
&lt;br /&gt;
'''Paravirtualización:''' técnica de programación que ofrecen algunos SO anfitrión para facilitar la virtualización y el rendimiento de máquinas virtuales. Ofrecen llamadas directas al sistema &lt;br /&gt;
o acceso a una API especial del anfitrión para acceder directamente a los recursos. Observamos que se deposita una gran confianza en los procesos de la VM por motivos de rendimiento.&lt;br /&gt;
&lt;br /&gt;
* Ventajas de las Máquinas Virtuales&lt;br /&gt;
** Ahorro de coste material.&lt;br /&gt;
** Se pueden tener diferentes SO en un mismo sistema.&lt;br /&gt;
** Se adapta a las necesidades de usuario.&lt;br /&gt;
** Se puede deslocalizar la máquina virtual (deslocalización: migrar a otro SO sin sufrir ningún cambio ).&lt;br /&gt;
&lt;br /&gt;
* Desventajas de las Máquinas Virtuales &lt;br /&gt;
** Rendimiento  (KVM +  paravirtualización 10%).&lt;br /&gt;
** Punto único de fallos(si falla algún componente y las aplicaciones están montadas en él provoca un fallo general).&lt;br /&gt;
&lt;br /&gt;
== Otro material a consultar ==&lt;br /&gt;
&lt;br /&gt;
El estudiante puede encontrar el siguiente material de interés para complementar sus conocimientos:&lt;br /&gt;
&lt;br /&gt;
* Debate entre Linus Torvalds, creador del núcleo Linux, que sigue el paradigma monolítico y Andrew S. Tanembaum, creador de Minux, que sigue el modelo micronúcleo: http://oreilly.com/catalog/opensources/book/appa.html (en inglés).&lt;/div&gt;</summary>
		<author><name>Jesdiamar</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Archivo:OS-structure2b.svg&amp;diff=1670</id>
		<title>Archivo:OS-structure2b.svg</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Archivo:OS-structure2b.svg&amp;diff=1670"/>
				<updated>2011-11-07T17:06:23Z</updated>
		
		<summary type="html">&lt;p&gt;Jesdiamar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jesdiamar</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=%C3%8Dndices_de_evaluaci%C3%B3n&amp;diff=1491</id>
		<title>Índices de evaluación</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=%C3%8Dndices_de_evaluaci%C3%B3n&amp;diff=1491"/>
				<updated>2011-10-18T11:17:59Z</updated>
		
		<summary type="html">&lt;p&gt;Jesdiamar: /* ¿Cómo se evalúa un criterio de planificación? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= ¿Cómo se evalúa un criterio de planificación? =&lt;br /&gt;
&lt;br /&gt;
En base a los siguientes parámetros:&lt;br /&gt;
&lt;br /&gt;
* Throughput (tasa de transferencia, en castellano), indica la cantidad de procesos en estado activo por unidad de tiempo. Un throughput alto es un indicador de un buen planificador (se mide en nºprocesos/segundo).&lt;br /&gt;
* Latencia, indica el tiempo que tardar un planificador de procesos en seleccionar qué proceso pasa a estado activo. Si el planificador toma mucho tiempo en decidir qué proceso pasa a estado activo, se dice que la latencia será alta (se mide en segundos).&lt;br /&gt;
&lt;br /&gt;
Un buen planificador ofrecerá un throughput alto y una latencia baja.&lt;br /&gt;
&lt;br /&gt;
Además, existen otros índices que nos permiten evaluar el planificador:&lt;br /&gt;
&lt;br /&gt;
* '''Tiempo de ejecución''' (t&amp;lt;sub&amp;gt;ejecución&amp;lt;/sub&amp;gt;): unidades de tiempo que requiere el proceso para finalizar su ejecución.&lt;br /&gt;
* '''Tiempo de terminación''' (T&amp;lt;sub&amp;gt;terminación&amp;lt;/sub&amp;gt;): diferencia entre el instante de lanzamiento y el instante de terminación.&lt;br /&gt;
* '''Tiempo perdido''': T-t . Es el tiempo durante el cual un proceso no está asignado al procesador.&lt;br /&gt;
* '''Tiempo de inactividad''': tiempo durante el cual el procesador está ocioso (''idle'', en inglés), es decir, que no tienen ningún proceso asignado.&lt;br /&gt;
* '''Tiempo del sistema''': tiempo empleado por el [[planificador de procesos|planificador]] para la conmutación de procesos.&lt;br /&gt;
* '''Tiempo de espera''': tiempo desde el instante de lanzamiento hasta que el proceso pasa a estado preparado.&lt;br /&gt;
* '''Índice de penalización''': T/t = x. Se interpreta de la siguiente manera, un proceso ha tardado x-1 veces más en ejecutarse que si hubiera tenido el procesador en exclusividad y sin que se hubiese producido ningún bloqueo.&lt;br /&gt;
* '''Índice de respuesta''': inverso del índice de penalización (1/x).&lt;br /&gt;
&lt;br /&gt;
Suponga el siguiente ejemplo, en el que hay dos procesos Px y Py, para ilustrar los índices definidos:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;     indica que el proceso está preparado&lt;br /&gt;
  &amp;gt;     indica que el proceso ha finalizado su ejecución &lt;br /&gt;
  $     indica que al proceso se le ha retirado el procesador&lt;br /&gt;
  X     indica la ejecución del planificador para la conmutación&lt;br /&gt;
 &lt;br /&gt;
                |   |   |   |   |   |   |&lt;br /&gt;
 Px             &amp;lt;---|---$   |---&amp;gt;   |   |&lt;br /&gt;
 Py             |   |   &amp;lt;---&amp;gt;   |   |   |&lt;br /&gt;
 planificador   |   |   X   X   |   |   |&lt;br /&gt;
                |___|___|___|___|___|___|___&lt;br /&gt;
                  0   1   2   3   4   5   6&lt;br /&gt;
 &lt;br /&gt;
                                      tiempo -&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el proceso Px:&lt;br /&gt;
&lt;br /&gt;
* t   = 3 : Indica que el proceso Px requiere 3 unidades de tiempo para ejecutarse.&lt;br /&gt;
* T   = 4 : unidades de tiempo desde que se lanza hasta que se finaliza el proceso Px&lt;br /&gt;
* T-t = 1 : unidades de tiempo durante la cual el proceso Px no está asignado al procesador, por tanto, no progresa en su actividad.&lt;br /&gt;
* x   = 4/3 = 1.34 : el proceso Px ha tardado un 34% de tiempo más en ejecutarse que si lo hubiera tenido en exclusividad (al tener que haber que compartido el procesador con Py).&lt;br /&gt;
&lt;br /&gt;
En el ejemplo anterior, los tiempos de espera y del sistema se suponen despreciables (en la práctica no lo son, aunque son muy pequeños con respecto a los ilustrados).&lt;/div&gt;</summary>
		<author><name>Jesdiamar</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Archivo:OS-Structure2E.svg&amp;diff=1488</id>
		<title>Archivo:OS-Structure2E.svg</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Archivo:OS-Structure2E.svg&amp;diff=1488"/>
				<updated>2011-10-18T11:00:39Z</updated>
		
		<summary type="html">&lt;p&gt;Jesdiamar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jesdiamar</name></author>	</entry>

	</feed>