Dudas generales de teórico

Dudas generales de teórico

de Nicolas Aguilera Leal -
Número de respuestas: 1

Buenas. Estoy preparando el exámen y me surgieron algunas dudas mientras estudiaba.

  1. Los hilos de un proceso no comparten valores de registros de CPU ni stack. Comparten heap? Yo diría que no, pero no encontré en el libro que se dijera explicitamente.
  2. En una tabla de páginas, las entradas son direcciones físicas? O son virtuales? En un sistema multinivel, tendría sentido que fueran direcciones físicas hasta la tabla de último nivel, ya que las entradas de tablas intermedias apuntan a tablas de páginas que se encuentran cargadas en memoria. Pero la en la tabla de último nivel las entradas apuntan a páginas, que pueden o no estar cargadas en memoria. 
  3. El loader del SO es el encargado de buscar un espacio de memoria lo suficientemente grande para cargar un proceso en memoria? Es este módulo el que corre el algoritmo para elegir el espacio de memoria (best fit, worst fit, first fit)?

Gracias de antemano

En respuesta a Nicolas Aguilera Leal

Re: Dudas generales de teórico

de Jorge Merlino -
  1. Los hilos comparten el heap porque comparten toda la memoria entre ellos
  2. Las tablas de páginas sirven para traducir direcciones virtuales a físicas. La entrada inicial es una dirección virtual y la salida es una dirección física. Las tablas de páginas adentro tienen direcciones físicas, ya sea de otras tablas en el caso de multinivel o la dirección física del marco donde están guardados los datos que se buscan en el caso de la última tabla. En caso de que la página esté en el swap en la tabla se guarda alguna referencia de como encontrar esa página en la partición de swap.
  3. Si es el loader. Los algoritmos best fit, etc se usan siempre se se le pida memoria al SO, no necesariamente solo con el loader. Los procesos pueden necesitar más memoria después que están corriendo.

Saludos