<?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=Danplaseg</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=Danplaseg"/>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php/Especial:Contribuciones/Danplaseg"/>
		<updated>2026-05-06T17:11:21Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.29.0</generator>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=P%C3%A1gina_con_listado_de_personas_que_han_contribuido&amp;diff=2425</id>
		<title>Página con listado de personas que han contribuido</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=P%C3%A1gina_con_listado_de_personas_que_han_contribuido&amp;diff=2425"/>
				<updated>2012-01-28T13:28:35Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A continuación, la lista de usuarios/as de la Universidad de Sevilla que han contribuido a la wiki. Si ponéis tu usuario/a estás solicitando al profesor que evalúe tus contribuciones a la wiki para la subida de notas de hasta 2 puntos posible:&lt;br /&gt;
&lt;br /&gt;
* luigarhor&lt;br /&gt;
* rafperper&lt;br /&gt;
* sergaralo&lt;br /&gt;
* josalgrod1&lt;br /&gt;
* felgaroje&lt;br /&gt;
* luimunlei&lt;br /&gt;
* [https://1984.lsi.us.es/wiki-ssoo/index.php/Usuario:Lorruimor Lorruimor]&lt;br /&gt;
* albsolnog&lt;br /&gt;
* framorexp&lt;br /&gt;
* javgarang&lt;br /&gt;
* FerGuaTol&lt;br /&gt;
* jesgonbel&lt;br /&gt;
* fraperdom&lt;br /&gt;
* antdomflo&lt;br /&gt;
* antmorzam&lt;br /&gt;
* migoligon&lt;br /&gt;
* danplaseg&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Dise%C3%B1o_modular_E/S&amp;diff=2352</id>
		<title>Diseño modular E/S</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Dise%C3%B1o_modular_E/S&amp;diff=2352"/>
				<updated>2012-01-20T22:06:28Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: /Aclaracion sobre SSI&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La idea clave de esta arquitectura en capas es hacer independiente al proceso del dispositivo. Por lo general, en ingeniería del software, la independencia del proveedor es una propiedad muy deseable.&lt;br /&gt;
&lt;br /&gt;
                                              \&lt;br /&gt;
    ,-&amp;gt;  Procesos de espacio de usuario  -.    |&lt;br /&gt;
    |                                     |    |&lt;br /&gt;
    |  --------------------------------   |    |&lt;br /&gt;
    |                                     |    |&lt;br /&gt;
    `-     Llamadas al sistemas           |    |&lt;br /&gt;
        ej. open, read, write, close   &amp;lt;--´    |&lt;br /&gt;
    ,-&amp;gt;   (Software independiente de E/S)       &amp;gt;  Software&lt;br /&gt;
    |                                    -.    |&lt;br /&gt;
    |  --------------------------------   |    |&lt;br /&gt;
    `--                                   |    |&lt;br /&gt;
    ,-&amp;gt;                                   |    |                   &lt;br /&gt;
    |       Gestor de dispositivo       &amp;lt;-´    |&lt;br /&gt;
    |  -----+                                  |&lt;br /&gt;
    `-      |                            -.    |&lt;br /&gt;
    ,-&amp;gt; SSI |                             |    /&lt;br /&gt;
    |  --------------------------------   |   &lt;br /&gt;
    |                                     |    \&lt;br /&gt;
    `-           Puerto de E/S          &amp;lt;-´    |&lt;br /&gt;
                                               |&lt;br /&gt;
    ,-&amp;gt;                                 --.    |&lt;br /&gt;
    |  --------------------------------   |     &amp;gt;   Hardware     &lt;br /&gt;
    |                                     |    |&lt;br /&gt;
    `-         Dispositivo E/S          &amp;lt;-´    |&lt;br /&gt;
                                               |&lt;br /&gt;
       --------------------------------        /&lt;br /&gt;
&lt;br /&gt;
Esta abstracción permite:&lt;br /&gt;
&lt;br /&gt;
* Hacer a los procesos independientes de los dispositivos de E/S. Esto es deseable en cuanto a que el fabricante del dispositivo podría dejar de fabricar el dispositivo, por tanto, el proceso tendría que ser reescrito para soportar el nuevo dispositivo. De igual manera, si el dispositivo para el que está diseñado el proceso que conoce los detalles de bajo nivel no está disponible en el sistema, nuestro proceso quedaría inservible.&lt;br /&gt;
* Forzar a que un proceso tenga que pasar por el sistema operativo, que es quien garantiza que el reparto de recursos es equitativo. Si un proceso dispone de acceso directo a un dispositivo, podría adoptar un comportamiento ''abusón'' de manera que no permitiera a otros procesos emplearlo.&lt;br /&gt;
&lt;br /&gt;
'''Nota''': el SSI es una subrutina de manejo de interrupciones.&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Estructura_t%C3%ADpica_de_dispositivo_E/S&amp;diff=2351</id>
		<title>Estructura típica de dispositivo E/S</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Estructura_t%C3%ADpica_de_dispositivo_E/S&amp;diff=2351"/>
				<updated>2012-01-20T21:21:55Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: /* Gestor de dispositivos */ posible mezcolanza de términos?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En general, la estructura típica de un dispositivo de entrada/salida está dividida en tres partes:&lt;br /&gt;
&lt;br /&gt;
* '''Adaptador de Entrada/Salida del ordenador, o interfaz del bus:''' Se encarga de traducir las señales al dialecto empleado por el bus del ordenador. Algunos ejemplos de interfaces de este tipo son los buses PCI, PCMCIA, USB, PCI-express o SATA entre muchos otros.&lt;br /&gt;
* '''Control del dispositivo, o puerto de lectura/escritura:''' Ofrece una interfaz que es empleada por el gestor de dispositivos para gobernar el dispositivo, que dispone de:&lt;br /&gt;
**Registros de órdenes&lt;br /&gt;
**Registros de estado&lt;br /&gt;
**Registros de lectura/escritura, o alternativamente una pequeña memoria propia.&lt;br /&gt;
* '''Adaptador de Entrada/Salida del dispositivo, o interfaz del dispositivo:''' Se encarga de traducir las señales al dialecto empleado por el dispositivo.&lt;br /&gt;
&lt;br /&gt;
Cuanto más elaborado sea el puerto de lectura/escritura, mayor rendimiento se puede llegar a alcanzar, puesto que el gestor de dispositivo será más sencillo (y eso implica menor número de instrucciones a ejecutar en el gestor de dispositivo).&lt;br /&gt;
&lt;br /&gt;
La conexión existente entre el procesador y el dispositivo de E/S queda resumida de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Dispositivos ES.svg|Estructura del dispositivo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Gestor de dispositivos =&lt;br /&gt;
&lt;br /&gt;
El gestor de dispositivo, popularmente conocido por la palabra inglesa ''driver'', es la parte del sistema operativo que se encarga de gobernar un cierto dispositivo o una familia de dispositivos de naturaleza similar. El gestor de dispositivo se trata de una pieza de software que conoce los detalles de bajo nivel del dispositivo. De esta manera el driver hace uso del conjunto de instrucciones que ofrece el puerto de E/S[[['''revisar por favor: es puerto entrada/salida o puerto lectura/escritura? aparece indistintamente en varios sitios''']]], los registros de estado y de lectura&lt;br /&gt;
y escritura, para gobernar el dispositivo. Si el fabricante del dispositivo no ofrece un ''driver'' para un cierto sistema operativo, el dispositivo y los recursos que ofrece no puede ser gestionado por el sistema operativo. Por lo general el fabricante de un dispositivo desarrolla el gestor de dispositivo para los sistemas operativos mayoritarios (i.e. Windows y Linux) para asegurar que su dispositivo alcanza la mayor cuota de usuarios posibles.&lt;br /&gt;
&lt;br /&gt;
Los gestores de dispositivos representan en torno al 70% de los sistemas operativos&amp;lt;ref&amp;gt;Construction of a Highly Dependable Operating System, Proc. 6th European Dependable Computing Conference (EDCC-6), pp. 3-12, Oct. 2006&amp;lt;/ref&amp;gt;. Por lo general, en los sistemas operativos monolíticos se ejecutan en el espacio del núcleo del sistema operativo por razones de rendimiento. Por tanto, se ejecutan en modo privilegiado, así un error de programación en un ''driver'' lleve a un cuelgue completo del sistema con casi total seguridad. Se estima que en torno al 85% de cuelgues de Microsoft Windows XP &amp;lt;ref&amp;gt;Recovering Device Drivers, Proc. OSDI '04, pp. 1-16, 2004&amp;lt;/ref&amp;gt;se debe a errores de programación en ''drivers''.&lt;br /&gt;
&lt;br /&gt;
No obstante, en sistemas operativos convencionales como Windows, Linux y Mac, existen mecanismos que permiten ejecutar ''drivers'' como procesos de usuario, tal y como sucede en sistemas operativo de tipo micronúcleo. De esta manera, un error de programación no produce el cuelgue del sistema completo. No obstante, dichos gestores de dispositivos se limitan a dispositivos particularmente lentos en los que la tasa de transferencia de datos es baja y los tiempos de respuesta del dispositivo son altos, por ejemplo, los gestores de dispositivos para lectores de tarjetas inteligentes (smartcards, lo que incluye las tarjetas SIM que se emplean en telefonía móvil) en Linux funcionan en espacio de usuario.&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Estructura_t%C3%ADpica_de_dispositivo_E/S&amp;diff=2350</id>
		<title>Estructura típica de dispositivo E/S</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Estructura_t%C3%ADpica_de_dispositivo_E/S&amp;diff=2350"/>
				<updated>2012-01-20T20:54:52Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: cambio de orden de elementos para recordar gráficamente&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En general, la estructura típica de un dispositivo de entrada/salida está dividida en tres partes:&lt;br /&gt;
&lt;br /&gt;
* '''Adaptador de Entrada/Salida del ordenador, o interfaz del bus:''' Se encarga de traducir las señales al dialecto empleado por el bus del ordenador. Algunos ejemplos de interfaces de este tipo son los buses PCI, PCMCIA, USB, PCI-express o SATA entre muchos otros.&lt;br /&gt;
* '''Control del dispositivo, o puerto de lectura/escritura:''' Ofrece una interfaz que es empleada por el gestor de dispositivos para gobernar el dispositivo, que dispone de:&lt;br /&gt;
**Registros de órdenes&lt;br /&gt;
**Registros de estado&lt;br /&gt;
**Registros de lectura/escritura, o alternativamente una pequeña memoria propia.&lt;br /&gt;
* '''Adaptador de Entrada/Salida del dispositivo, o interfaz del dispositivo:''' Se encarga de traducir las señales al dialecto empleado por el dispositivo.&lt;br /&gt;
&lt;br /&gt;
Cuanto más elaborado sea el puerto de lectura/escritura, mayor rendimiento se puede llegar a alcanzar, puesto que el gestor de dispositivo será más sencillo (y eso implica menor número de instrucciones a ejecutar en el gestor de dispositivo).&lt;br /&gt;
&lt;br /&gt;
La conexión existente entre el procesador y el dispositivo de E/S queda resumida de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Dispositivos ES.svg|Estructura del dispositivo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Gestor de dispositivos =&lt;br /&gt;
&lt;br /&gt;
El gestor de dispositivo, popularmente conocido por la palabra inglesa ''driver'', es la parte del sistema operativo que se encarga de gobernar un cierto dispositivo o una familia de dispositivos de naturaleza similar. El gestor de dispositivo se trata de una pieza de software que conoce los detalles de bajo nivel del dispositivo. De esta manera el driver hace uso del conjunto de instrucciones que ofrece el puerto de E/S, los registros de estado y de lectura&lt;br /&gt;
y escritura, para gobernar el dispositivo. Si el fabricante del dispositivo no ofrece un ''driver'' para un cierto sistema operativo, el dispositivo y los recursos que ofrece no puede ser gestionado por el sistema operativo. Por lo general el fabricante de un dispositivo desarrolla el gestor de dispositivo para los sistemas operativos mayoritarios (i.e. Windows y Linux) para asegurar que su dispositivo alcanza la mayor cuota de usuarios posibles.&lt;br /&gt;
&lt;br /&gt;
Los gestores de dispositivos representan en torno al 70% de los sistemas operativos&amp;lt;ref&amp;gt;Construction of a Highly Dependable Operating System, Proc. 6th European Dependable Computing Conference (EDCC-6), pp. 3-12, Oct. 2006&amp;lt;/ref&amp;gt;. Por lo general, en los sistemas operativos monolíticos se ejecutan en el espacio del núcleo del sistema operativo por razones de rendimiento. Por tanto, se ejecutan en modo privilegiado, así un error de programación en un ''driver'' lleve a un cuelgue completo del sistema con casi total seguridad. Se estima que en torno al 85% de cuelgues de Microsoft Windows XP &amp;lt;ref&amp;gt;Recovering Device Drivers, Proc. OSDI '04, pp. 1-16, 2004&amp;lt;/ref&amp;gt;se debe a errores de programación en ''drivers''.&lt;br /&gt;
&lt;br /&gt;
No obstante, en sistemas operativos convencionales como Windows, Linux y Mac, existen mecanismos que permiten ejecutar ''drivers'' como procesos de usuario, tal y como sucede en sistemas operativo de tipo micronúcleo. De esta manera, un error de programación no produce el cuelgue del sistema completo. No obstante, dichos gestores de dispositivos se limitan a dispositivos particularmente lentos en los que la tasa de transferencia de datos es baja y los tiempos de respuesta del dispositivo son altos, por ejemplo, los gestores de dispositivos para lectores de tarjetas inteligentes (smartcards, lo que incluye las tarjetas SIM que se emplean en telefonía móvil) en Linux funcionan en espacio de usuario.&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=SO_multiprogramables_con_particiones_variables&amp;diff=2196</id>
		<title>SO multiprogramables con particiones variables</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=SO_multiprogramables_con_particiones_variables&amp;diff=2196"/>
				<updated>2011-12-18T19:09:06Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: /* Siguiente ajuste */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este tipo de sistemas, las particiones para cada proceso se van creando a medida que son asignadas al procesador. Tiene como ventaja principal que evitamos el desperdicio de memoria dentro de cada bloque ya que cada uno está hecho a medida para el proceso que contiene. Por el contrario, una vez que un proceso ha concluido, su partición se queda en desuso y sería necesario aplicar algoritmos de desfragmentación de memoria(supone un alto coste de rendimiento) para poder unificar todas las partes que han quedado libres y así reciclar las particiones que quedaron huérfanas. Otra forma de obtener particiones de mayor tamaño es unificar dos o más huecos adyacentes en uno sólo.&lt;br /&gt;
&lt;br /&gt;
''Ejemplo:''&lt;br /&gt;
  _                                 _&lt;br /&gt;
 |_| P1 = 3KB                      |_| P1 = 3KB   &lt;br /&gt;
 |_| P2 = 1KB                      |_| P2 = 1KB&lt;br /&gt;
 |_| P3 = 6KB    =&amp;gt; Finaliza P3 =&amp;gt; |_| Libre = 6KB&lt;br /&gt;
 | |                               | |&lt;br /&gt;
 |_| P4 = 31KB                     |_| P4 = 31KB&lt;br /&gt;
 | |                               | |&lt;br /&gt;
 |_| Libre = 21KB                  |_| Libre = 21KB&lt;br /&gt;
&lt;br /&gt;
Si un nuevo proceso P5 requiriese 24KB de memoria, no podrían serle asignados, ya que los huecos no son contiguos y para disponer de los 27KB libres en total habría que realizar previamente una desfragmentación.&lt;br /&gt;
&lt;br /&gt;
== Elementos de administración ==&lt;br /&gt;
&lt;br /&gt;
* '''Mapas de bits''': Dividiendo la memoria en bloques, se utiliza un bit para representar si dicho bloque está libre o asignado.&lt;br /&gt;
&lt;br /&gt;
* '''Listas de control''': Se almacena en una lista el tamaño de los huecos y las posiciones de memoria entre las que se encuentran comprendidos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Criterios de asignación =&lt;br /&gt;
&lt;br /&gt;
== Primer ajuste ==&lt;br /&gt;
&lt;br /&gt;
Consiste en asignar el primer hueco disponible que tenga un espacio suficiente para almacenar el programa. Las dos principales desventajas son su alto desperdicio interno, y el elevado uso de las primeras posiciones de memoria. Este último inconveniente repercute negativamente en la circuitería, debido a que se produce un mayor desgaste en dichas posiciones.&lt;br /&gt;
&lt;br /&gt;
Ejemplo: Suponiendo una memoria principal de 32 KB.&lt;br /&gt;
&lt;br /&gt;
     | H0 | t | M |&lt;br /&gt;
 -------------------&lt;br /&gt;
 P1  | 0  | 5 | 6 |&lt;br /&gt;
 P2  | 1  | 3 | 6 |&lt;br /&gt;
 P3  | 2  | 5 | 8 |&lt;br /&gt;
 P4  | 3  | 1 | 7 |&lt;br /&gt;
 P5  | 4  | 2 | 7 |&lt;br /&gt;
 P6  | 5  | 2 | 5 |&lt;br /&gt;
&lt;br /&gt;
Solución:&lt;br /&gt;
                         0-5&lt;br /&gt;
             P1  &amp;lt;---|---|---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |    &lt;br /&gt;
                           6-11&lt;br /&gt;
             P2  |   &amp;lt;---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |       &lt;br /&gt;
                                 12-19&lt;br /&gt;
             P3  |   |   &amp;lt;---|---|---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |       &lt;br /&gt;
                             20-26    &lt;br /&gt;
             P4  |   |   |   &amp;lt;---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |      &lt;br /&gt;
                                   20-26&lt;br /&gt;
             P5  |   |   |   |   &amp;lt;---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
                                        0-4             &lt;br /&gt;
             P6  |   |   |   |   |   &amp;lt;---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
            -----|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---&amp;gt; t&lt;br /&gt;
                 0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  20&lt;br /&gt;
&lt;br /&gt;
== Siguiente ajuste ==&lt;br /&gt;
&lt;br /&gt;
Se continúa a partir de la posición de la última asignación realizada.Es muy probable que haya un hueco a partir de esa posición, reduciendo la longitud de la búsqueda. De esta forma se resuelve el inconveniente de usar en exceso las primeras posiciones de la memoria.&lt;br /&gt;
&lt;br /&gt;
Ejemplo: Suponiendo una memoria principal de 32 KB.&lt;br /&gt;
&lt;br /&gt;
    | H0 | t | M |&lt;br /&gt;
 -------------------&lt;br /&gt;
 P1  | 0  | 5 | 6 |&lt;br /&gt;
 P2  | 1  | 3 | 6 |&lt;br /&gt;
 P3  | 2  | 5 | 8 |&lt;br /&gt;
 P4  | 3  | 1 | 7 |&lt;br /&gt;
 P5  | 4  | 2 | 7 |&lt;br /&gt;
 P6  | 5  | 2 | 5 |&lt;br /&gt;
&lt;br /&gt;
Solución:&lt;br /&gt;
&lt;br /&gt;
                        0-5&lt;br /&gt;
            P1  &amp;lt;---|---|---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |    &lt;br /&gt;
                          6-11&lt;br /&gt;
            P2  |   &amp;lt;---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |       &lt;br /&gt;
                                12-19&lt;br /&gt;
            P3  |   |   &amp;lt;---|---|---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |       &lt;br /&gt;
                            20-26    &lt;br /&gt;
            P4  |   |   |   &amp;lt;---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |      &lt;br /&gt;
                                  20-26&lt;br /&gt;
            P5  |   |   |   |   &amp;lt;---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
                                      27-31             &lt;br /&gt;
            P6  |   |   |   |   |   &amp;lt;---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
           -----|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---&amp;gt; t&lt;br /&gt;
                0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  20&lt;br /&gt;
&lt;br /&gt;
'''DUDA:'''&lt;br /&gt;
En este ejercicio, en el instante 4, el proceso 5 vuelve a entrar en las posiciones de memoria 20-26, pero se supone que en este criterio se usan los espacios siguientes a los que ya se han usado, que, en este caso, serían 27-33. Si no se hace así estaríamos en el mismo criterio que antes (primer ajuste). ¿No?&lt;br /&gt;
&lt;br /&gt;
Tengo la misma duda; además, ¿Qué es lo que ocurre cuando llega al final de la memoria?¿vuelve a empezar? por ejemplo si fuera 27-33... ¿no entraría el proceso en la memoria?(un poco absurdo) ¿o volvería al principio desde 0 y se saltaría esos últimos huecos?...--[[Usuario:Danplaseg|Danplaseg]] 19:08 18 dic 2011 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Mejor ajuste ==&lt;br /&gt;
&lt;br /&gt;
Consiste en asignarle al proceso el hueco con menor ajuste interno, i.e, el hueco el cual al serle asignado el proceso deja menos espacio sin utilizar. Su mayor inconveniente es su orden de complejidad (orden lineal, ''O(n)'')&lt;br /&gt;
&lt;br /&gt;
== Peor ajuste ==&lt;br /&gt;
&lt;br /&gt;
Al contrario que el criterio anterior, se asigna a cada proceso el hueco con mayor ajuste interno, i.e, el hueco el cual al serle asignado el proceso deja más espacio sin utilizar. Tiene el mismo inconveniente en cuanto a orden de complejidad que el mejor ajuste.&lt;br /&gt;
&lt;br /&gt;
== Ajuste rápido ==&lt;br /&gt;
&lt;br /&gt;
Mediante listas de control, se agrupan los huecos disponibles según su tamaño (0 &amp;lt; t &amp;lt; 10, 10 &amp;lt; t &amp;lt; 20, etc.). De esta manera, cuando se necesite un hueco, se seleccionarán los del grupo del tamaño que corresponda. En el caso de que haya varios huecos disponibles, se seleccionará uno en base a cualquiera de los criterios anteriores.&lt;br /&gt;
&lt;br /&gt;
== Método de los compañeros ==&lt;br /&gt;
&lt;br /&gt;
Es una variante del ajuste rápido, en el que los huecos se dividen en potencias de 2: 2&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;, 2&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;, ..., 2&amp;lt;sup&amp;gt;k&amp;lt;/sup&amp;gt;. No es un método usado en la práctica, ya que al realizar redondeos a potencias de 2, se produce un elevado desperdicio interno.&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=SO_multiprogramables_con_particiones_variables&amp;diff=2195</id>
		<title>SO multiprogramables con particiones variables</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=SO_multiprogramables_con_particiones_variables&amp;diff=2195"/>
				<updated>2011-12-18T19:08:05Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: /* Siguiente ajuste */ dudas&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este tipo de sistemas, las particiones para cada proceso se van creando a medida que son asignadas al procesador. Tiene como ventaja principal que evitamos el desperdicio de memoria dentro de cada bloque ya que cada uno está hecho a medida para el proceso que contiene. Por el contrario, una vez que un proceso ha concluido, su partición se queda en desuso y sería necesario aplicar algoritmos de desfragmentación de memoria(supone un alto coste de rendimiento) para poder unificar todas las partes que han quedado libres y así reciclar las particiones que quedaron huérfanas. Otra forma de obtener particiones de mayor tamaño es unificar dos o más huecos adyacentes en uno sólo.&lt;br /&gt;
&lt;br /&gt;
''Ejemplo:''&lt;br /&gt;
  _                                 _&lt;br /&gt;
 |_| P1 = 3KB                      |_| P1 = 3KB   &lt;br /&gt;
 |_| P2 = 1KB                      |_| P2 = 1KB&lt;br /&gt;
 |_| P3 = 6KB    =&amp;gt; Finaliza P3 =&amp;gt; |_| Libre = 6KB&lt;br /&gt;
 | |                               | |&lt;br /&gt;
 |_| P4 = 31KB                     |_| P4 = 31KB&lt;br /&gt;
 | |                               | |&lt;br /&gt;
 |_| Libre = 21KB                  |_| Libre = 21KB&lt;br /&gt;
&lt;br /&gt;
Si un nuevo proceso P5 requiriese 24KB de memoria, no podrían serle asignados, ya que los huecos no son contiguos y para disponer de los 27KB libres en total habría que realizar previamente una desfragmentación.&lt;br /&gt;
&lt;br /&gt;
== Elementos de administración ==&lt;br /&gt;
&lt;br /&gt;
* '''Mapas de bits''': Dividiendo la memoria en bloques, se utiliza un bit para representar si dicho bloque está libre o asignado.&lt;br /&gt;
&lt;br /&gt;
* '''Listas de control''': Se almacena en una lista el tamaño de los huecos y las posiciones de memoria entre las que se encuentran comprendidos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Criterios de asignación =&lt;br /&gt;
&lt;br /&gt;
== Primer ajuste ==&lt;br /&gt;
&lt;br /&gt;
Consiste en asignar el primer hueco disponible que tenga un espacio suficiente para almacenar el programa. Las dos principales desventajas son su alto desperdicio interno, y el elevado uso de las primeras posiciones de memoria. Este último inconveniente repercute negativamente en la circuitería, debido a que se produce un mayor desgaste en dichas posiciones.&lt;br /&gt;
&lt;br /&gt;
Ejemplo: Suponiendo una memoria principal de 32 KB.&lt;br /&gt;
&lt;br /&gt;
     | H0 | t | M |&lt;br /&gt;
 -------------------&lt;br /&gt;
 P1  | 0  | 5 | 6 |&lt;br /&gt;
 P2  | 1  | 3 | 6 |&lt;br /&gt;
 P3  | 2  | 5 | 8 |&lt;br /&gt;
 P4  | 3  | 1 | 7 |&lt;br /&gt;
 P5  | 4  | 2 | 7 |&lt;br /&gt;
 P6  | 5  | 2 | 5 |&lt;br /&gt;
&lt;br /&gt;
Solución:&lt;br /&gt;
                         0-5&lt;br /&gt;
             P1  &amp;lt;---|---|---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |    &lt;br /&gt;
                           6-11&lt;br /&gt;
             P2  |   &amp;lt;---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |       &lt;br /&gt;
                                 12-19&lt;br /&gt;
             P3  |   |   &amp;lt;---|---|---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |       &lt;br /&gt;
                             20-26    &lt;br /&gt;
             P4  |   |   |   &amp;lt;---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |      &lt;br /&gt;
                                   20-26&lt;br /&gt;
             P5  |   |   |   |   &amp;lt;---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
                                        0-4             &lt;br /&gt;
             P6  |   |   |   |   |   &amp;lt;---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
            -----|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---&amp;gt; t&lt;br /&gt;
                 0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  20&lt;br /&gt;
&lt;br /&gt;
== Siguiente ajuste ==&lt;br /&gt;
&lt;br /&gt;
Se continúa a partir de la posición de la última asignación realizada.Es muy probable que haya un hueco a partir de esa posición, reduciendo la longitud de la búsqueda. De esta forma se resuelve el inconveniente de usar en exceso las primeras posiciones de la memoria.&lt;br /&gt;
&lt;br /&gt;
Ejemplo: Suponiendo una memoria principal de 32 KB.&lt;br /&gt;
&lt;br /&gt;
    | H0 | t | M |&lt;br /&gt;
 -------------------&lt;br /&gt;
 P1  | 0  | 5 | 6 |&lt;br /&gt;
 P2  | 1  | 3 | 6 |&lt;br /&gt;
 P3  | 2  | 5 | 8 |&lt;br /&gt;
 P4  | 3  | 1 | 7 |&lt;br /&gt;
 P5  | 4  | 2 | 7 |&lt;br /&gt;
 P6  | 5  | 2 | 5 |&lt;br /&gt;
&lt;br /&gt;
Solución:&lt;br /&gt;
&lt;br /&gt;
                        0-5&lt;br /&gt;
            P1  &amp;lt;---|---|---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |    &lt;br /&gt;
                          6-11&lt;br /&gt;
            P2  |   &amp;lt;---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |       &lt;br /&gt;
                                12-19&lt;br /&gt;
            P3  |   |   &amp;lt;---|---|---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |       &lt;br /&gt;
                            20-26    &lt;br /&gt;
            P4  |   |   |   &amp;lt;---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |      &lt;br /&gt;
                                  20-26&lt;br /&gt;
            P5  |   |   |   |   &amp;lt;---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
                                      27-31             &lt;br /&gt;
            P6  |   |   |   |   |   &amp;lt;---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
           -----|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---&amp;gt; t&lt;br /&gt;
                0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  20&lt;br /&gt;
&lt;br /&gt;
'''DUDA:'''&lt;br /&gt;
En este ejercicio, en el instante 4, el proceso 5 vuelve a entrar en las posiciones de memoria 20-26, pero se supone que en este criterio se usan los espacios siguientes a los que ya se han usado, que, en este caso, serían 27-33. Si no se hace así estaríamos en el mismo criterio que antes (primer ajuste). ¿No?&lt;br /&gt;
&lt;br /&gt;
Tengo la misma duda; además, ¿Qué es lo que ocurre cuando llega al final de la memoria?¿vuelve a empezar? por ejemplo si fuera 27-33... no entraria el proceso en la memoria?¿o volvería al principio desde 0 y se saltaría esos últimos huecos?...--[[Usuario:Danplaseg|Danplaseg]] 19:08 18 dic 2011 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Mejor ajuste ==&lt;br /&gt;
&lt;br /&gt;
Consiste en asignarle al proceso el hueco con menor ajuste interno, i.e, el hueco el cual al serle asignado el proceso deja menos espacio sin utilizar. Su mayor inconveniente es su orden de complejidad (orden lineal, ''O(n)'')&lt;br /&gt;
&lt;br /&gt;
== Peor ajuste ==&lt;br /&gt;
&lt;br /&gt;
Al contrario que el criterio anterior, se asigna a cada proceso el hueco con mayor ajuste interno, i.e, el hueco el cual al serle asignado el proceso deja más espacio sin utilizar. Tiene el mismo inconveniente en cuanto a orden de complejidad que el mejor ajuste.&lt;br /&gt;
&lt;br /&gt;
== Ajuste rápido ==&lt;br /&gt;
&lt;br /&gt;
Mediante listas de control, se agrupan los huecos disponibles según su tamaño (0 &amp;lt; t &amp;lt; 10, 10 &amp;lt; t &amp;lt; 20, etc.). De esta manera, cuando se necesite un hueco, se seleccionarán los del grupo del tamaño que corresponda. En el caso de que haya varios huecos disponibles, se seleccionará uno en base a cualquiera de los criterios anteriores.&lt;br /&gt;
&lt;br /&gt;
== Método de los compañeros ==&lt;br /&gt;
&lt;br /&gt;
Es una variante del ajuste rápido, en el que los huecos se dividen en potencias de 2: 2&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;, 2&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;, ..., 2&amp;lt;sup&amp;gt;k&amp;lt;/sup&amp;gt;. No es un método usado en la práctica, ya que al realizar redondeos a potencias de 2, se produce un elevado desperdicio interno.&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Bloque_de_control_de_procesos&amp;diff=2058</id>
		<title>Bloque de control de procesos</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Bloque_de_control_de_procesos&amp;diff=2058"/>
				<updated>2011-12-06T22:08:39Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: redundancia&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Para llevar a cabo la gestión de un proceso, es necesario que el sistema operativo guarde cierta información necesaria. Para ello, existe un registro especial que se conoce como '''el bloque de control del proceso BCP, o PCB en inglés (Process Control Block)'''. &lt;br /&gt;
&lt;br /&gt;
El BCP es creado por el Sistema operativo cada vez que aparece un nuevo proceso. Los procesos son conocidos para el sistema operativo y por tanto elegibles para competir por los recursos del sistema sólo cuando existe un BCP activo asociado a ellos. Cuando el programa termina, el BCP es eliminado para dejar espacio libre en el registro, y usarlo para almacenar otros BCP. &lt;br /&gt;
&lt;br /&gt;
El bloque de control de procesos difiere mucho de un sistema a otros, pero existen contenidos comunes:&lt;br /&gt;
&lt;br /&gt;
* '''Identificador del proceso:''' Identificar de forma unívoca al proceso en el sistema, generalmente se emplea un entero sin signo que se denomina PID (Process IDentifier)&lt;br /&gt;
&lt;br /&gt;
* '''Estado del proceso para el planificador de procesos:''' preparado, activo o bloqueado.&lt;br /&gt;
&lt;br /&gt;
* '''Contexto de la ejecución:''' valor de los registros del procesador, bits de estados, etc. Esto es, cada vez que se ejecuta el planificador y se realiza una [[Conmutación de procesos|conmutación de procesos]], la información sobre en qué lugar se encontraba la ejecución del proceso se encuentra guardada aquí, así como el lugar en el que se paró la ejecución del anterior proceso (cada una en su  respectivo BCP).&lt;br /&gt;
&lt;br /&gt;
* '''Aspectos relacionados con la administración de memoria:''' tales como el espacio de direcciones y la cantidad de memoria asignada a un proceso.&lt;br /&gt;
&lt;br /&gt;
* '''Aspectos relacionados con la administración de ficheros:''' tales como los ficheros con los que el proceso está actualmente operando.&lt;br /&gt;
&lt;br /&gt;
* '''Los procesadores en los que el proceso puede ejecutarse:''' en caso de soportar el sistema multiprocesador. &lt;br /&gt;
&lt;br /&gt;
* '''En el caso de un sistema operativo tipo UNIX:''' el proceso padre de dicho proceso y la relación de procesos hijos.&lt;br /&gt;
&lt;br /&gt;
* '''Estadísticas temporales:''' Tiempo de lanzamiento del proceso, tiempo en estado activo, etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En Linux, al PCB se le denomina ''Task Struct'', se puede consultar dicha estructura en:&lt;br /&gt;
&lt;br /&gt;
http://lxr.linux.no/#linux+v2.6.37.2/include/linux/sched.h#L1182&lt;br /&gt;
&lt;br /&gt;
http://lxr.linux.no/linux+v3.0.4/include/linux/sched.h#L1220&lt;br /&gt;
&lt;br /&gt;
En el núcleo de Minix, al PCB se le denomina ''Process table'', puede consultarse su implementación en el siguiente enlace:&lt;br /&gt;
&lt;br /&gt;
http://www.cise.ufl.edu/~cop4600/cgi-bin/lxr/http/source.cgi/kernel/proc.h&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Planificaci%C3%B3n_en_sistemas_multiprocesadores&amp;diff=1661</id>
		<title>Planificación en sistemas multiprocesadores</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Planificaci%C3%B3n_en_sistemas_multiprocesadores&amp;diff=1661"/>
				<updated>2011-11-06T19:36:42Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este tipo de sistemas disponemos de n (n&amp;gt;=2) procesadores, siendo los criterios de planificación los mismos seguidos hasta ahora pero contando con más de un procesador. &lt;br /&gt;
Hay que considerar que la asignación del proceso a un procesador puede ser &lt;br /&gt;
* '''Estática''': en la que el proceso es asignado siempre a dicho procesador mientras este no haya terminado su ejecución.&lt;br /&gt;
* '''Dinámica''': en la que se permite la migración del procesador o balanceo de carga.&lt;br /&gt;
&lt;br /&gt;
Se utiliza principalmente la estática debido al principio de localidad espacio y temporal, cuando un proceso se carga en un procesador se carga en caché los datos más frecuentes accedidos por el proceso. Si cambiamos de procesador a dicho proceso habría que cargar de nuevo los datos en la caché del otro procesador.&lt;br /&gt;
&lt;br /&gt;
Ejemplo de planificación en sistemas multiprocesadores con dos CPU:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Ejemplo de multiprocesador.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Duda: aquí la penalización pa desempatar no nos dice nada, ¿no?... ambos procesos tienen 1 de índice cuando empatan... asi que, ¿por qué se tomó esa decision?¿  --[[Usuario:Danplaseg|Danplaseg]] 19:36 6 nov 2011 (UTC)&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Sol-ejer2-planif-procesos&amp;diff=1644</id>
		<title>Sol-ejer2-planif-procesos</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Sol-ejer2-planif-procesos&amp;diff=1644"/>
				<updated>2011-11-05T17:11:13Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: /* Por prioridades */ eliminando duda, ya lo pillé&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Turno rotatorio estricto =&lt;br /&gt;
&lt;br /&gt;
                     ____|_P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;_|&lt;br /&gt;
          Datos del  _H0_|_0__|_1__|_2__|&lt;br /&gt;
           problema  _t__|_3__|_5__|_6__|&lt;br /&gt;
 &lt;br /&gt;
    P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt; bloquea por E/S cada 1 unidad de tiempo&lt;br /&gt;
    P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt; bloquea por E/S cada 3 unidades de tiempo&lt;br /&gt;
                       &amp;lt; = indica el instante de lanzamiento del proceso&lt;br /&gt;
                       &amp;gt; = indica el instante de finalización del proceso&lt;br /&gt;
                       X = se ejecuta el código del planificador&lt;br /&gt;
                                                                 &lt;br /&gt;
                   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
               Pa  &amp;lt;---|   |   |   |   |---|   |   |   |---&amp;gt;   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
               Pb  |   &amp;lt;---|---|   |   |   |---|   |   |   |---|---&amp;gt;   |   |   |   |   |   |   |   &lt;br /&gt;
               Pc  |   |   &amp;lt;   |---|---|   |   |---|---|   |   |   |---|---&amp;gt;   |   |   |   |   |   &lt;br /&gt;
     Planificador  X   X   |   X   |   X   X   X   |   X   X   |   X   |   X   |   |   |   |   |      &lt;br /&gt;
               ____|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__&amp;gt; t&lt;br /&gt;
                   0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  &lt;br /&gt;
 &lt;br /&gt;
                   _____|_Pa_|_Pb_|_Pc_|&lt;br /&gt;
        Cálculos   __t__|_3__|_5__|_6__|&lt;br /&gt;
       de tiempos  __T__|_10_|_11_|_12_|&lt;br /&gt;
                   _T/t_|3.3_|2.2_|_2__|&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notése que el proceso A no llega a emplear el ''quantum'' que tiene asignado, en ese caso, como indica la [[Criterios_de_planificación|teoría]], se le retira el procesador y el planificador selecciona a otro proceso. Dejar el procesador sin proceso asignado, es decir, ocioso, va contra la lógica del máximo aprovechamiento del procesador. Por ello, he retirado una solución incorrecta que aparecía en esta sección. --[[Usuario:Pneira|Pneira]] 21:15 21 mar 2011 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tengo una duda en este ejercicio, en la unidad de tiempo 6 cuando el planificador activa el proceso Pb, porque motivo solo le asigna una unidad de tiempo?, podria asignarle 2 no? teniendo en cuenta que el quantum = 2. Ademas el proceso B bloquea cada 3 unidades de tiempo, no entiendo porque solo le asigna una unidad y luego activa en la unidad de tiempo 7 el proceso C.  LFE (Luis Fernandez Esteban)&lt;br /&gt;
&lt;br /&gt;
Pues yo diría que es porque se bloquea cada 3, al igual que el A se bloquea a cada unidad. Ya llevaba 1, y con esa actividad, +2 --[[Usuario:PCamino|PCamino]]&lt;br /&gt;
&lt;br /&gt;
Gracias, tienes razon ya lo entendi. LFE (Luis Fernandez Esteban)&lt;br /&gt;
&lt;br /&gt;
DUDA &lt;br /&gt;
En t=3 llegaría el proceso Pa y el proceso Pb a la cola de estado preparado. Como dice en teroía, un proceso que se bloquea sin llegar a agotar su quantum, pasaría al final de  la cola de estados preparados. Por tanto, el siguiente en ejecutarse sería Pb, puesto que Pa viene de estar bloqueado sin agotar su quantum luego pasaría al final de la cola de preparados. ¿Estoy en lo cierto?&lt;br /&gt;
--[[Usuario:josvaldia|josvaldia]]&lt;br /&gt;
&lt;br /&gt;
= Por prioridades =&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la prioridad de los procesos es la siguiente: A&amp;lt;B&amp;lt;C&lt;br /&gt;
&lt;br /&gt;
                     ____|_P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;_|&lt;br /&gt;
          Datos del  _H0_|_0__|_1__|_2__|&lt;br /&gt;
           problema  _t__|_3__|_5__|_6__|&lt;br /&gt;
 &lt;br /&gt;
    P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt; bloquea por E/S cada 1 unidad de tiempo&lt;br /&gt;
    P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt; bloquea por E/S cada 3 unidades de tiempo&lt;br /&gt;
                       &amp;lt; = indica el instante de lanzamiento del proceso&lt;br /&gt;
                       &amp;gt; = indica el instante de finalización del proceso&lt;br /&gt;
                       X = se ejecuta el código del planificador&lt;br /&gt;
                                                                 &lt;br /&gt;
                   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
               P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;  &amp;lt;---|   |   |   |   |   |   |   |   |   |---|   |   |   |---&amp;gt;   |   |   |   |   &lt;br /&gt;
               P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;  |   &amp;lt;---|   |   |   |   |   |   |---|---|   |   |---|---&amp;gt;   |   |   |   |   |            &lt;br /&gt;
               P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;  |   |   &amp;lt;---|---|---|---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |    &lt;br /&gt;
     Planificador  X   X   X   |   |   |   |   |   X   |   X   X   X   |   X   |   |   |   |   |      &lt;br /&gt;
               ____|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__t&lt;br /&gt;
                   0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  &lt;br /&gt;
 &lt;br /&gt;
                   _____|_P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;_|&lt;br /&gt;
        Cálculos   __t__|_3__|_5__|_6__|&lt;br /&gt;
       de tiempos  __T__|_15_|_13_|_6_|&lt;br /&gt;
                   _T/t_|__5_|_2.6|_1__|&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
Alguien me puede explicar ¿por que de 14 a 15 no se procesa nada? AnaBarros&lt;br /&gt;
&lt;br /&gt;
Creo que eso esta mal...y he visto mas fallos por ahi o eso me parece... :S    Luis Fernandez Esteban&lt;br /&gt;
&lt;br /&gt;
Sí lo creo como el C solo debia de empenzar en el 3 pero empienza antes. Ana Barros&lt;br /&gt;
&lt;br /&gt;
Del 14 al 15 no se procesa nada porque sólo quedan los procesos A y B, pero en esa unidad de tiempo ambos están bloqueados (los bloqueos de A y B duran 2 uds. de tiempo)&lt;br /&gt;
&lt;br /&gt;
= Turno rotatorio proporcional al número de procesos =&lt;br /&gt;
&lt;br /&gt;
                     ____|_P&amp;lt;sub&amp;gt;A &amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;C &amp;lt;/sub&amp;gt;_|&lt;br /&gt;
          Datos del  _H0_|_0__|_1__|_2__|&lt;br /&gt;
           problema  _t__|_3__|_5__|_6__|&lt;br /&gt;
 &lt;br /&gt;
                       &amp;lt; = indica el instante de lanzamiento del proceso&lt;br /&gt;
                       &amp;gt; = indica el instante de finalización del proceso&lt;br /&gt;
                       X = se ejecuta el código del planificador&lt;br /&gt;
                                                                 &lt;br /&gt;
                 &amp;lt;sub&amp;gt; &amp;lt;/sub&amp;gt; |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |&lt;br /&gt;
               P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;  &amp;lt;---|   |   |---|   |   |---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |&lt;br /&gt;
               P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;  |   &amp;lt;---|   |   |---|   |   |---|   |   |---|   |---&amp;gt;   |   |   |   |   |   |   |&lt;br /&gt;
               P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;  |   |   &amp;lt;---|   |   |---|   |   |---|---|   |---|   |---&amp;gt;   |   |   |   |   |   |&lt;br /&gt;
    Planificador &amp;lt;sub&amp;gt; &amp;lt;/sub&amp;gt; X   X   X   X   X   X   X   X   X   |   X   X   X   X   |   |   |   |   |   |   |   &lt;br /&gt;
            &amp;lt;sub&amp;gt; &amp;lt;/sub&amp;gt; -----|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---&amp;gt; t&lt;br /&gt;
                   0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  20&lt;br /&gt;
 &lt;br /&gt;
                   _____|_P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;_|&lt;br /&gt;
        Cálculos   __t__|_3__|_5__|_6__|&lt;br /&gt;
       de tiempos  __T__|_7__|_12_|_12_|&lt;br /&gt;
                   _T/t_|2.3_|2.4_|_2__|&lt;br /&gt;
&lt;br /&gt;
=============&lt;br /&gt;
Observaciones&lt;br /&gt;
=============&lt;br /&gt;
&lt;br /&gt;
- Al no existir en el instante de tiempo 0 problemas de concurrencia de procesos, ¿no debería el proceso A tener derecho a sus dos unidades de tiempo de quantum, aunque este solo utilice una unidad de tiempo debido al bloqueo por E/S?. Esto dejaría al procesador con dos procesos en estado preparado (B y C) en el instante de tiempo 2, donde ya se reduciría el quantum a 1 debido a la existencia de 2 o más procesos en estado preparado. ¿Cómo lo veis?&lt;br /&gt;
&lt;br /&gt;
Creo que no, porque ya en el instante 1 hay dos procesos en el planificador, por lo que el quantum ya se reduce.&lt;br /&gt;
&lt;br /&gt;
Cierto, además creo que aunque A no se bloquease, se le seguiría asignando 1 unidad de tiempo en t=1 al proceso B: Entraría el planificador, reduciría el quantum, y al no haber compensación, A pasaría de nuevo al final de la cola del turno rotatorio, dejando el procesador a B, ¿no?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
- Duda: En el instante 9 no debería entrar el proceso Pb en vez de seguir el Pc??&lt;br /&gt;
&lt;br /&gt;
Lo dudo, porque el bloqueo de B dura 2 unidades, así que C tiene carta libre.--[[Usuario:PCamino|PCamino]]&lt;br /&gt;
&lt;br /&gt;
- Duda: ¿Por que el proceso C se ejecuta en el instante 11 habiendo sido bloqueado en el 10?,se supone que todos los procesos tienen un tiempo de bloqueo de 2 unidades&lt;br /&gt;
&lt;br /&gt;
El proceso C no se bloquea nunca (o al menos en el enunciado no lo pone), por eso se ejecuta cada vez que puede. Me refiero a bloqueo por E/S, claro.&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Sol-ejer2-planif-procesos&amp;diff=1643</id>
		<title>Sol-ejer2-planif-procesos</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Sol-ejer2-planif-procesos&amp;diff=1643"/>
				<updated>2011-11-05T16:43:18Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: /* Por prioridades */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Turno rotatorio estricto =&lt;br /&gt;
&lt;br /&gt;
                     ____|_P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;_|&lt;br /&gt;
          Datos del  _H0_|_0__|_1__|_2__|&lt;br /&gt;
           problema  _t__|_3__|_5__|_6__|&lt;br /&gt;
 &lt;br /&gt;
    P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt; bloquea por E/S cada 1 unidad de tiempo&lt;br /&gt;
    P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt; bloquea por E/S cada 3 unidades de tiempo&lt;br /&gt;
                       &amp;lt; = indica el instante de lanzamiento del proceso&lt;br /&gt;
                       &amp;gt; = indica el instante de finalización del proceso&lt;br /&gt;
                       X = se ejecuta el código del planificador&lt;br /&gt;
                                                                 &lt;br /&gt;
                   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
               Pa  &amp;lt;---|   |   |   |   |---|   |   |   |---&amp;gt;   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
               Pb  |   &amp;lt;---|---|   |   |   |---|   |   |   |---|---&amp;gt;   |   |   |   |   |   |   |   &lt;br /&gt;
               Pc  |   |   &amp;lt;   |---|---|   |   |---|---|   |   |   |---|---&amp;gt;   |   |   |   |   |   &lt;br /&gt;
     Planificador  X   X   |   X   |   X   X   X   |   X   X   |   X   |   X   |   |   |   |   |      &lt;br /&gt;
               ____|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__&amp;gt; t&lt;br /&gt;
                   0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  &lt;br /&gt;
 &lt;br /&gt;
                   _____|_Pa_|_Pb_|_Pc_|&lt;br /&gt;
        Cálculos   __t__|_3__|_5__|_6__|&lt;br /&gt;
       de tiempos  __T__|_10_|_11_|_12_|&lt;br /&gt;
                   _T/t_|3.3_|2.2_|_2__|&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notése que el proceso A no llega a emplear el ''quantum'' que tiene asignado, en ese caso, como indica la [[Criterios_de_planificación|teoría]], se le retira el procesador y el planificador selecciona a otro proceso. Dejar el procesador sin proceso asignado, es decir, ocioso, va contra la lógica del máximo aprovechamiento del procesador. Por ello, he retirado una solución incorrecta que aparecía en esta sección. --[[Usuario:Pneira|Pneira]] 21:15 21 mar 2011 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tengo una duda en este ejercicio, en la unidad de tiempo 6 cuando el planificador activa el proceso Pb, porque motivo solo le asigna una unidad de tiempo?, podria asignarle 2 no? teniendo en cuenta que el quantum = 2. Ademas el proceso B bloquea cada 3 unidades de tiempo, no entiendo porque solo le asigna una unidad y luego activa en la unidad de tiempo 7 el proceso C.  LFE (Luis Fernandez Esteban)&lt;br /&gt;
&lt;br /&gt;
Pues yo diría que es porque se bloquea cada 3, al igual que el A se bloquea a cada unidad. Ya llevaba 1, y con esa actividad, +2 --[[Usuario:PCamino|PCamino]]&lt;br /&gt;
&lt;br /&gt;
Gracias, tienes razon ya lo entendi. LFE (Luis Fernandez Esteban)&lt;br /&gt;
&lt;br /&gt;
DUDA &lt;br /&gt;
En t=3 llegaría el proceso Pa y el proceso Pb a la cola de estado preparado. Como dice en teroía, un proceso que se bloquea sin llegar a agotar su quantum, pasaría al final de  la cola de estados preparados. Por tanto, el siguiente en ejecutarse sería Pb, puesto que Pa viene de estar bloqueado sin agotar su quantum luego pasaría al final de la cola de preparados. ¿Estoy en lo cierto?&lt;br /&gt;
--[[Usuario:josvaldia|josvaldia]]&lt;br /&gt;
&lt;br /&gt;
= Por prioridades =&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la prioridad de los procesos es la siguiente: A&amp;lt;B&amp;lt;C&lt;br /&gt;
&lt;br /&gt;
                     ____|_P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;_|&lt;br /&gt;
          Datos del  _H0_|_0__|_1__|_2__|&lt;br /&gt;
           problema  _t__|_3__|_5__|_6__|&lt;br /&gt;
 &lt;br /&gt;
    P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt; bloquea por E/S cada 1 unidad de tiempo&lt;br /&gt;
    P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt; bloquea por E/S cada 3 unidades de tiempo&lt;br /&gt;
                       &amp;lt; = indica el instante de lanzamiento del proceso&lt;br /&gt;
                       &amp;gt; = indica el instante de finalización del proceso&lt;br /&gt;
                       X = se ejecuta el código del planificador&lt;br /&gt;
                                                                 &lt;br /&gt;
                   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   &lt;br /&gt;
               P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;  &amp;lt;---|   |   |   |   |   |   |   |   |   |---|   |   |   |---&amp;gt;   |   |   |   |   &lt;br /&gt;
               P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;  |   &amp;lt;---|   |   |   |   |   |   |---|---|   |   |---|---&amp;gt;   |   |   |   |   |            &lt;br /&gt;
               P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;  |   |   &amp;lt;---|---|---|---|---|---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |    &lt;br /&gt;
     Planificador  X   X   X   |   |   |   |   |   X   |   X   X   X   |   X   |   |   |   |   |      &lt;br /&gt;
               ____|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__t&lt;br /&gt;
                   0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  &lt;br /&gt;
 &lt;br /&gt;
                   _____|_P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;_|&lt;br /&gt;
        Cálculos   __t__|_3__|_5__|_6__|&lt;br /&gt;
       de tiempos  __T__|_15_|_13_|_6_|&lt;br /&gt;
                   _T/t_|__5_|_2.6|_1__|&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
Alguien me puede explicar ¿por que de 14 a 15 no se procesa nada? AnaBarros&lt;br /&gt;
&lt;br /&gt;
Creo que eso esta mal...y he visto mas fallos por ahi o eso me parece... :S    Luis Fernandez Esteban&lt;br /&gt;
&lt;br /&gt;
Sí lo creo como el C solo debia de empenzar en el 3 pero empienza antes. Ana Barros&lt;br /&gt;
&lt;br /&gt;
Del 14 al 15 no se procesa nada porque sólo quedan los procesos A y B, pero en esa unidad de tiempo ambos están bloqueados (los bloqueos de A y B duran 2 uds. de tiempo)&lt;br /&gt;
&lt;br /&gt;
Hola... creo que esto está mal, ¿no debería el proceso B ejecutarse desde 8 hasta 11? se supone que es por prioridades y ya no hay quantum, entonces B bloquea cada 3 uds. no cada 2 ¿me equivoco? --[[Usuario:Danplaseg|Danplaseg]] 16:43 5 nov 2011 (UTC)&lt;br /&gt;
&lt;br /&gt;
= Turno rotatorio proporcional al número de procesos =&lt;br /&gt;
&lt;br /&gt;
                     ____|_P&amp;lt;sub&amp;gt;A &amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;C &amp;lt;/sub&amp;gt;_|&lt;br /&gt;
          Datos del  _H0_|_0__|_1__|_2__|&lt;br /&gt;
           problema  _t__|_3__|_5__|_6__|&lt;br /&gt;
 &lt;br /&gt;
                       &amp;lt; = indica el instante de lanzamiento del proceso&lt;br /&gt;
                       &amp;gt; = indica el instante de finalización del proceso&lt;br /&gt;
                       X = se ejecuta el código del planificador&lt;br /&gt;
                                                                 &lt;br /&gt;
                 &amp;lt;sub&amp;gt; &amp;lt;/sub&amp;gt; |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |&lt;br /&gt;
               P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;  &amp;lt;---|   |   |---|   |   |---&amp;gt;   |   |   |   |   |   |   |   |   |   |   |   |   |&lt;br /&gt;
               P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;  |   &amp;lt;---|   |   |---|   |   |---|   |   |---|   |---&amp;gt;   |   |   |   |   |   |   |&lt;br /&gt;
               P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;  |   |   &amp;lt;---|   |   |---|   |   |---|---|   |---|   |---&amp;gt;   |   |   |   |   |   |&lt;br /&gt;
    Planificador &amp;lt;sub&amp;gt; &amp;lt;/sub&amp;gt; X   X   X   X   X   X   X   X   X   |   X   X   X   X   |   |   |   |   |   |   |   &lt;br /&gt;
            &amp;lt;sub&amp;gt; &amp;lt;/sub&amp;gt; -----|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---&amp;gt; t&lt;br /&gt;
                   0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  20&lt;br /&gt;
 &lt;br /&gt;
                   _____|_P&amp;lt;sub&amp;gt;A&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;B&amp;lt;/sub&amp;gt;_|_P&amp;lt;sub&amp;gt;C&amp;lt;/sub&amp;gt;_|&lt;br /&gt;
        Cálculos   __t__|_3__|_5__|_6__|&lt;br /&gt;
       de tiempos  __T__|_7__|_12_|_12_|&lt;br /&gt;
                   _T/t_|2.3_|2.4_|_2__|&lt;br /&gt;
&lt;br /&gt;
=============&lt;br /&gt;
Observaciones&lt;br /&gt;
=============&lt;br /&gt;
&lt;br /&gt;
- Al no existir en el instante de tiempo 0 problemas de concurrencia de procesos, ¿no debería el proceso A tener derecho a sus dos unidades de tiempo de quantum, aunque este solo utilice una unidad de tiempo debido al bloqueo por E/S?. Esto dejaría al procesador con dos procesos en estado preparado (B y C) en el instante de tiempo 2, donde ya se reduciría el quantum a 1 debido a la existencia de 2 o más procesos en estado preparado. ¿Cómo lo veis?&lt;br /&gt;
&lt;br /&gt;
Creo que no, porque ya en el instante 1 hay dos procesos en el planificador, por lo que el quantum ya se reduce.&lt;br /&gt;
&lt;br /&gt;
Cierto, además creo que aunque A no se bloquease, se le seguiría asignando 1 unidad de tiempo en t=1 al proceso B: Entraría el planificador, reduciría el quantum, y al no haber compensación, A pasaría de nuevo al final de la cola del turno rotatorio, dejando el procesador a B, ¿no?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
- Duda: En el instante 9 no debería entrar el proceso Pb en vez de seguir el Pc??&lt;br /&gt;
&lt;br /&gt;
Lo dudo, porque el bloqueo de B dura 2 unidades, así que C tiene carta libre.--[[Usuario:PCamino|PCamino]]&lt;br /&gt;
&lt;br /&gt;
- Duda: ¿Por que el proceso C se ejecuta en el instante 11 habiendo sido bloqueado en el 10?,se supone que todos los procesos tienen un tiempo de bloqueo de 2 unidades&lt;br /&gt;
&lt;br /&gt;
El proceso C no se bloquea nunca (o al menos en el enunciado no lo pone), por eso se ejecuta cada vez que puede. Me refiero a bloqueo por E/S, claro.&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Bloque_de_control_de_procesos&amp;diff=1594</id>
		<title>Bloque de control de procesos</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Bloque_de_control_de_procesos&amp;diff=1594"/>
				<updated>2011-11-01T19:36:56Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: enlace&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Para llevar a cabo la gestión de un proceso, es necesario que el sistema operativo guarde cierta información necesaria. Para ello, existe un registro especial que se conoce como '''el bloque de control del proceso BCP, o PCB en inglés (Process Control Block)'''. &lt;br /&gt;
&lt;br /&gt;
El BCP es creado por el Sistema operativo cada vez que aparece un nuevo proceso. Los procesos son conocidos para el sistema operativo y por tanto elegibles para competir por los recursos del sistema sólo cuando existe un BCP activo asociado a ellos. Cuando el programa termina, el BCP es eliminado para dejar espacio libre en el registro, y usarlo para almacenar otros BCP. &lt;br /&gt;
&lt;br /&gt;
El bloque de control de procesos difiere mucho de un sistema a otros, pero existen contenidos comunes:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Identificador del proceso: Identificar de forma unívoca al proceso en el sistema, generalmente se emplea un entero sin signo que se denomina PID (Process IDentifier).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Estado del proceso para el planificador de procesos (preparado, activo o bloqueado).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Contexto de la ejecución: valor de los registros del procesador, bits de estados, etc. Esto es, cada vez que se ejecuta el planificador y se realiza una [[Conmutación de procesos|conmutación de procesos]], la información sobre en qué lugar se encontraba la ejecución del proceso se encuentra guardada aquí, así como el lugar en el que se paró la ejecución del anterior proceso (cada una en su  respectivo BCP, respectivamente).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Aspectos relacionados con la administración de memoria, tales como el espacio de direcciones y la cantidad de memoria asignada a un proceso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Aspectos relacionados con la administración de ficheros, tales como los ficheros con los que el proceso está actualmente operando.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* En caso de soportar el sistema multiprocesador, los procesadores en los que el proceso puede ejecutarse.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* En el caso de un sistema operativo tipo UNIX, el proceso padre de dicho proceso y la relación de procesos hijos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Estadísticas temporales: Tiempo de lanzamiento del proceso, tiempo en estado activo, etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En Linux, al PCB se le denomina ''Task Struct'', se puede consultar dicha estructura en:&lt;br /&gt;
&lt;br /&gt;
http://lxr.linux.no/#linux+v2.6.37.2/include/linux/sched.h#L1182&lt;br /&gt;
&lt;br /&gt;
http://lxr.linux.no/linux+v3.0.4/include/linux/sched.h#L1220&lt;br /&gt;
&lt;br /&gt;
En el núcleo de Minix, al PCB se le denomina ''Process table'', puede consultarse su implementación en el siguiente enlace:&lt;br /&gt;
&lt;br /&gt;
http://www.cise.ufl.edu/~cop4600/cgi-bin/lxr/http/source.cgi/kernel/proc.h&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Bloque_de_control_de_procesos&amp;diff=1593</id>
		<title>Bloque de control de procesos</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Bloque_de_control_de_procesos&amp;diff=1593"/>
				<updated>2011-11-01T19:30:50Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Para llevar a cabo la gestión de un proceso, es necesario que el sistema operativo guarde cierta información necesaria. Para ello, existe un registro especial que se conoce como '''el bloque de control del proceso BCP, o PCB en inglés (Process Control Block)'''. &lt;br /&gt;
&lt;br /&gt;
El BCP es creado por el Sistema operativo cada vez que aparece un nuevo proceso. Los procesos son conocidos para el sistema operativo y por tanto elegibles para competir por los recursos del sistema sólo cuando existe un BCP activo asociado a ellos. Cuando el programa termina, el BCP es eliminado para dejar espacio libre en el registro, y usarlo para almacenar otros BCP. &lt;br /&gt;
&lt;br /&gt;
El bloque de control de procesos difiere mucho de un sistema a otros, pero existen contenidos comunes:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Identificador del proceso: Identificar de forma unívoca al proceso en el sistema, generalmente se emplea un entero sin signo que se denomina PID (Process IDentifier).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Estado del proceso para el planificador de procesos (preparado, activo o bloqueado).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Contexto de la ejecución: valor de los registros del procesador, bits de estados, etc. Esto es, cada vez que se ejecuta el planificador y decide dar paso a un proceso concreto, la información sobre en qué lugar se encontraba la ejecución del proceso se encuentra guardada aquí, así como el lugar en el que se paró la ejecución del anterior proceso (cada una en su  respectivo BCP, respectivamente).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Aspectos relacionados con la administración de memoria, tales como el espacio de direcciones y la cantidad de memoria asignada a un proceso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Aspectos relacionados con la administración de ficheros, tales como los ficheros con los que el proceso está actualmente operando.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* En caso de soportar el sistema multiprocesador, los procesadores en los que el proceso puede ejecutarse.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* En el caso de un sistema operativo tipo UNIX, el proceso padre de dicho proceso y la relación de procesos hijos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Estadísticas temporales: Tiempo de lanzamiento del proceso, tiempo en estado activo, etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En Linux, al PCB se le denomina ''Task Struct'', se puede consultar dicha estructura en:&lt;br /&gt;
&lt;br /&gt;
http://lxr.linux.no/#linux+v2.6.37.2/include/linux/sched.h#L1182&lt;br /&gt;
&lt;br /&gt;
http://lxr.linux.no/linux+v3.0.4/include/linux/sched.h#L1220&lt;br /&gt;
&lt;br /&gt;
En el núcleo de Minix, al PCB se le denomina ''Process table'', puede consultarse su implementación en el siguiente enlace:&lt;br /&gt;
&lt;br /&gt;
http://www.cise.ufl.edu/~cop4600/cgi-bin/lxr/http/source.cgi/kernel/proc.h&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Bloque_de_control_de_procesos&amp;diff=1592</id>
		<title>Bloque de control de procesos</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Bloque_de_control_de_procesos&amp;diff=1592"/>
				<updated>2011-11-01T19:13:42Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Para llevar a cabo la gestión de un proceso, es necesario que el sistema operativo guarde cierta información necesaria. Para ello, existe un registro especial que se conoce como '''el bloque de control del proceso BCP, o PCB en inglés (Process Control Block)'''. &lt;br /&gt;
&lt;br /&gt;
Un proceso es conocido para el sistema operativo y por tanto elegible para competir por los recursos del sistema sólo cuando existe un BCP activo asociado a él. Cuando el programa termina, el BCP es eliminado para dejar espacio libre en el registro, y usarlo para almacenar otros BCP. &lt;br /&gt;
&lt;br /&gt;
El bloque de control de procesos difiere mucho de un sistema a otros pero existen contenidos comunes:&lt;br /&gt;
&lt;br /&gt;
* Identificador del proceso: Identificar de forma unívoca al proceso en el sistema, generalmente se emplea un entero sin signo que se denomina PID (Process IDentifier).&lt;br /&gt;
&lt;br /&gt;
* Estado del proceso para el planificador de procesos (preparado, activo o bloqueado).&lt;br /&gt;
&lt;br /&gt;
* Contexto de la ejecución: valor de los registros del procesador, bits de estados, etc.&lt;br /&gt;
&lt;br /&gt;
* Aspectos relacionados con la administración de memoria, tales como el espacio de direcciones y la cantidad de memoria asignada a un proceso.&lt;br /&gt;
&lt;br /&gt;
* Aspectos relacionados con la administración de ficheros, tales como los ficheros con los que el proceso está actualmente operando.&lt;br /&gt;
&lt;br /&gt;
* En caso de soportar el sistema multiprocesador, los procesadores en los que el proceso puede ejecutarse.&lt;br /&gt;
&lt;br /&gt;
* En el caso de un sistema operativo tipo UNIX, el proceso padre de dicho proceso y la relación de procesos hijos.&lt;br /&gt;
&lt;br /&gt;
* Estadísticas temporales: Tiempo de lanzamiento del proceso, tiempo en estado activo, etc.&lt;br /&gt;
&lt;br /&gt;
En Linux, al PCB se le denomina ''Task Struct'', se puede consultar dicha estructura en:&lt;br /&gt;
&lt;br /&gt;
http://lxr.linux.no/#linux+v2.6.37.2/include/linux/sched.h#L1182&lt;br /&gt;
&lt;br /&gt;
http://lxr.linux.no/linux+v3.0.4/include/linux/sched.h#L1220&lt;br /&gt;
&lt;br /&gt;
En el núcleo de Minix, al PCB se le denomina ''Process table'', puede consultarse su implementación en el siguiente enlace:&lt;br /&gt;
&lt;br /&gt;
http://www.cise.ufl.edu/~cop4600/cgi-bin/lxr/http/source.cgi/kernel/proc.h&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Bloque_de_control_de_procesos&amp;diff=1591</id>
		<title>Bloque de control de procesos</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Bloque_de_control_de_procesos&amp;diff=1591"/>
				<updated>2011-11-01T19:13:18Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: Información esclarecedora sobre el BCP&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Para llevar a cabo la gestión de un proceso, es necesario que el sistema operativo guarde cierta información necesaria. Para ello, existe un registro especial que se conoce como '''el bloque de control del proceso BCP, o PCB en inglés (Process Control Block)'''. &lt;br /&gt;
Un proceso es conocido para el sistema operativo y por tanto elegible para competir por los recursos del sistema sólo cuando existe un BCP activo asociado a él. Cuando el programa termina, el BCP es eliminado para dejar espacio libre en el registro, y usarlo para almacenar otros BCP. &lt;br /&gt;
&lt;br /&gt;
El bloque de control de procesos difiere mucho de un sistema a otros pero existen contenidos comunes:&lt;br /&gt;
&lt;br /&gt;
* Identificador del proceso: Identificar de forma unívoca al proceso en el sistema, generalmente se emplea un entero sin signo que se denomina PID (Process IDentifier).&lt;br /&gt;
&lt;br /&gt;
* Estado del proceso para el planificador de procesos (preparado, activo o bloqueado).&lt;br /&gt;
&lt;br /&gt;
* Contexto de la ejecución: valor de los registros del procesador, bits de estados, etc.&lt;br /&gt;
&lt;br /&gt;
* Aspectos relacionados con la administración de memoria, tales como el espacio de direcciones y la cantidad de memoria asignada a un proceso.&lt;br /&gt;
&lt;br /&gt;
* Aspectos relacionados con la administración de ficheros, tales como los ficheros con los que el proceso está actualmente operando.&lt;br /&gt;
&lt;br /&gt;
* En caso de soportar el sistema multiprocesador, los procesadores en los que el proceso puede ejecutarse.&lt;br /&gt;
&lt;br /&gt;
* En el caso de un sistema operativo tipo UNIX, el proceso padre de dicho proceso y la relación de procesos hijos.&lt;br /&gt;
&lt;br /&gt;
* Estadísticas temporales: Tiempo de lanzamiento del proceso, tiempo en estado activo, etc.&lt;br /&gt;
&lt;br /&gt;
En Linux, al PCB se le denomina ''Task Struct'', se puede consultar dicha estructura en:&lt;br /&gt;
&lt;br /&gt;
http://lxr.linux.no/#linux+v2.6.37.2/include/linux/sched.h#L1182&lt;br /&gt;
&lt;br /&gt;
http://lxr.linux.no/linux+v3.0.4/include/linux/sched.h#L1220&lt;br /&gt;
&lt;br /&gt;
En el núcleo de Minix, al PCB se le denomina ''Process table'', puede consultarse su implementación en el siguiente enlace:&lt;br /&gt;
&lt;br /&gt;
http://www.cise.ufl.edu/~cop4600/cgi-bin/lxr/http/source.cgi/kernel/proc.h&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Introducci%C3%B3n_hist%C3%B3rica&amp;diff=1573</id>
		<title>Introducción histórica</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Introducci%C3%B3n_hist%C3%B3rica&amp;diff=1573"/>
				<updated>2011-10-29T17:18:19Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: /* 1.2. Introducción histórica a los SSOO */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 1.2. Introducción histórica a los SSOO =&lt;br /&gt;
&lt;br /&gt;
En 1940, durante la 2º Guerra Mundial, se inicia la primera generación de ordenadores con el [http://es.wikipedia.org/wiki/ENIAC ENIAC] (1943-1945), desarrollado en EEUU. Y posteriormente, en 1949, el [http://es.wikipedia.org/wiki/EDSAC EDSAC], desarrollado en Inglaterra.&lt;br /&gt;
&lt;br /&gt;
Más tarde, se desarrollarían los primeros lenguajes de programación y los primeros ordenadores comerciales, como el IBM 701, 702 y el 650, utilizados principalmente para el cálculo científico en aplicaciones de gestión. También se crearían otros ordenadores como el UNIVAC I o el MARK I (Harvard Mark I).&lt;br /&gt;
&lt;br /&gt;
Máquinas relevantes:&lt;br /&gt;
&lt;br /&gt;
*ENIAC:&lt;br /&gt;
**Máquina de cálculo completamente electrónica.&lt;br /&gt;
**Arquitectura no Von-Neumann.&lt;br /&gt;
**17468 lámparas.&lt;br /&gt;
**20 registros de 10 lámparas para representar el BCD.&lt;br /&gt;
*EDSAC:&lt;br /&gt;
**Primera máquina con arquitectura Von Neumann.&lt;br /&gt;
**Programada en lenguaje ensamblador.&lt;br /&gt;
*Primeras máquinas comerciales (a partir de 1951):&lt;br /&gt;
**Univac I y Mark I&lt;br /&gt;
**IBM 701&lt;br /&gt;
**IBM 702 e IBM 650&lt;br /&gt;
&lt;br /&gt;
----------------&lt;br /&gt;
&lt;br /&gt;
*Durante la 2º Generación de Ordenadores, una generación en donde los equipos eran más fiables, se crearía el primer germen de sistemas operativos, que lo que quería conseguir era un programa para reservar memoria y automatizar ciertas tareas (como por ejemplo lecturas de cintas magnéticas).&lt;br /&gt;
&lt;br /&gt;
-Máquinas relevantes&lt;br /&gt;
&lt;br /&gt;
A) TRADIC:&lt;br /&gt;
* Ordenador completamente transistorizado.&lt;br /&gt;
* Suficientemente pequeño para montarse en un B-52.&lt;br /&gt;
* Primera unidad destinada a venta: 1958.&lt;br /&gt;
B) IBM 7094&lt;br /&gt;
* Memoria: 32K-palabras de 32 bits.&lt;br /&gt;
* Potencia de cálculo: 0,35MIPS.&lt;br /&gt;
C) PDP-1:&lt;br /&gt;
* Uno de los primeros micro-computadores&lt;br /&gt;
* 4K-palabras de 16 bits&lt;br /&gt;
* Precio: 5% de IBM 7094&lt;br /&gt;
&lt;br /&gt;
-----------------&lt;br /&gt;
&lt;br /&gt;
*En la 3º Generación de Ordenadores (años 1960-1970), se consiguió una alta escala de integración en circuitos, en los que se consigue más capacidad de memoria, y más rendimiento y velocidad en los equipos. Se crean los mainFrame , equipos centrales para procesar una gran cantidad de datos, como por ejemplo IBM 360 y los &amp;quot;mini&amp;quot;ordenadores, en la universidades (DIGITAL PDP - 7 , PDP - 11).&lt;br /&gt;
&lt;br /&gt;
-Máquinas relevantes&lt;br /&gt;
A) Aparece el concepto de familia de ordenadores.&lt;br /&gt;
* Poder elegir diferentes configuraciones.&lt;br /&gt;
* Catálogo de dispositivos y periféricos compatibles.&lt;br /&gt;
B) IBM 360&lt;br /&gt;
* Sistemas operativos: OS/360&lt;br /&gt;
* Lenguaje de control de trabajos: JCL&lt;br /&gt;
* Lenguaje de programación: PL/1&lt;br /&gt;
C) MULTICS&lt;br /&gt;
* Diferentes empresas ayudando en su desarrollo.&lt;br /&gt;
* Sistema operativo interactivo en tiempo compartido.&lt;br /&gt;
* Pensado para dar servicio de computo a toda una ciudad.&lt;br /&gt;
D) Hardware: &lt;br /&gt;
*GE-645, 2 procesadores con 256 K-palabras de 36 bits.&lt;br /&gt;
&lt;br /&gt;
-------------------------------&lt;br /&gt;
&lt;br /&gt;
*En 1973 , se crea el primer sistema operativo de tipo [http://es.wikipedia.org/wiki/Unix UNIX]&lt;br /&gt;
&lt;br /&gt;
*En 1980, los fabricantes más conocidos crean sistemas operativos basados en UNIX, como IBM crea AIX, SUN crea Solaris, Digital crea The64,HP crea HP-UX y Microsoft crea Xenix. También paralelamente en la Universidad de California se crea un sistema operativo llamado BSD que se distribuye para usos didácticos.&lt;br /&gt;
&lt;br /&gt;
*En 1983, Richard Stallman inicia un proyecto llamado [http://es.wikipedia.org/wiki/GNU GNU] que consiste en desarrollar un sistema operativo, que se puede distribuir de manera gratuita y libre.&lt;br /&gt;
&lt;br /&gt;
*En 1990, se crea el Intel 80386 y la universidad de California distrubuye el sistema BSD + un soporte real&lt;br /&gt;
&lt;br /&gt;
*En 1992, se lanza el 1º sistema operativo de tipo GNU / LINUX&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Qu%C3%A9_es_un_Sistema_Operativo&amp;diff=1572</id>
		<title>Qué es un Sistema Operativo</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Qu%C3%A9_es_un_Sistema_Operativo&amp;diff=1572"/>
				<updated>2011-10-29T17:06:32Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: /* 1.1.2. Principios de diseño de un buen Sistema Operativo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 1.1. ¿Qué es un Sistema Operativo? =&lt;br /&gt;
== 1.1.1. ¿Qué es un Sistema Operativo? ==&lt;br /&gt;
* El programa de programas. En el arranque de la computadora, es cargado a la memoria RAM por la [http://es.wikipedia.org/wiki/BIOS BIOS].&lt;br /&gt;
&lt;br /&gt;
* Gestiona los recursos que ofrece el material (el ''hardware'' del equipo):&lt;br /&gt;
** La [http://es.wikipedia.org/wiki/Unidad_central_de_procesamiento CPU] (unidad central de procesamiento o procesador).&lt;br /&gt;
** La [http://es.wikipedia.org/wiki/Memoria_principal Memoria principal].&lt;br /&gt;
** Los [http://es.wikipedia.org/wiki/Entrada/salida#Dispositivos_de_entrada_y_salida dispositivos de Entrada/Salida], tales como la tarjeta de vídeo, la tarjeta de red, los dispositivos de almacenamiento masivo (disco duro, memoria flash), los dispositivos USB, teclado, ratón...&lt;br /&gt;
&lt;br /&gt;
* Ofrece un lanzador de aplicaciones, que puede ser de dos tipos:&lt;br /&gt;
** Gestor de ventanas: las órdenes se dan con el ratón.&lt;br /&gt;
** Intérprete de órdenes/comandos (traducción defectuosa del original inglés ''command'', que significa orden), también llamado ''shell''. Las órdenes se escriben con el teclado.&lt;br /&gt;
&lt;br /&gt;
* Ofrece una interfaz (API) a las aplicaciones para solicitar recursos. El SO hace de intermediario, el programa no accede al hardware directamente  a obtener los recursos, sino que se los solicita al SO. Esta interfaz ha de ser estable (es decir, que no cambie con el tiempo) y homogénea.&lt;br /&gt;
&lt;br /&gt;
*Tarda un tiempo, período de arranque, en inicializar los recursos.&lt;br /&gt;
&lt;br /&gt;
== 1.1.2. Principios de diseño de un buen Sistema Operativo ==&lt;br /&gt;
&lt;br /&gt;
Los aspectos a tener en cuenta respecto a la gestión de recursos son:&lt;br /&gt;
&lt;br /&gt;
* Realizar una gestión eficiente de los recursos.&lt;br /&gt;
* Coordinar la asignación de los mismos (como un moderador en un debate, asignando el turno de palabra).&lt;br /&gt;
* Hacer un reparto equitativo de ellos.&lt;br /&gt;
* No permitir que las aplicaciones accedan directamente a los recursos sino que sea a través del sistema operativo.&lt;br /&gt;
&lt;br /&gt;
Respecto a la API, debe:&lt;br /&gt;
&lt;br /&gt;
* Ser estable, no debe cambiar con el tiempo.&lt;br /&gt;
* Ser homogénea.&lt;br /&gt;
* Ocultar los detalles de bajo nivel de los componentes, ofreciendo una capa de abstracción sobre el material (hardware).&lt;br /&gt;
&lt;br /&gt;
Además, otro criterio a tener en cuenta por un buen sistema operativo es la portabilidad, es decir, que soporte diferentes arquitecturas, como por ejemplo la ARM (teléfonos móviles), la x86 de Intel(32 bits), los actuales Intel64 y AMD64(64 bits), la SPARC (desarrollada por Sun Microsystems, ahora adquirida por Oracle), la PowerPC (creada por la alianza AIM: Apple-IBM-Motorola)...&lt;br /&gt;
&lt;br /&gt;
== 1.1.3. Resumen ==&lt;br /&gt;
&lt;br /&gt;
En resumen, un sistema operativo debe tener las siguientes características:&lt;br /&gt;
&lt;br /&gt;
* '''Conveniencia:''' un sistema operativo hace más conveniente el uso de una computadora.&lt;br /&gt;
* '''Eficiencia:''' el sistema operativo permite que los recursos de la computadora se usen de manera correcta y eficiente.&lt;br /&gt;
* '''Habilidad para evolucionar:''' un sistema operativo debe de ser capaz de aceptar nuevas funciones sin que tenga problemas.&lt;br /&gt;
* '''Encargado de administrar el hardware:''' el sistema operativo debe de ser eficaz.&lt;br /&gt;
* '''Relacionar dispositivos'''&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Archivo:Planificacion_de_procesos.svg&amp;diff=1497</id>
		<title>Archivo:Planificacion de procesos.svg</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Archivo:Planificacion_de_procesos.svg&amp;diff=1497"/>
				<updated>2011-10-18T19:27:38Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Archivo:Plan_proc.svg&amp;diff=1496</id>
		<title>Archivo:Plan proc.svg</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Archivo:Plan_proc.svg&amp;diff=1496"/>
				<updated>2011-10-18T19:19:17Z</updated>
		
		<summary type="html">&lt;p&gt;Danplaseg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Danplaseg</name></author>	</entry>

	</feed>