Sie sind auf Seite 1von 24

MANDRIVA LINUX

Una distribucin de Linux Basada en Red Hat



Walter Eduardo Charro Tipn
El presente trabajo esta realizado para conocer ms
acerca del sistema operativo de Mandriva Linux su
historia gestin de procesos, memoria, entrada/salida
y sus tendencias
HISTORIA DE MANDRIVA LINUX

En 1998, la compaa francesa Mandrakesoft SA crea la distribucin de Linux
Mandrakelinux. No fue sino hasta 2005, despus de adquirir la empresa brasilea
Conectiva, que la empresa y el producto se denominar "Mandriva" y "Mandriva
Linux.
El creador de Mandrakelinux es Gael Duval, co-fundador y ex empleado de RedHat.
La distribucin se basa en Red Hat Desktop 5.1, por lo que la primera versin se
enumer 5.1. Era una versin de Linux para servidores y estaciones de trabajo
diseado para ser fcil de usar. Viene en versiones libres (descargable) y versiones
de pago (cajas), incluida la documentacin y apoyo.
Las diferentes versiones cuentan con licencia libre y algunas versiones especiales
cuentan con porciones de programas no licenciados segn GPL, sino bajo otras
licencias de uso.


Mandriva Linux es bastante popular (especialmente en Francia) porque, entre otras
cosas, la facilidad de uso de sus herramientas de instalacin y configuracin, por lo
que a menudo se lo recomienda para principiantes.
La distribucin es total o parcialmente compatible con hasta 73 idiomas y fue uno
de los primeros en presentar una interfaz grfica basada en la instalacin de Perl y
GTK plenamente internacionalizado, lo que explica su xito en Rusia, entre otros.
En cuanto a su Pas de origen, son: Francia, Brasil, Estados Unidos,
aunque las dos ms importantes son Francia y Brasil.

La edicin 2006 sali en octubre de 2005 que ya vena integrada con las tecnologas
de Conectiva y Lycoris; en esta versin se haba decidido como parte de los
cambiosFue hasta el lanzamiento de Mandriva Linux 2007, que, tanto la frecuencia
de publicacin de las otras distribuciones de Linux, as como las crticas, orillaron a
la compaa a volver al ciclo de publicacin de seis meses (abril y octubre)
Todos estos factores provocaron la publicacin de Mandriva 2007 Spring, versin
aclamada por la comunidad Linux y considerada por muchos como un retorno del
camino para ser nuevamente un actor principal en el mundo Linux.

En abril de 2008, se lanz la versin 2008.1 "Spring", la cual tiene cambios
importantes como:
Mejoras a la interface de RPMDrake, nuevo control de contenidos para que los
padres puedan supervisar las actividades de sus hijos en Internet, nuevo media
center "Elisa", soporte de sincronizacin de telfonos en GNOME y KDE, el
framework "Codeina" para la instalacin de los codecs requeridos, X.org 7.3,
openoffice.org 2.4, Gnome 2.22, los controladores libres de las tarjetas grficas de
ATI y nVidia, el servidor de sonido PulseAudio, etc.

En octubre de 2008, se liber la versin 2009.0, la cual entre sus cambios
importantes se encuentran: el Kernel de Linux versin 2.6.27 con un mayor soporte
de hardware, KDE que en su versin 4.1.2 se convirti en el escritorio por defecto,
la versin 3.5.10 de KDE qued disponible en el DVD de la versin Free y
Powerpack, pero dejando slo al escritorio, sin incluir la mayora de sus programas,
los cuales se pueden descargar desde los repositorios de la distribucin; incluye de
igual forma, Gnome 2.24 el otro proyecto que por su importancia junto con KDE se
les considera los principales escritorios de Linux, OpenOffice.org 3.0 con todas las
mejoras inherentes a la versin de esta suite ofimtica; Mozilla Firefox 3.0, y como
novedad exclusiva a la distribucin, se redise el instalador de Mandriva
aumentando su facilidad de uso, segn su propia opinin.
En abril de 2009, se liber la versin 2009.1 "Spring" de Mandriva Linux, con el
kernel actualizado 2.6.29.1 (no tom la decisin de Canonical de incluir el 2.6.28)
Incluye el entorno de escritorio KDE 4.2.2 considerado el primer KDE de la rama 4
para uso estable y del usuario final. Esta versin fue la ltima donde se encontraba
en los repositorios KDE 3.5, que desaparece en la versin 2010; tambin incluye
Gnome 2.26, LXDE, Firefox 3.0.8, X.org 1.6 y OpenOffice.org 3.0.1, basado en un
fork de la misma llamado go-oo.org; adems, incluye soporte opcional, pero sin
embargo, completo del sistema de archivos Ext4 dejando a eleccin del usuario
(generalmente usuarios medios-avanzados) el actualizar o no el sistema de
archivos. Se incluy speedboot, que mejora los tiempos de arranque aparentes de
la distribucin al poner en prioridad ms alta, el inicio del servidor X, dejando que
se carguen algunos servicios, despus de la carga del servidor X.
Como novedad adicional, se puede pasar el contenido de la variante One a un
pendrive USB y bootear desde l.


GESTIN DE PROCESOS EN MANDRIVA LINUX

Ciclo de Vida de un Proceso en Linux. Conjunto de Estados
En Linux, un proceso o tarea, est representado por una estructura de datos task_struct. Linux
mantiene una task, que es un vector lineal de punteros a cada estructura task_struct definida en
un instante dado. La estructura task_struct contiene informacin de varios tipos:
Estado. Representa el estado de ejecucin de un proceso (en ejecucin,
interrumpible, no interrumpible, parado y zombie).
Informacin de planificacin. Representa a la informacin necesaria para la
planificacin de procesos en Linux. Un proceso puede ser normal o en tiempo real y
tiene una prioridad. Los procesos en tiempo real se planifican antes que los procesos
normales y se utilizan prioridades relativas dentro de cada categora. El tiempo en el que
un proceso puede ejecutarse se controla mediante un contador.
Identificadores. Cada proceso tiene un nico identificador de proceso, y tiene
tambin identificadores de usuario y de grupo. Un identificador de grupo se utiliza para
asignar privilegios de acceso a recursos de un grupo de usuarios.
Comunicacin entre procesos. Linux soporta los mecanismo de IPC de UNIX
Vnculos. Cada proceso incluye un vnculo con su proceso padre, vnculos con sus
hermanos (procesos con el mismo padre) y vnculos con todos sus hijos.
Tiempos y temporizadores. Incluye el instante de creacin del proceso y la cantidad de
tiempo del procesador consumido hasta el instante. Un proceso puede tener tambin
asociados uno o ms temporizadores de intervalo. Un proceso define un temporizador de
intervalo mediante una llamada al sistema; cuando el tiempo termina se enva una seal al
proceso. Un temporizador puede ser de un solo uso o peridico.
Sistema de archivos. Incluye punteros a cualquier archivo abierto por el proceso.
Memoria virtual. Define la memoria virtual asignada al proceso.
Contexto especfico del procesador. La informacin de registros y pila que forma el
contexto del proceso (espacio de direccionamiento del proceso).

Los estados de ejecucin de un proceso Linux son los siguientes:
En Ejecucin (TASK_RUNNING). El proceso es ejecutado por el procesador.
Listo (TASK_RUNNING) . El proceso podra ser ejecutado, pero otro proceso se est
ejecutando en ese momento.
Interumpible (TASK_INTERRUPTIBLE). Es un estado de bloqueo, en el cual el proceso
espera un suceso, como la terminacin de una operacin de entrada/salida, liberacin de
un recurso o una seal de otro proceso.
No interumpible (TASK_UNINTERRUPTIBLE). Es otro estado de bloqueo. La diferencia
entre ste y el estado Interumpible es que en un estado No Interumpible, un proceso
espera directamente en una condicin de hardware y, por tanto, no acepta seales.
Parado (TASK_STOPPED). El proceso ha sido detenido por una intervencin externa y
slo puede reanudarse por una accin positiva de otro proceso. Por eje mplo, un proceso
puede estar en estado Parado durante la ejecucin de un programa de depuracin.
Zombie (TASK_ZOMBIE). El proceso ha terminado pero, por alguna razn, su estructura
task debe permanecer an en la tabla de procesos.


Tabla de Procesos.

Cada proceso se referencia por un descriptor (descriptor del proceso). Este descriptor contiene los
atributos del proceso, as como la informacin que permite gestionarlo.

Tabla de Procesos en Linux.

En Linux, inicialmente, la Tabla de Procesos era un vector de tamao fijo de task_strcut
<linux/sched.h>, con lo que el nmero mximo de procesos estaba limitado. Actualmente, la Tabla
de Procesos es realmente una lista doblemente enlazada mediante los punteros next_task y
prev_task.

Estructura del descriptor de procesos en Linux (PCB = Process Control Block).

En Linux el PCB (Process Control Block) es una estructura denominada task_strcut en el archivo
include/linux/sched.h. En ella aparece tipo de informacin sobre cada uno de los procesos.
Muchas partes del sistema operativo hacen uso de esta estructura de datos, por lo que es
necesario conocer los campos ms importantes de task_struct.
volatile long state: Estado del proceso (activo o bloqueado). En la lnea 76 de
include/linux/sched.h estn los posibles valores que puede tomar el estado.
unsigned long flags: Estado detallado del proceso, a nivel del kernel.
long counter: Nmero de ticks (ciclos de reloj) que restan al proceso actual para que se
le acabe el quantum.
long priority : Prioridad esttica del proceso. A partir de este valor, el scheduler asigna el
valor de counter cada vez que se agota.
struct task_struct *next_run, *prev_run: Punteros para implementar la lista de procesos
activos. El scheduler busca en esta lista cada vez que tiene que elegir un proceso nuevo
para ejecutar. Cuando un proceso se suspenda, se extraer inmediatamente de esta lista.
int exit_code, exit_signal: Contiene el valor de terminacin de un proceso, en caso de que
haya finalizado mediante la llamada al sistema exit(2). Si termina por una seal, contendr
el nmero de seal que lo mat.
int pid : Nmero identificador del proceso. Cada proceso tiene un PID distinto.
struct task_struct *p_opptr, *p_pptr, *p_cptr, *p_ysptr, *p_osptr: Punteros para acceder
a toda la familia de procesos: op(Original Parent), p(Parent), c(Youngest Child),
ys(Youngest Sibling, hermano ms joven), os(Oldest Sibling, hermano ms viejo).
Los inicia lizan las macros SET_LINKS y REMOVE_LINKS llamadas al crear un proceso
(fork) y al destruirlo (exit, kill). unsigned long policy, rt_priority : Indican la poltica de
planificacin del proceso y la prioridad dentro de esa poltica.
long start_time: Instante de creacin de este proceso.
uid_t uid, euid, suid, fsuid: Usuario propietario de este proceso, tanto real (uid), como
efectivo (euid), y atributos ms especficos.
gid_t gid, egid, sgid, fsgid : Grupo propietario de este proceso, tanto real (gid), como
efectivo (egid), y atributos ms especficos.
unsigned long signal, blocked: signal es un mapa de bits con las seales pendientes de ser
enviadas a este proceso. Y blocked es otro mapa de bits con las seales que estn
temporalmente bloqueadas.
struct fs_struct *fs: Informacin relativa al sistema de archivos. Los campos de fs no
estn directamente dentro de task_struct para facilitar que varios procesos compartan la
informacin que contienen. Esta funcionalidad la usan los threads a nivel del kernel
(llamada al sistema clone(2)).
struct files_struct *files, struct mm_struct *mm, struct signal_struct *sig . Esto es reflejo
de que los threads de ejecucin pueden compartir tambin los archivos abiertos, su
espacio de memoria y las seales. Contiene los siguientes campos:
o atomic_t count: Nmero de procesos que comparten esta estructura.
o int umask : Mascara de creacin de archivos. La llamada al sistema umask permite
consultar y modificar esta variable. La orden interna del shell umask permite
modificarla desde la lnea de rdenes. Cuando un proceso crea un archivo nuevo
(open, creat), el kernel quitar los bits de permisos que estn activos en umask:
permisos = permisos_creat ~umask.
o struct dentry * root: Inodo del directorio raz de este proceso. Con la llamada al
sistema chroot(2) se puede cambiar este atributo.
o struct dentry * pwd : (Process Working Directory) inodo del directorio de trabajo.
chdir (2) es la llamada al sistema que permite modificarlo.
struct files_struct *files; Esta estructura contiene toda la informacin relativa a los
archivos abiertos por el proceso. Algunos de sus campos son:
o int count: Nmero de procesos que comparten estos archivos abiertos.
o int next_fd: Primer identificador libre.
o fd_set close_on_exec: Conjunto bits que indica qu archivos se tienen que cerrar
cuando este proceso realice una operacin exec(2). Ver la llamada al sistema
fcntl(2).
o fd_set open_fds: Mapa de bits que indica los archivos que actualmente tiene
abiertos este proceso.
o struct file *fd[NR_OPEN]: Vector de descriptores de archivos en uso.

Organizacin de la tabla de procesos en Linux (lista doblemente enlazada).
Los descriptores de proceso los asigna dinmicamente el kernel llamando a una funcin
especial (kmalloc). El array task contiene punteros a estos descriptores. El array
current_set contiene punteros a los descriptores de procesos en curso de ejecucin en
cada procesador.
La variable init_task contiene el descriptor del primer proceso creado en el arranque del
sistema. Tras el arranque, este proceso slo se ejecuta cuando ninguno ms este listo para
ejecucin, y su descriptor sirve para recuperar el inicio de la Tabla de Procesos.
Los descriptores de procesos se organizan en forma de una lista doblemente enlazada,
por los punteros next_task y prev_task . Los descriptores de procesos que estn listos para
su ejecucin o en curso de su ejecucin se colocan en otra lista doblemente enlazada,
mediante los campos next_run y prev_run.
Los campos p_optr, p_pptr, p_cptr, p_ysptr y p_osptr, se utilizan para gestionar las
filiaciones entre procesos. Entendindose por filiacin (relacin familiar) la relacin
que existe entre los procesos dentro de la jerarqua de procesos.



Cuando un proceso se duplica, llamando a la primitiva fork:
o Los punteros p_optr y p_pptr del descriptor del proceso hijo, contienen la
direccin del proceso padre.
o El puntero p_osptr del descriptor del proceso hijo toma el valor del puntero
p_cptr del descriptor del proceso padre.
o El puntero p_ysptr del proceso hermano ms reciente (referenciado por el
puntero p_cptr del descriptor del proceso padre) contiene la direccin del
descriptor del nuevo proceso hijo.
o El puntero p_cptr del descriptor del proceso padre contienen la direccin del
descriptor del proceso hijo.
La gestin de la tabla de procesos (listas de descriptores de procesos) es llevada a cabo
por el scheduler.

Scheduler de Linux
El scheduler es el elemento del kernel (subsistema de control de procesos) que decide qu
proceso (listo para su ejecucin en memoria principal) debe ser ejecutado por el procesador
(CPU). El scheduler explora la lista de procesos listos para ejecutarse en memoria y utiliza varios
criterios para elegir el proceso a ejecutar. Es decir, cuando hay ms de un proceso listo para
ejecutarse, el sistema operativo debe decidir cul ejecutar primero, la parte del sistema
operativo que toma esta decisin es el scheduler, y los algoritmos que utiliza se denominan
algoritmos de planificacin.
El scheduler tiene que elegir el proceso que ms merece ejecutarse entre todos los procesos que
se pueden ejecutar en el sistema.


GESTIN DE MEMORIA EN MANDRIVA LINUX

Linux comparte muchas de las caractersticas de los esquemas de gestin de memoria
de otras implementaciones UNIX, pero tiene sus caractersticas propias y nicas, aunque hay que
destacar que el esquema de gestin de memoria de Linux es bastante complejo.

En lo que respecta a memoria virtual, el direccionamiento de memoria virtual de Linux, hace uso
de una estructura de tabla de pginas con tres niveles, formada por los siguientes tipos de
tablas (cada tabla individual es del tamao de una pgina):
(1) Directorio de pginas un proceso activo tiene un solo directorio de pginas que es del
tamao de una pgina. Cada entrada en el directorio de pginas apunta a una pgina del
directorio intermedio de pginas. Para un proceso activo, el directorio de pginas tiene que estar
en la memoria principal;
(2) Directorio intermedio de pginas este directorio puede ocupar varias pginas y cada
entrada de este directorio apunta a una pgina de la tabla de pginas;
(3) Tabla de pginas esta tabla de pginas tambin puede ocupar varias pginas, y cada entrada
de la tabla de pgina hace referencia a una tabla virtual del proceso.

Para utilizar esta estructura de la tabla de pginas a tres niveles, una direccin virtual en Linux se
ve como un conjunto de cuatro campos. El campo ms a la izquierda (ms significativo) se utiliza
como ndice en el directorio de pginas. El siguiente campo sirve como ndice en el directorio
intermedio de pginas. El tercer campo sirve como ndice en la tabla de pginas. Y el cuarto y
ltimo campo, indica el desplazamiento dentro de la pgina seleccionada de la memoria.


Reserva de Paginas:
Para la asignacin de pginas y aumentar la eficiencia de cargar y descargar pginas a y desde la
memoria principal, Linux define un mecanismo para tratar bloques de pginas contiguos
correspondientes a bloques de marcos de pginas contiguos. Pare este propsito, se utiliza el
Buddy System. El kernel mantiene una lista de grupos de marcos de pgina contiguos de tamao
fijo; un grupo puede estar formado por 1, 2, 3, 8, 16 o 32 marcos de pginas. Como las pginas se
asignan y liberan en la memoria principal, los grupos se dividen y se intercalan utilizando el
algoritmo de los colegas (buddy algorithm).

Direccionamiento de Memoria en Linux

La memoria es uno de los recursos fundamentales para un proceso. El sistema operativo debe
ofrecer la memoria a todos los procesos por igual de una forma sencilla y uniforme. Al mismo
tiempo, el sistema operativo debe tratar con el hardware real para realizar dicha funcin,
aprovechndolo al mximo. El direccionamiento es una parte importante de la gestin de
memoria, puesto que influye mucho tanto en la visin de la misma por parte de un proceso, como
en el aprovechamiento del hardware y el rendimiento del sistema.

Desde el punto de vista de la arquitectura, el sistema operativo suele tener asistencia del
hardware para realizar la gestin memoria:
(1) Memory Management Unit (MMU), unidad que realiza, en el i386, segmentacin y
paginacin;
(2) Bits reservados en selectores de segmento;
(3) Bits reservados en descriptores de pgina;
(4) Bits de proteccin. Sin embargo, el sistema operativo es libre de usar o no dichos recursos.

Espacios de Direcciones

Tres tipos de direcciones:
1. Direcciones lgicas. Generadas por el proceso, cada direccin lgica consiste en un
selector de segmento y un desplazamiento (offset) que denota la distancia del principio
del segmento a la direccin actual.
2. Direcciones lineales (direcciones virtuales). Obtenidas tras aplicar una
transformacin a la direccin lgica por parte de la MMU. 32 bits se pueden utilizar
para direccionar 4Gb (es decir 4294967296 direcciones fsicas de memoria). Las
direcciones lineales se representan normalmente en hexadecimal, su rango de valores va
desde 0x00000000 hasta 0xffffffff.
3. Direcciones fsicas. Referencian la memoria fsica. Se obtienen tras aplicar una
transformacin por parte de la MMU.
Las transformaciones y el formato de las direcciones dependen de la arquitectura. En Linux los
espacios de direcciones lgico y lineal son idnticos.

Segmentacin en Linux

Linux no aprovecha la segmentacin del i386. Sin embargo, no puede desactivarla, la utiliza de una
forma muy limitada. Se ha preferido la paginacin sobre la segmentacin porque: (1) La gestin
de memoria es ms simple cuando todos los procesos usan los mismos valores de
segmentos, es decir, tienen las mismas direcciones lineales. (2) Un objetivo de Linux es la
portabilidad, y muchos procesadores soportan la segmentacin de forma muy limitada.

Paginacin en Linux

Para tener en cuenta arquitecturas de 64 bits, la paginacin en Linux tiene 3 niveles de tablas de
pginas en lugar de 2.


Linux gestiona la memoria central y las tablas de pginas utilizadas para convertir las direcciones
lineales (virtuales) en direcciones fsicas. En realidad, la gestin de la memoria implementada por
Linux considera que dispone de una tabla de pginas a tres niveles:
(1) directorio global de tablas de pginas (page global dirertory) cuyas entradas contienen las
direcciones de pginas que contienen tablas intermedias;
(2) directorio intermedio de tablas de pginas (page middle directory) cuyas entradas contienen
las direcciones de pginas que contienen tablas de pginas;
(3) las tablas de pginas (page table) cuyas entradas contienen las direcciones de pginas de
memoria que contienen el cdigo o los datos utilizados por el kernel o los procesos de usuario.

Gestin de Memoria en Linux.

Hemos visto que Linux hace uso de las ventajas de la segmentacin y de los circuitos de paginacin
de los procesadores i386 para traducir direcciones lgicas en direcciones fsicas. Podemos tambin
decir que alguna porcin de RAM est permanentemente asignada al kernel y utilizada para
almacenar el cdigo del kernel y estructuras de datos esttic as del mismo. La restante parte de la
RAM se denomina memoria dinmica, y sta es un recurso muy valioso y necesitado no slo por
los procesos sino tambin por el propio kernel. De hecho el rendimiento global del sistema
depende fuertemente de cmo de eficientemente se gestiona la memoria dinmica. Por tanto,
todos los sistemas operativos multitarea actuales tratan de optimizar el uso de la memoria
dinmica, asignndola slo cuando es estrictamente necesario y liberndola tan pronto como sea
posible. En esta seccin describiremos: estructuras bsicas del kernel para gestionar la memoria
dinmica desde dos puntos de vista: asignacin de memoria para el kernel y asignacin de
memoria para procesos, poltica de asignacin de la memoria por parte del kernel, el gestor de
faltas de pgina, etc.

Polticas de Asignacin de Memoria

Se puede observar la asignacin de memoria desde dos puntos de vista: peticiones por parte del
kernel y por parte de procesos de usuario.

El kernel: (1) Es un componente de alta prioridad, si solicita memoria no tiene sentido retardar su
asignacin; (2) Confa en si mismo y se asume que no tiene errores de programacin.
Un proceso de usuario: (1) No tiene por qu usar el espacio solicitado inmediatamente, y por el
principio de localidad seguramente no lo har, adems, se puede retardar la asignacin de
memoria real; (2) No es confiable, y el kernel debe estar listo para capturar todos los posibles
errores de programacin.

El kernel puede solicitar memoria de tres formas: (1) directamente al Buddy system, para
asignaciones genricas de grupos de marcos de pgina potencia de 2; (2) al Slab allocator, para
objetos frecuentemente usados; y (2) utilizando vmalloc() para obtener un rea de memoria
empleando marcos de pgina no contiguos. Cuando los procesos solicitan memoria, no se les
asigna realmente pginas, sino reas de memoria. Se les da rangos de direcciones lineales vlidos
que se asignarn en el momento en que se vayan a usar.

El Buddy System (sistema de colegas)

El kernel debe establecer una estrategia robusta y eficiente para asignar grupos de marcos de
pginas contiguos. Por ello, el objetivo principal del Buddy system es: Evitar la fragmentacin
externa. ste es un fenmeno que se produce cuando existen frecuentes asignaciones y
liberaciones de grupos de marcos de pgina contiguos de diferentes tamaos, pudiendo derivar en
una situacin en la que varios bloques pequeos de marcos de pginas libres estn dispersos
dentro de bloques de marcos de pginas asignados. Y como resultado puede convertirse en
imposible el asignar un bloque grande de marcos de pginas contiguos, incluso si existen
suficientes pginas libres para satisfacer la peticin.

Para evitar la fragmentacin externa existen dos posibilidades: (1) Utilizar la unidad de
paginacin para agrupar marcos de pgina dispersos en direcciones lineales contiguas. (2)
Desarrollar un sistema que controle los marcos de pgina contiguos y evite en lo posible dividir
un bloque libre grande para una asignacin pequea.

El Slab Allocator

El Buddy system asigna como mnimo una pgina. Sistema adecuado para asignaciones grandes de
memoria Para asignaciones de pocos bytes, se desperdician grandes cantidades de memoria.
Fragmentacin interna, que es provocada por una mala combinacin entre el tamao de la
memoria requerida y el tamao del rea de memoria asignada para satisfacer la solicitud. Es decir,
ste es un fenmeno en el que se malgasta el rea de memoria de una pgina cuando el tamao
de memoria es ms pequeo que la pgina.



Memoria para Procesos

Como acabamos de ver, una de las funciones del kernel es obtener memoria dinmica de forma
sencilla llamando a una variedad de funciones: get_free_pages() o pages_alloc() para
obtener pginas del algoritmo del Buddy system; kmem_cache_alloc() o kmalloc() para utilizar el
Slab allocator para objetos de propsito general o especfico, y vmalloc() para obtener un rea de
memoria no contigua. En estos casos, si la peticin puede realizarse satisfactoriamente, cada
una de estas funciones devuelve una direccin del descriptor de pgina o una direccin lineal
identificando el principio del rea de memoria dinmica asignada. Cuando se asigna memoria a
procesos en modo usuario, la situacin es diferente:
(1) Los procesos que demandan memoria dinmica se consideran no urgentes. Cuando se
carga el archivo ejecutable de un proceso, es poco probable que el proceso direccionara todas
las pginas de cdigo en un futuro prximo. Equivalentemente, cuando un proceso llama a la
funcin malloc() para obtener memoria dinmica adicional, esto no quiere decir que el proceso
acceder pronto a toda la memoria adicional obtenida. Por tanto, como regla general, el kernel
trata de aplazar la asignacin de memoria dinmica a procesos en modo usuario.
(2) Debido a que programas de usuario no pueden ser fiables, el kernel debe estar preparado para
capturar todos los errores de direccionamiento provocados por un proceso en modo usuario.

El espacio de direcciones de un proceso son las direcciones lineales que el proceso puede utilizar.
Cuando un proceso pide memoria dinmica, no se le dan marcos de pgina; se le da el derecho a
usar un nuevo rango de direcciones lineales. La asignacin de marcos de pgina se retarda todo lo
posible. El kernel representa los intervalos de direcciones lineales mediante un recurso llamado
regiones de memoria (caracterizadas por una direccin lineal inicial, una longitud y unos
atributos): (1) Se modifica dinmicamente el espacio de direcciones de un proceso; (2) Una
asignacin de memoria implica una nueva regin de memoria para el proceso. (3) Las regiones de
memoria tienen tamao mltiplo de 4 KBytes. (4) Puede haber intervalos de direcciones no
usadas entre regiones.

Gestor de Faltas de Pgina

El gestor de faltas de pgina debe distinguir la causa de la falta: (1) Error de programacin. (2)
Referencias a pginas legtimas del espacio de direcciones del proceso pero no presentes: (2.1) Por
Copy-on-Write. (2.2) Por swapping o intercambio (cuando el sistema necesita marcos de pgina
libres, Linux puede volcar a disco parte de las pginas de datos de un proceso, luego cuando el
proceso desea continuar su ejecucin necesita volver a traer a memoria principal estas pginas).
Para este caso existe la funcin, do_swap_page, que se llama para volver a cargar en memoria el
contenido de una pgina situada en el espacio de swap. Si una operacin swapin est asociada a
la regin de memoria que contiene la pgina, se llama. En caso contrario, se llama a la funcin
swap_in. En ambos casos, la pgina asignada se inserta en el espacio de direccionamiento del
proceso actual. (2.3) Porque no han sido asignadas todava. (2.4) Expansin de pila. El gestor de
falta de pgina es do_page_fault() el gestor compara la direccin lineal que caus el falta (cr2)
con las regiones de memoria del proceso actual (current process) para determinar qu hacer, de
acuerdo con el esquema que se muestra en la siguiente figura.


Intercambio (swapping) en Linux

Si un proceso necesita cargar una pgina de memoria virtual a memoria fsica y no hay ninguna
pgina de memoria fsica libre, el sistema operativo tiene que crear espacio para la nueva pgina
eliminando alguna otra pgina de memoria fsica. Si la pgina que se va a eliminar de memoria
fsica provena de un archivo imagen o de un archivo de datos sobre el que no se ha realizado
ninguna escritura, entonces la pgina no necesita ser guardada. Tan slo se tiene que desechar y
si el proceso que la estaba utilizando la vuelve a necesitar simplemente se carga nuevamente
desde el archivo imagen o de datos.

El algoritmo para la administracin de memoria en Mandriva Linux es el LRU (Least
Recently Used) de este algoritmo podemos argumentar lo siguiente:
Este algoritmo difiere del de 'No usada recientemente' en el hecho de que aquel slo se fija en el
intervalo de tiempo desde que se pusieron en 0 los bits de referencia de las pginas, mientras que
el algoritmo de 'Menos usada recientemente' intenta proveer un comportamiento casi ptimo
mediante la observacin de las pginas que menos fueron usadas recientemente. Este tipo de
pginas, estadsticamente son las que tienen menor probabilidad de ser usadas nuevamente.
Aunque este algoritmo provee un buen comportamiento en teora, es caro de implementar, en
cuanto a recursos consumidos. Hay varias implementaciones que intentan mantener bajo el costo
y lograr un rendimiento considerable. Un mtodo consiste en tener una lista enlazada
y ordenada de todas las pginas en memoria. En el final de la lista est la pgina menos usada
recientemente, y al principio la ms usada recientemente. El costo alto de este mtodo es porque
cada vez que se referencia una pgina debe ser movida en la lista, algo que consume mucho
tiempo. Otra forma, que requiere soporte de hardware, consiste en tener un contador que es
incrementado en cada instruccin del CPU. Cada vez que una pgina es accedida, gana el nmero
del contador en ese momento. Cuando una pgina debe ser retirada de memoria, simplemente
hay que buscar cul es la que tiene el menor nmero, que es la que fue usada hace ms tiempo.
En el presente no existen contadores tan grandes para permitir esto. Debido al alto costo del LRU,
se proponen algoritmos similares, pero que permiten implementaciones menos costosas.
La memoria fsica en Mandriva Linux est dividida en tres partes que son: HighMem, Normal y
DMA para manejarlas con mayor facilidad.


GESTIN DE ENTRADA/SALIDA EN MANDRIVA LINUX
En trminos generales, el sistema de E/S del ncleo de Linux es muy similar al de otras
implementaciones de Unix. El ncleo de Linux asocia fichero especial con cada manejador de
dispositivo de E/S, distinguindose entre dispositivos de bloques, de caracteres y de red.
Planificacin de disco
El planificador de disco por defecto se le conoce con el nombre de ascensor de Linux, que es una
variacin del algoritmo de LOOK. En Linux, adems del algoritmo del ascensor, se han incluido dos
algoritmos adicionales:
El planificador de E/S basado en plazos y el planificador de E/S previsor.
El planificador de Ascensor
El planificador del ascensor mantiene una nica cola con las peticiones de lectura y escritura en el
disco, realizando operaciones de ordenamiento y agrupamiento sobre cola.
Planificador basado en plazos
No intenta servir peticiones en un plazo de tiempo determinado. Sino que simplemente deja
insertar las peticiones en orden despus de un plazo conveniente.
En el esquema del ascensor se manifiestan dos problemas. El primer problema es que se puede
retrasar una peticin de un bloque distante durante un tiempo considerable debido a que la cola
se actualiza dinmicamente.
Un problema incluso ms serio es el de la distincin entre peticiones de lectura y de escritura.
Normalmente, una peticin de escritura se realiza asincrnicamente. Es decir, una vez que un
proceso solicita una peticin de escritura, no necesita esperar hasta que realmente se lleve a cabo
la peticin.
En operaciones de lectura, el proceso, antes de continuar, debe esperar hasta que se entreguen
los datos pedidos a la aplicacin. Por tanto, un flujo de peticiones de escritura puede bloquear una
peticin de lectura durante un tiempo considerable y, con ello, bloquear tambin al proceso.
Para resolver estos problemas, se utiliza e, planificador de E/S basado en plazos usa tres colas.
Planificador de E/S Previsor
El planificador del ascensor original y el basado en plazos estn diseados para servir una nueva
peticin tan pronto como se completa la peticin existente, manteniendo, por tanto, el disco lo
ms ocupado que sea posible.
Sin embargo esta poltica es contraproducente si hay numerosa peticiones de lectura sncronas.
Normalmente, una aplicacin esperara hasta que se complete una peticin de lectura y estn los
datos disponibles antes de realizar la siguiente peticin. El pequeo retardo que hay entre que se
reciben los datos de la ltima lectura y la solicitud de la siguiente lectura permite al planificador
dedicarse a otra peticin pendiente y servir esa peticin
En Mandriva Linux el planificador previsor esta superpuesto sobre el planificador basado en
plazos. Cuando se sirve una peticin de lectura, el planificador previsor causa que el sistema de
planificacin se retrase. Durante este retardo, hay una oportunidad apreciable de que la aplicacin
que solicito la ltima peticin de lectura genere otra peticin de lectura en la misma regin del
disco
Cach de pginas de Mandriva LINUX
El ncleo mantiene una cache de pginas para lecturas y escrituras de los ficheros ordinarios del
sistema de ficheros y para las pginas de memoria virtual y una cache de buffers independientes
para la E/S de bloques.
Noop.
Es el planificador de Entrada/Salida ms simple que existe. Funciona insertando todas las
peticiones de Entrada/Salida dentro de una cola de procesamiento tipo FIFO (first in, first out, que
se traduce como primero en entrar, primero en salir), e implementando fusin de peticiones.
Asume que la optimizacin del desempeo de Entrada/Salida ser gestionado por otro nivel de la
jerarqua de Entrada/Salida, como pudiera ser en el dispositivo de bloque o bien
un HBA (Host Bus Adapter o adaptador de transporte del anfitrin) inteligente, como en el caso en
los controladores RAID para SAS (Serial Attached SCSI) o bien un controlador conectado de manera
externa, como ocurre con los SAN (Storage Area Network o Redes de rea de Almacenamiento).
Este planificador de Entrada/Salida es principalmente utilizado con unidades de estado slido
(SSD, Solid State Drives) basadas sobre memoria Flash, NAND o SDRAM y en dispositivos que
carecen de dependencia a movimientos mecnicos, los cuales carecen de re-ordenamiento de
peticiones mltiples de Entrada/Salida, donde se agrupan juntas las peticiones de Entrada/Salida
que estn fsicamente cercanas, reduciendo el tiempo de peticin y la variabilidad del tiempo de
servicio de Entrada/Salida.
GESTIN DE ARCHIVOS EN MANDRIVA LINUX
Sistema de Archivos.

La estructura de archivos de Linux est pensada para facilitar la utilizacin de una gran cantidad de
archivos. Utiliza una estructura jerrquica o de rbol que permite a cada usuario poseer un
directorio principal con tantos subdirectorios como desee; LINUX tambin permite a los usuarios
compartir archivos por medio de enlaces (links), que hacen aparecer los archivos en ms de un
directorio de usuario. Cada usuario es propietario de sus archivos y para ello cada fichero dispone
de una serie de permisos. El propietario de un fichero puede permitir que otros usuarios
compartan el uso de alguno de sus ficheros manipulando adecuadamente los permisos del fichero.

ESTRUCTURA DE ARCHIVOS.
a. TIPOS DE ARCHIVOS.
La base del sistema de archivos de Linux es obviamente, el archivo, que no es otra cosa que la
estructura empleada por el sistema operativo para almacenar informacin en un dispositivo fsico
como un disco duro, un disquete, un CD-ROM, etc. Como es natural, un archivo puede contener
cualquier tipo de informacin, desde una imagen en formato GIF o JPEG a un texto o una pgina
web en formato HTML. El sistema de archivos es la estructura que permite que Linux maneje los
archivos que contiene.

Linux slo distingue tres tipos de archivos:

. Archivos o ficheros ordinarios, que son los mencionados anteriormente.
. Directorios (o carpetas). Es un archivo especial que agrupa otros ficheros de una forma
estructurada.
. Archivos especiales. Son la base sobre la que se asienta Linux, puesto que representa dispositivos
conectados a un ordenador, como puede ser una impresora. De esta forma, introducir informacin
en ese archivo equivale a enviar informacin a la impresora. Para el usuario estos dispositivos
tienen el mismo aspecto y uso que los archivos ordinarios.

b. ENLACES.
El enlace es un tipo de archivo ordinario cuyo objetivo es crear un nuevo nombre para un archivo
determinado. Una vez creado el enlace simblico, ste permite acceder al fichero que enlaza de
igual modo como si se accediese desde el archivo original. Los enlaces simblicos son
especialmente tiles cuando se quiere que un grupo de personas trabajen sobre un mismo fichero,
puesto que permiten compartir el fichero,pero centralizan las modificaciones.

c. EL CAMINO O PATH.
En cualquier sistema operativo moderno la estructura de archivos es jerrquica y depende de los
directorios. En general, la estructura del sistema de archivos se asemeja a una estructura de rbol,
estando compuesto cada nudo por un directorio o carpeta, que contiene otros directorios o
archivos.
En Linux, existe una nica raz llamada / de la que cuelgan todos los ficheros y directorios, y que es
independiente de los dispositivos que estn conectados al ordenador.

El camino o path de un fichero o directorio es la secuencia de directorio que se ha de recorrer para
acceder a un determinado fichero separados por /.

Existen dos formas del path o camino:
. El camino absoluto que muestra toda la ruta a un fichero (por ejemplo,
/home/luis/Carta.txt).
. El path relativo a un determinado directorio (por ejemplo, si nos encontramos en el directorio
/home, el path relativo al fichero Carta.txt es luis/Carta.txt).

Adems, todos los directorios contienen dos directorios especiales:

.El directorio actual, representado por el punto (.).
.El directorio padre representado por dos puntos (..).

d. ESTRUCTURA DEL SISTEMA DE ARCHVOS EN MANDRIVA LINUX.
La estructura de archivos del sistema operativo Mandriva Linux suele organizarse conforme a una
convencin, en donde generalmente se encuentra los siguientes archivos y directorios:

/ (root) El directorio raz, que se encuentra en todos las estructuras de archivos de linux.


/bin Recibe su nombre de la abreviacin de binarios o ejecutables. Es donde residen la mayor
parte de los programas ejecutables del sistema. Por ejemplo los ejecutables de las rdenes ls, cd,
cp y mv estn en este directorio. Es decir, cuando se usa la orden cd se est ejecutando el
programa /bin/cd.

/dev Todos los archivos que representan dispositivos se almacenan en este directorio.


/dev/console Es la consola principal del sistema.

/dev/fd Todos los ficheros que comienzan con fd se refieren a diferentes
configuraciones y unidades de disco flexible.
/dev/ hd Discos duros con interfaz IDE.
/dev/ttyS, / dev/cua A travs de estos ficheros se accede a los puertos serie
/dev/sd Discos duros con interfaz SCSI.
/dev/lp Ficheros de acceso a los puertos paralelo.
/dev/null Dispositivo nulo, cualquier dato enviado a este dispositivo se pierde.
/dev/tty Consolas virtuales, el sistema simula la conexin a varios terminales. Al
pulsar la combinacin de teclas Alt+Tecla_de_funcin se puede conmutar
entre los diferentes terminales.

/etc Aqu se almacenan archivos varios. El ms til es el archivo PASSWD, que es una lista de
todos los usuarios que tienen permiso para utilizar el sistema. Adems de este archivo, aqu se
encuentran comandos usados por el supervisor, archivos de configuracin, archivos de
configuracin de discos, archivos de inicializacin, listas vlidas de usuarios, grupos, ethernet,
hosts, a donde mandar mensajes crticos, etc.. Solamente el superusuario (root) puede modificar
ficheros de este directorio.

/home Contiene el directorio home de los usuarios. As, por ejemplo, /home/juan es el
directorio del usuario
juan. Naturalmente, en un sistema recin instalado este directorio estar vaco.

/lib Contiene las libreras de compartidas. Los nombres de los ficheros indican la versin, el tipo
de objeto que es y a qu lenguaje o utilidad pertenecen. Por ejemplo, libc.so.4.3.2. es una librera
de C (libc), se trata de una librera compartida (so shared object) y pertenece a la versin 4.3.2.

/lost+found Aqu se va la informacin y los procesos que se estaban ejecutando cuando el sistema
se cae.

/mnt Directorio para poder montar sistemas de ficheros Linux.


/proc Al acceder a este directorio, se consigue obtener informacin de los procesos que se
ejecutan en el sistema.

/root Directorio raz de superusuario.

/sbin Contiene programas para la administracin del sistema, que son nicamente accesibles al
superusuario.
Aqu residen los comandos para montar y desmontar los sistemas de archivos, apagar el sistema y
utilidades para configurar la red y los dispositivos.

/tmp Contiene ficheros temporales, resultado de la necesidad que tienen muchos programas del
sistema de general informacin temporal y posteriormente guardarla en dichos ficheros.


/usr Es uno de los directorios ms importantes del sistema puesto que contiene los programas de
uso comn para todos los usuarios. Su estructura suele ser similar a la siguiente.

/tmp Aqu se guardan los archivos temporales que crean los programas que son ejecutados.


TENDENCIAS DE MANDRIVA LINUX

Mandriva anuncia CloudPulse, la solucin basada en la nube para la gestin de infraestructura

CloudPulse es la evolucin de SaaS de Mandriva Pulse. Esta solucin ofrece las
mismas ventajas de Pulse sin las limitaciones materiales y recursos involucrados en el
mantenimiento de una solucin completa.
Mandriva CloudPulse permite a las empresas de todos los tamaos realizar inventarios,
despliegues, datos y copias de seguridad de la configuracin de su infraestructura TI, sin
la sobrecarga que se produce por la propiedad de una solucin de infraestructura de
gestin tradicional. CloudPulse est disponible en varios planes de precios que estn
especficamente dirigidas a las estructuras de pequeas y medianas empresas.
Esta nueva solucin marca el inicio de Mandriva en la nube. Mandriva cree que la
computacin en la nube debe poner la privacidad de los datos de los clientes y la
propiedad en primer lugar. Los datos recogidos a travs de CloudPulse se encuentra en
servidores ubicados en Francia y no se transfieren a terceros
Nace OpenMandriva, la fundacin que liderar el futuro de
Mandriva Linux

Tras recorrer una cuesta abajo que dur demasiado, la compaa
francesa Mandriva, en un ltimo intento por salvar el proyecto accedi a devolver
el control del mismo al a comunidad. Lo primero era definir a la fundacin
independiente que velara por ese proyecto: se llamar OpenMandriva.
OpenMandriva se encargar de liderar el desarrollo de la distribucin
GNU/Linux sucesora de Mandriva Linux, cuyo nombre an no est decidido.
Como en el caso de OpenMandriva, eso lo decidir la comunidad mediante
votacin.

FOROS DE MANDRIVA LINUX

http://mandriva.foroactivo.com/c1-zona-de-mandriva
http://blogdrake.net/

Comentario y Conclusiones:

Mi comentario sobre la gestin de procesos y memoria del sistema operativo Mandriva
Linux es un poco ms complicado ya que este tiene ms estados y a su vez tambin tienen
algunos tipos propios del sistema, tambin me parece interesante Scheduler de Linux que
es el que se encarga de indicar al sistema operativo cual es el proceso que est listo para
ejecutarse.
Acerca de la gestin de memoria lo que ms me intereso es el direccionamiento de
memoria virtual de Linux que hace uso de una estructura de tabla de pginas con tres
niveles, adems el Buddy system que es una estrategia utilizada por el kernel para asignar
grupos de marcos de pginas contiguos y as evitar la fragmentacin externa.
Me parece muy interesante la forma como gestiona la Entrada/Salida Mandriva Linux ya
que este lo hace a travs de un Planificador de Disco conocido mejor en el ambiente Linux
como Ascensor de Linux el cual mantiene la lista de peticiones ordenadas por el nmero
de bloque adems se maneja mediante dos algoritmos, el primero (planificador basado en
plazos) no intenta servir peticiones en un plazo de tiempo determinado. Sino que
simplemente deja insertar las peticiones en orden despus de un plazo conveniente.
El segundo (planificador e/s previsor) espera hasta que se complete una peticin de
lectura y estn los datos disponibles antes de realizar la siguiente peticin. El retardo que
hay entre que se reciben los datos de la ltima lectura y la solicitud de la siguiente lectura
permite al planificador dedicarse a otra peticin pendiente y servir esa peticin.
Con este pequeo resumen se puede apreciar que la forma de administrar la
Entrada/Salida ha ido mejorando notablemente de esta forma se pueden gestionar los
dispositivos de una manera ms rpida y fcil.
En cuanto a la gestin de archivos se la hace muy parecida a Windows cabe resaltar que
aqu existe una nica raz y que adems Mandriva Linux di distingue los caracteres entre
maysculas y minsculas lo cual nos facilita un poco ms la creacin de ficheros, tambin
la forma para buscar un directorio se la hace mediante un /. que la diferencia de
Windows.
Las tendencias de Mandriva no han sido muy desarrolladas ya que la empresa en estos
ltimos meses se encontr en una eta muy difcil econmicamente la cual la llevo casi a la
banca rota de ah que nace OpenMandriva que es la que se encargara de ahora en
adelante del desarrollo de la distribucin.
Conclusiones:
Como conclusiones tenemos:

1. El nombre de este Sistema Operativo se produjo despus que el comic de
Mandrake el mago demando a la corporacin a cargo de la distribucin de ah que
luego se lo cambio a Mandriva de la unin de las corporaciones Mandrake y
Conectiva.
2. Que la tabla de procesos de Mandriva Linux inicialmente era un vector de tamao
fijo pero fue modificado por su limitada capacidad de procesos actualmente es
una lista doblemente enlazada.
3. Los descriptores de proceso los asigna dinmicamente el kernel llamando a una funcin
especial, la gestin de la tabla de procesos (listas de descriptores de procesos) es llevada a
cabo por el scheduler.
4. El scheduler explora la lista de procesos listos para ejecutarse en memoria y utiliza
varios criterios para elegir el proceso a ejecutar, tiene que elegir el proceso que ms
merece ejecutarse entre todos los procesos que se pueden ejecutar en el sistema.
5. Existen 3 tipos de direcciones: Direcciones lgicas, Direcciones lineales, Direcciones
fsicas. Las transformaciones y el formato de las direcciones dependen de la arquitectura.
En Linux los espacios de direcciones lgico y lineal son idnticos.
6. Se puede observar la asignacin de memoria desde dos puntos de vista: peticiones por
parte del kernel y por parte de procesos de usuario.
7. El gestor de faltas de pgina debe distinguir la causa de la falta entre:
o Error de programacin.
o Referencias a pginas legtimas del espacio de direcciones del proceso pero no
presentes
8. Cuando se aade una nueva peticin a la cola del ascensor, se consideran en este orden
las siguientes cuatro operaciones:
o -Si existe una peticin pendiente en la cola
o -Si hay una peticin en la cola que es suficientemente antigua,
o - si hay una posicin adecuada
o -si no hay una posicin adecuada
o
9. Cada nueva peticin se incluye en la cola ordenada del ascensor, esa misma peticin se
sita al final de la cola FIFO de lectura en el caso de una peticin de lectura o de una cola
FIFO de escritura.
10. El planificador de plazos extrae peticiones de la cola ordenada. Cuando se completa una
peticin, se elimina de la cabeza de la cola ordenada y tambin de la cola FIFO
correspondiente.
11. Las pginas modificadas se escriben en el disco en dos situaciones:
o - cuando la cantidad de memoria libre llega a ser menor
o -cuando las paginas modificadas envejecen
12. Todos los archivos de Mandriva Linux tienen un nombre, el cual debe cumplir algunas
reglas:

o Un nombre de archivo puede tener entre 1 y 255 caracteres.
o Se puede utilizar cualquier carcter excepto la barra inclinada / y no es
recomendable emplear los caracteres con significado especial en Linux para
emplear ficheros con estos caracteres o espacios, hay que introducir el nombre
del fichero entre comillas.
o Se pueden utilizar nmeros exclusivamente si as se desea. Las letras maysculas
y minsculas se consideran diferentes y, por tanto, no es lo mismo carta.txt que
Carta.txt o carta.Txt

13. El gestor de archivos o explorador de archivos predeterminado en Mandriva Linux 2011 es
Dolphin en el entorno de escritorio de KDE desde la versin 4.0.
14. El gestor de paquetes de Mandriva Linux 2011 predeterminado es el RPM Package
Manager el cual permite actualizar, descargar, instalar y solicitar programas adems
Mandriva est desarrollando su propio Gestor de paquetes Mandriva Package Manager
(MPM) el cual puede ser instalado desde los repositorios.

Web grafa:

http://angievanezzamandriva.blogspot.com/2012/06/historia-en-1998-la-compania-francesa.html

http://www.google.com.ec/url?sa=t&rct=j&q=gestion+de+procesos+en+linux&source=web&cd=2
&cad=rja&ved=0CCQQFjAB&url=http%3A%2F%2Fwww.ual.es%2F~acorral%2FDSO%2FTema_2.pdf
&ei=RXyOUI6ZJ62u0AG-uICoBw&usg=AFQjCNG7OTYrthdxLSLbX3LUVEvQoTsJQg

http://www.google.com.ec/url?sa=t&rct=j&q=gestion+de+memorias+en+linux&source=web&cd=
1&cad=rja&ved=0CB4QFjAA&url=http%3A%2F%2Fwww.ual.es%2F~acorral%2FDSO%2FTema_3.pd
f&ei=z32OUMifCtC80AGHtoC4AQ&usg=AFQjCNFJ18t9J6cHGtkcVNdCdmBPtBZ9Dg

http://www.alcancelibre.org/staticpages/index.php/planificadores-entrada-salida-linux

http://www.revistacloudcomputing.com/2012/11/mandriva-anuncia-cloudpulse-la-solucion-
basada-en-la-nube-para-la-gestion-de-infraestructura/


Bibliografa:
Sistemas Operativos Quinta Edicin William Stallings
Pdf Unidad 1 Sistema Operativo Linux

Das könnte Ihnen auch gefallen