next up previous contents
Next: Diseño Padre-hijo con memoria Up: Diseños del monitor y Previous: Diseño de parte baja

Diseño Padre-hijo con memoria inferior compartida:

Debido a los problemas técnicos mencionados en el diseño de la aplicación con la parte baja de la memoria, se planeó que el proceso monitor se ejecute en la parte alta de la memoria (arriba del primer megabyte del espacio de direcciones) y cree una tarea hija con la que comparte el primer megabyte de memoria de la tarea, exceptuando la PAGE_ZERO. Así el proceso monitor crea y organiza la memoria de la máquina DOS, crea el hilo V86, crea el puerto de excepciones, y pone el hilo V86 en ejecución, como se puede apreciar en la figura 6.4.
  
Figure 6.4: Diseño Padre-Hijo con memoria inferior compartida
\begin{figure}
\epsfxsize=280pt
\hspace{.1in}
\epsffile{dsg_mem_baja_cmp.eps}
\end{figure}

De esta forma cuando se atrape una excepción y el monitor tenga que actualizar el espacio de direcciones de la tarea V86 se realiza directamente. En caso de que la actualización se realice en la primera página del espacio de direcciones, se mantiene una copia de esta página en algún lugar del espacio de direcciones de proceso monitor y se actualiza.

Esta solución es muy adecuada cuando se trabaja con procesos UNIX simples --es decir, con procesos que se ejecutan desde la terminal--, pero cuando se desea implantar en una aplicación de NeXTSTEP ocurren problemas de asignamiento de memoria, ya que depende de NeXTSTEP la organización de los diferentes bloques de memoria de sus aplicaciones.


next up previous contents
Next: Diseño Padre-hijo con memoria Up: Diseños del monitor y Previous: Diseño de parte baja
Amilcar Meneses
2002-10-03