martes, 28 de mayo de 2013

Conclusion de Exposiciones

Bueno Ademas de las clases se no enseño a ser autodidactas siempre nos toco averiguar y aprender o al menos repasar sobre algunos temas.. en las exposiciones siempre se nos da ese tiempo de saber explicar el tema pero antes de eso a buscar a informarse a hacerse entender frente a nuestros compañeros. Encuanto a las exposiciones de los compañeros me parecieron bien estudiadas aunque en algunas quedaron detalles que tocaria reforzar pero de resto estuvo bien.

Conclusion Final del curso.

Bueno me parece que a lo largo del semestre se tomaron las clases según lo establecido abordando muy bien cada tema y aclarando todas las dudas posibles, personalmente aprendí mas de lo que esperaba cuando entre a tomar este curso. El sistema operativo no solo una pantalla gráficos y demás características que la tecnología ha venido desarrollando, si no que hay muchos conceptos procesos que hacen que todo funcione como uno solo para presentarlo como una herramienta frente a un usuario final, ahora queda mas claro, se genera una mayor visión de todo lo que se puede llegar a hacer con un sistema operativo y sus funciones no solo en un computador, si no que también en electrodomésticos de uso diario celulares y demás..
La temática y herramientas que adoptamos para nuestro aprendizaje fueron optimas, y siempre llegando a una autoevaluacion frente a la clase y frente a nosotros mismos. fue una manera distinta de llegar a un aula y aprender. Fue mas que excelente.

Taller Concurrencia y Exclusion Mutua

Taller de Interbloqueo

Estructura de Hardware

Proceso: Conjunto de rutinas para hacer algo.
Tablas de memoria: conocer estado de la memoria, interacción entre la BIOS y la memoria RAM.
Tabla E/S: utilizar los dispositivos.
Tablas de Archivo: Existencia de los archivos.
Tablas de procesos: Dónde está ubicado el proceso, atributos del proceso necesarios para su administración.
BCP: Cada vez que se crea un proceso se crea un BCP, cuando el proceso se elimina el BCP queda guardado para un posterior uso.
Comunicación entre procesos:
Privilegios de los procesos.
Gestión de memoria: apuntadores de página.
Kernel ó núcleo: núcleo del sistema operativo, se manejan las compuertas lógicas.
Cambio de proceso: cuando se puede dar con la interrupción de reloj, se ejecuta un proceso por mucho tiempo.

Conjunto Residente

Conjunto residente es el numero de paginas de un proceso que estan alojadas en un marco de memoria principal..

Si se asignan muchos marcos a un proceso
* Se reduce el nivel de multiprogramacion
* La tasa de fallos se mantiene baja

Si se asignan pocos marcos a un proceso
* Se aumenta la tasa de fallos de pagina.

Tamaño: Con memoria virtual paginada no es necesario y puede no ser posible, traer todas las paginas de un proceso a la memoria principal para preparar su ejecucion. El sistema operativo debe decidir cuanta memoria principal asigna a un proceso.
Cuanto menor es la cantidad de memoria asignada a un proceso mayor es el numero de procesos que pueden estar simultaneamente en MP.
Si en MP hay un numero pequeño de paginas en un mismo proceso el porcentaje de fallos de pagina sera mayor.

Politicas:
* Estatica: El tamaño del conjunto residente se fija en el arranque del proceso
* Dinamica: El tamaño del conjunto residente puede variar a lo largo de la ejecucion del proceso

Paginacion

El mapa de memoria de cada proceso  esta dividida en paginas, asi como tambien la memoria principal a estas divisiones se les conoce como marcos de pagina..Debido a que solo la parte de la memoria virtual esta almacenada en la memoria principal es accesible a la Cpu segun un programa va ejecutandose  la proximidad de referencia cambia necesitando que algunas partes de la memora virtual se traigan a la memoria principal desde el disco, mientras que otras ya ejecutadas se pueden volver a depositar en el disco. (Archivos de paginacion).

Paginacion: La memoria virtual usualmente es implementada usando paginacion. en paginacion los bits menos significativos de la direccion de memoria virtual son preservados y usados directamente como los bits de orden menos significativos de la direccion de memoria fisica. los bits mas significativos son usados como una clave en una o mas tablas de traduccion de direcciones.. para encontrar la parte restante de la direccion fisica buscada.

Carga y montaje

El primer paso para la creación de un proceso consiste en cargar un programa en memoria principal y crear una imagen del proceso..

Carga Absoluta: Necesita que el modulo de carga ocupe siempre la misma posicion en memoria principal de tal manera que no ocurra un fallo de pagina.

Carga Reubicable: El ensamblador no generara direcciones reales en memoria principal si no direcciones relativas de algun punto conocido.Es Simple Si el modulo va a ser cargado comenzando con la posicion X, el cargador siempre generara X a cada referencia a la memoria a medida que carga el modulo en memoria.

Carga Dinamica en Tiempo de Ejecucion: el calculo de direcciones dinamicas proporciona una completa flexibilidad. Un programa puede crgarse en cualquier region de la memoria principal.La ejecucion del programa puede interrumpirse y el programa ser descargado de la memoria principal para ser posteriormente cargado en una posicion diferente. la direccion absoluta no se calcula hasta que se ejecuta la instruccion.

Montaje: Consiste en tomar como entrada una coleccion de modulos objetos y generar un modulo de carga que contenga modulos de programa y de datos para el cargador. el montador lo que hace es crear un modulo de carga que es concatenacion de todos modulos objetos. A demas cada referencia interna de un modulo debe cambiarse de direccion simbolica a una posicion dentro del modulo de carga total.

Editor de montaje: El montaje de direcciones dependera del tipo de modulo de carga y de cuando se produzca el montaje.

Montador de montaje: Como en la carga es posible aplazar algunas funciones de montajes se emplea para resaltar el montaje de algunos modulos externos hasta que el modulo de carga se halla creado.

Paginacion y Segmentacion de Memoria Virtual

Memoria virtual:

No controla el administrador del disco, si llega un archivo para que deba ser almacenado en el disco duro el controlador verifica si hay el espacio disponible para ese archivo , le dice al procesador su archivo quedo ubicado en determinada posición , mientras que la cache del disco empieza a guardar el archivo que se envió en el disco duro esto lo hace la cache del disco y el controlador, cuando se habla de memoria virtual se habla de un segmento del disco duro ,se trabaja con la cabeza lectora directamente con DMA donde maneja la memoria principal y la memoria virtual , todo lo que se reservo en el disco duro se convierte en basura , cuando el disco esta saturado y ya no hay espacio suficiente para ingresar la memoria virtual decae porque el procesador no puede hacer referencia a la memoria que necesita , sino por que el sistema operativo a partir de windows 95 esta diseñado para que sea interactivo con la memoria virtual , si no hay espacio en disco causara poco rendimiento del procesador ,para los procedimientos de paginacion y segmentación con memoria virtual se van a dividir dependiendo del tipo de política que se va a dividir si hablamos de paginacion decimos cada proceso se divide en paginas que son de mismo tamaño todas que corresponde en marcos de pagina del mismo tamaño todas  esto lo hace posible las administraciones de la memoria principal.

Hiperpaginacion

FALLO DE PAGINA
Si el procesador encuentra una dirección lógica que no esta en el proceso genera una interrupción indicando un fallo de acceso a la memoria , se produzca por que no esta en la memoria principal, si hay un proceso a y se hace referencia en lo que tiene c hay se produce un fallo de pagina porque se hace el proceso a asi los otros archivos estén en memoria principal 
mmu= unidad de manejo de memoria 

cuando la pagina reverenciada no se encuentra en la memoria principal, EN HARDWARE el sistema operativo hace una interrupción  y va a pasar el proceso al estado bloqueado , para que se pueda volver a ejecutar debe hacer una solicitud de lectura al disco y cargar en la memoria principal la pagina que hace falta para que el proceso pueda ejecutarse, mientras que el sistema operativo hace la solicitud de lectura, le da la vía libre para que otro proceso pueda ejecutarse.





FUNCIÓN DE INTERCAMBIO 
se produce un fallo de pagina si no hay fallo de pagina es necesario la función de intercambio? no porque no necesita acede a la memoria virtual , donde todas las direcciones lógicas están traducidas a direcciones físicas reales donde es el proceso que esta en ejecución , como ya están traducidas se continua la ejecución, que es la función de intercambio? el proceso va a intercambio mientras le ejecuta la función pueda utilizar el procesador donde determina cual de las paginas se encuentra en todos los procesos de la memoria principal es la pagina candidata a bajarse de la memoria principal donde esa candidata tiene en cuenta 4 bits que se genera con base en la recurrencia de su utilización 1 bit= memoria principal modificada 0 bit = memoria virtual= no modifica = no leída , buscar la pagina candidata , cuando ya se tiene seleccionada la pagina 

1) buscar pagina candidata
2)ubicar en pag a la m
3)subir la pag referencia da a la memoriua principal en el marco de la pag comlidata
4) mover a la memoria virtual la pagina candidata






Ventajas:
genera una utilización eficiente del procesador , el tamaño de la pagina puede ser muy pequeño .
es posible que un proceso sea mas grande que la memoria principal(no se puede ejecutar el proceso porque no cabe en memoria )

HIPERPAGINACION

es el error que mas frecuentemente se da si no se utiliza bien las dos funciones anteriores, se presenta en el momento que se hace una intercambio , por que otro proceso tubo un fallo de pagina y el proceso que llego a ejecución necesita la pagina que justo cargo el sistema para que ese marco llegara la pagina que estaba solicitando el proceso anterior, destruye el flujo de procesos , debe evitarse 



Principio De cercanía
referencias a direcciones intermedias y lejanas , la referencia a los datos de un programa proceso tienden agruparse.


Software del S.O

algoritmos de ubicación

best fit :(mejor ajuste)
ubicar el proceso que tiene que ser llevado a la memoria en el hueco o espacio disponible que mas se acerque al tamaño de hueco que esta disponible , es el de peores  resultados, puesto que busca el hueco mas pequeño para el proceso y por eso se debe compactar mas frecuentemente la memoria

tener una lista ordenada de todos los huecos que están disponibles en el momento que llega el proceso ubica el hueco disponible del tamaño igual o mayor mas pequeño que se adapte , ubica el proceso , el pequeño fracmentpo que queda se convierte en un nuevo hueco que entra al final de la lista por que es un hueco de tamaño pequeño tiene varios inconvenientes por eso es el de peor rendimiento que necesita un hadware adicional que es: la lista ordenada , necesita un sowtware adicional el de ordenar.




firts fit (primer ajuste)
ubica un apuntador que se ubica en el comienzo de la memoria , lo único que se utiliza es un registro de apuntador , donde va ha apuntar siempre al principio de la lista apuntar a los huecos disponibles a cada caso 

es mas rápido ya no utiliza un sowware adicional ni un hadware adicional,la fracmentacion externa que produce es muchísimo mas grande que el de mejor ajuste , es muchísimo mas rápido al no requerir la lista ordenada y el proceso de ordenación y produce la menor cantidad de compactaciones en la memoria , si el empieza a llenar procesos la partee superior de la memoria siempre va ha estar mas cargada con procesos en la parte superior que es donde arranca el apuntador , siempre esta mas llena que la parte inferior hacer muchas comparaciones intentando establecer el hueco al cual va ha llegar.







next fit :
guardar el apuntador para la siguiente vez que se valla ha ubicar el proceso la diferencia entre el anterior es la memoria que guarda el apuntador , donde guarda la ultima referencia donde se ubico , estos son los 3 algoritmos mas importantes, 
queda fracmentacion de 5k






bod fit(peor ajuste)
el mejor ajuste va a tener una lista ordenada donde va a tomar la lista ordenada y coge el proceso de mayor tamaño y si cabe lo coloca, tiene las mismas limitaciones que el bert fit que requiere un hadware adicional que podría ser parte de la memoria que esta en la parte superior .
el mejor algoritmo para ubicar mejor el proceso es el next fit

Gestion de memoria y acceso a datos

Gestion de memoria y acceso a datos

·         La gestión de memoria es uno de los aspectos mas complicados del sistema O.
·         Gestion de memoria implica traer y llevar bloques de datos de memoria secundaria.
·         El S.O es encargado de las siguientes actividades relacionadas con la gestión de memoria:
-          Saber cuales partes de la memoria se están usando actualmente  y quienes las están usando
-          Decidir cuales procesos se cargaran en la memoria cuando se disponga de espacio.
-          Asignar y liberar espacio de memoria según se necesite.
                                                    Imagen Encontrada en google..

Dirección de memoria

Una forma común de describir la memoria principal de un ordenador es como una colección de pequeñas cajitas (celdas) que almacenan datos e instrucciones. Cada celda está identificada unívocamente por un número o dirección de memoria.
Para poder acceder a una ubicación específica de la memoria, la CPU genera señales en el bus de dirección, que habitualmente tiene un tamaño de 32 bits en la mayoría de máquinas actuales. Un bus de dirección de 32 bits permite especificar a la CPU 232 = 4.294.967.296 direcciones de memoria distintas. Debido a la estructura de 32 Bits de un procesador común como los de Intel, las direcciones de memoria se expresan a menudo en hexadecimal.

Por ejemplo:

Para no tener que escribir 111111010100000000000010101100 podemos escribir   3F5000AC en hexadecimal.

Memoria Física

La memoria física hace referencia a los chips de memoria RAM que están insertados en lasplacas madres. Se distinguen de la memoria virtual que no existe realmente como chip, sino que es simulada empleando otro medio de almacenamiento (generalmente el disco duro).

Menos frecuentemente, el término "memoria física" también puede hacer referencia a los discos duros u otras formas de almacenamiento.

Memoria virtual

La memoria virtual es una técnica de administración de la memoria real que permite al sistema operativo brindarle al software de usuario y a sí mismo un espacio de direcciones mayor que la memoria real o física.

Corrección Segundo Parcial


martes, 16 de abril de 2013

Conclusiones Politicas


Políticas de Planificación
Hay dos aspectos importantes a contemplar en las diferentes políticas de planificación: la función de selección y el modo de decisión. La función de selección determina qué proceso, entre los procesos listos, es seleccionado para ejecutarse a continuación; puede estar basada en prioridad, en los requerimientos de los recursos, o en las características de ejecución del proceso.
El modo de decisión especifica los instantes en el tiempo en los cuales la función de selección es aplicada; y puede ser Sin Preferencia o Con Preferencia. Si es Sin Preferencia, un proceso que esté en el estado de Ejecutando, continuará haciéndolo hasta que se termine o que se bloquee esperando por una E/S o para responder un servicio del sistema operativo. En cambio, si es Con Preferencia, el proceso que se está ejecutando actualmente puede ser interrumpido y movido al estado de Listo por el sistema operativo.
FCFS (Primero en Llegar-Primero en ser Servido)
También conocida como FIFO (primero en entrar, primero en salir) o esquema de cola rígido, es la política más simple. A medida que cada proceso se torna a la condición de Listo, se une a la cola de los listos, y cuando cesa el proceso que está Ejecutando actualmente, es seleccionado para correr el proceso que ha estado en la cola el mayor tiempo.
Round Robin
Es una manera directa de reducir la penalidad que sufren los trabajos cortos por parte de la política FCFS, a través del uso de preferencia basada en un reloj. Una interrupción de reloj es generada periódicamente. Cuando esta ocurre, el proceso que está corriendo actualmente es ubicado en la cola de los listos, y el próximo trabajo listo es seleccionado en base a la política FCFS. Esta técnica también es conocida como corte por tiempo, ya que cada proceso tiene asignado un tiempo de corte.
SPN (Proceso Más Corto)
Es otra enfoque para reducir el favorecimiento a los trabajos largos, propio de la FCFS. Es una política sin preferencia en la cual el proceso con el menor tiempo esperado de procesamiento es seleccionado como el próximo. Así, un proceso corto saltará a la cabeza de la cola pasando a los trabajos largos.
SRT (Tiempo Restante Más Corto)
Se trata de una versión con preferencia de la SPN. En este caso, el planificador siempre elige el proceso que tiene el tiempo restante de procesamiento esperado más corto. Cuando un proceso nuevo se une a la cola de Listos, este tiene un tiempo restante más corto que el actual proceso en ejecución. Por consiguiente el planificador puede preferenciar siempre que un nuevo proceso se vuelva listo. Como con la SPN, el planificador debe tener una estimación del tiempo de procesamiento para ejecutar la función de selección, y hay un riesgo de inanición de los procesos largos.

FCFS
Ventajas:
* Ningún proceso espera indefinidamente.
Desventajas:
* Tiempo de espera promedio puede ser alto, dependiendo del tiempo de ejecución de procesos, orden de llegada y procesos cortos que tienen espera alta si están detrás de los largos.
* Puede producir baja utilización de recursos cuando procesos que esperan podrían ocupar otros recursos.
Round Robin
Ventajas:
* Los procesos cortos mejoran su tiempo de retorno frente al tiempo de servicio.
* El tiempo de respuesta también mejora sustancialmente.
Desventajas:
* Los procesos que se quedan bloqueados por E/S desaprovechan parte de su cuanto y salen perjudicados frente a los de gran consumo de CPU.
SPN
Ventajas:
* Los procesos cortos obtienen un buen tiempo de respuesta.
Desventajas:
* Los procesos largos tienen tiempo de respuesta altos e incluso, inanición.
* La previsibilidad del sistema se degrada.
* Hay que conocer de antemano lo que va a tardar un proceso en ejecutarse completamente, lo que es muy difícil.
SRT
* La principal diferencia respecto al SPN surge cuando llega un nuevo proceso, si al proceso en ejecución actual le queda por ejecutar un tiempo superior al tiempo que necesitara el proceso nuevo, el proceso nuevo pasa a ejecutarse.

Conclusiones
* La conclusión que podemos sacar lo expresado, podemos resumirla de la siguiente manera: La planificación es una de las áreas del desarrollo de un sistema operativo de más relevancia, ya que de ella depende en gran medida la performance del mismo.
* Notamos que en sistemas más complejos, como los de tiempo real, la planificación correcta es sumamente importante, considerando que estos son usados para controlar, en su mayoría, sucesos de la vida real y no cumplirían su cometido si fallan por tener una planificación de procesos deficiente que provoque lentitud.

Ensayoo Evaluacion de la Clase


en la evaluación de sistemas operativos quiero resaltar muchos puntos de vista es necesario realizar evaluaciones para ver cuánto conocimiento se tiene y que manejo de tema tenemos resaltando los conocimientos respectivos a cada tema no sola mente se trata del conocimiento que nos puede brindar el profesor sino que podemos encontrar muchas herramientas de aprendizaje en la web, si queremos tener un tema claro y un poco más de conocimiento debemos estudiar nosotros como estudiantes en momentos de presión y acumulación de trabajos podemos llegar a un punto de estrés y pereza , preocupación entre otras cosas que nos afectara un poco el rendimiento porque no creamos un método de estudio donde acomodemos bien los trabajos parciales, para estar preparados para cada trabajo u evaluación. la evaluación de sistemas operativos considero que fue apropiada para la asignatura, pero mi punto de vista es que tenemos muchos temas que son muy extendidos  y cuando uno está en clase interactúa pregunta sus dudas pero al punto de presentar la evaluación se sabe si estudio o no estudio pero es muy difícil grabarse todos los temas vistos en clase para esta solución realizamos ejercicios que nos ayudan a facilitar y comprender el aprendizaje, de manera que nos sirva también de herramienta para el parcial, aunque todo lo tenemos en los libros se trata de leer y comprender lo que hemos leído preparar la clase para no llegar un poco perdido del tema. A demás de todo maneja todos los temas con claridad y utiliza herramientas muy buenas y una buena estrategia de aprendizaje dejándonos el trabajo de consultar de empaparnos más de los temas que nos dará a conocer y que de alguna manera podamos interactuar al nivel del docente.

Pizarra Digital inteligente (PDI)


muestra la señal de dicho ordenador sobre una superficie lisa y rígida, sensible al tacto o no, desde la que se puede controlar el ordenador, hacer anotaciones manuscritas sobre cualquier imagen proyectada,  La principal función de la pizarra es, pues, controlar el ordenador mediante esta superficie con un bolígrafo, el dedo -en algunos casos- u otro dispositivo como si de un ratón se tratara. Es lo que ofrece interactividad con la imagen y lo que lo diferencia de una pizarra digital normal. 

Asi con esta herramienta el profesor hizo de esta en dos diferentes clases haciendo de esto una clase muy dinamica y poco conocida de mucho porcentaje de aprendizaje.. y explicando temas muy abordados de tema apoyandose en un facil manejo y su facil explicacion de los temas vistos..

Planificacion de Procesos


equidad se le asegura que todos los procesos pasan por el procesador
políticas de planificación:

modo de decisión nos permite saber si el uso del procesador lo monopoliza o no lo monopolizado tener claro que modo de decisión que utiliza el procesador

no preferente:
cuando pasa al estado de ejecución continua ejecutándose , va hasta el final a menos de que este en espera en un evento de entrada o salida en un estado bloqueado

el procesador puede ser monopolizado por un proceso demasiado largo , a medida que llega al uso del procesador solo lo soltara cuando termine


LA POLÍTICA fcfs beneficia a los procesos con carga cpu
procesos carga entrada y salida:
procesos con carga de sistema son los procesos mas cortos

la tasa de respuesta: Te+Ts/Ts = tiempo de esspera+tiempo de servicio / tiempo de servicio  se llama tasa sub n

tasa promedio es = a sumatoria de las tasas   I / I


Turno rotatorio:
T= preferente
quantum = 1

ts   fin de plato
tiempo limite exedido

siempre que un proceso tenga competencias en listos y uno llegue por admitir siempre se escribe primero el proceso que llega por admitir hay que darle prioridad para darle interacción con el usuario para minimizar los tiempos de respuesta

cada vez que el relock marque el tiempo del quatum genera una interrupción

Planificación de Procesos

1)El tiempo de respuesta:
lapso de tiempo entre petición del usuario y entre el sistema operativo se deben al desarrollo tecnológico velocidades de procesamiento ancho de banda , al desarrollo de algoritmos mas estructurados.

2)productividad:
cada proceso que tenga acceso al recurso solicitado.
cada proceso llega al uso del procesador

3)eficiencia del procesador
que el procesador destine mas tiempo a la maquina, aprovecha la capacidad de ejecucion del procesador

tipos de planificación: stalling cod

tipos:

1)planificacion de corto plazo: se ve muchas veces en la vida del ciclo

2) de mediano plazo
estado listo
bloqueado y suspendido
parcialmente en la memoria : suspendido
totalmente en la memoria listo bloqueado

3)de largo plazo
añadir procesos al conjunto de procesos
multiprogramacion
nuevo terminado

4) planificación entrada y salida

Tipos de planificación:
planificación a largo plazo:
decisión de añadir procesos al conjunto de procesos a ejecutar.

planificación a mediano plazo:
decisión de añadir procesos al conjunto de procesos que se encuentran parcial o completamente en la memoria

parcialmente en la memoria:suspendido
totalmente  en la memoria: listo bloqueado

planificacion a corto plazo: listo
decisión sobre que proceso disponible sera ejecutado en el procesador

planificación de e/s
decisión sobre la solicitud de e/s pendiente sera tratada por un dispositivo de e/s disponible

Instalacion de Debian en VirtualBox


VideoTutorial Instalacion Debian








Notas


cada vez que se va a escribir un programa nuevo en memoria es necesario comprobar la protección de ese programa o ese proceso .


requisito:
compartimiento:
puede compartir el segmento de codigo , zona de datos del proceso que s epuede compartir o tiene pribilagios para compartir .

requisito:
organización lógica :
la mayoría de los programas se organizan en módulos (librerías), clase, procesos, métodos .

____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\

1970 programacion estructurada 
determinar como se debía programar
fortran primer lenguaje (transacciones)
iso 60-77
ese lenguaje se desarrollo con base en una estructura en particular en boto(x,y) con la programación estructurada usted sabe que tiene inicio y un punto final en su programa , por que la programación que no fue estructurada tenia un inicio se hacia un boto(x,y) (programación espagetti)

____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\____/`-´\

(memoria cache)sirve de enganche entre las velocidades de un procesador y la memoria principal por eso el procesador manda las operaciones y ejecuta en el cache y manda a la memoria , (es un adaptador de velocidad entre el procesador y la memoria)

cache de disco duro memoria o cd (cumple la función de permitir al sistema operativo escribir rápidamente que el determina donde se ubica)

Gestion de Memoria


es necesario que la memoria se divida 
ejemplo: una ciudad donde no hay calles ni carreras ni avenidas es muy difícil entregar un correo si no existe una dirección que permita saber donde esta esa persona 

por eso es necesario hacer un tipo de división de memoria donde hay múltiples diseños para la división de ella 

se inicia con el análisis de lo que es la memoria principal
de hoy en ocho habla sobre la memoria virtual

para la gestión de memoria : es necesario hacer una subdivision de la memoria para hacer múltiples procesos 

toda la memoria la utiliza una sola aplicación donde es necesario desmontar la anterior para montar la siguiente 

1979 sistemas operativos mono tarea
(multiprogramacion)

los pequeños trozos que se dividen tendrán diferencias del diseño del sistema operativo que se halla echo.

requisitos de gestión de memoria:
Reubicacion:
los procesos pueden ser reutilizados que una vez asignados a la memoria el sistema operativo pueda cambiarlos.

cuando se esta diseñando el programa (hola mundo) como no se sabe si hay otros programas en el momento de la ejecución el sistema operativo sabe donde guardar ,el programador desconoce que hallan otros procesos , donde cada proceso se puede ir a bloqueado o suspendido , cuando el proceso sale de memoria , cuando retorne .. no deberá ubicarse en el mismo sitio donde partió debe ubicarse en el momento donde halla espacio .

ejemplo:
el proceso tiene 2k de tamaño es bajado de memoria y en ese punto , llega un proceso de 1k cuando retorne no podrá ubicarse en el mismo sitio y hay huecos disponibles de 8k de 2k de 16k 1k, donde se ubica el proceso de 2k ? en un proceso de 2k donde podrían haber otras opciones mucho mejor, por eso es necesario que las direcciones sean relativas para que se pueda ejecutar el procesamiento.

posición de memoria que al llegar al uso efectivo de memoria cambian y se convierten en posiciones físicas o reales posiciones virtuales o lógicas , las posicionase de memoria que hablamos tiene un proceso de convercion que va ha ubicar ese proceso o esa variable o ese apuntador en memoria.

una imagen encontrada en google 


todo proceso de memoria esta dividido en 4 regiones 
bloque de control de proceso
programa o segmento de código
datos o segmento de pila
pila o segmento de pila


una vez terminado el bloque de control de proceso es el inicio del programa lo que hace es saltar del segmento del código al mismo segmento de código del proceso, cuando estoy asignando me dirijo directamente al segmento de datos, la pila sirve para guardar esos datos intermedios para el calculo interior, pero al usuario no le interesa saberlos, el proceso debe bloquearse para limpiar la pila, donde los cálculos grandes requieren gran cantidad de memoria.