subprocesos subproceso encontrados definicion multithreading operating-system

multithreading - encontrados - subproceso definicion



¿Qué componentes del estado del programa se comparten entre subprocesos en un proceso multiproceso? (4)

Depende del idioma y la implementación del hilo. Por ejemplo, no creo que ni siquiera C le permita acceder directamente a los registros de la CPU, por lo que es bastante discutible si, por ejemplo, pthreads comparte registros (lo cual, para el registro, estoy bastante seguro de que no lo hace). También en C, las variables globales de hecho no están asignadas en el montón, aunque pueden estar en otros idiomas.

La pila es más complicada. En C / pthreads, cada hilo tiene su propia pila, pero en otros lenguajes y modelos de subprocesamiento, la situación podría ser mucho más complicada simplemente porque los modelos de pila subyacentes pueden no ser tan simples.

¿Cuál de los siguientes componentes del estado del programa se comparte entre subprocesos en un proceso multiproceso?

  • Registrar valores
  • Heap Memory
  • Variables globales
  • Pila de memoria

Mi sugerencia; ¿Solo las variables globales, las variables globales se asignan en el montón? Así que Heap memory y Global Variables. ¿Es esto correcto?


Heap memory siempre.

Las variables globales dependen de la plataforma, generalmente se comparten.

Stack es específico de subprocesos, así como también registros.


Los valores globales y la memoria de pila se comparten en un proceso multiproceso. Los valores de registro y la memoria de pila son privados para cada hilo.


pila: no

registros: no

Heap: sí (si tiene que elegir y o n, las verdaderas respuestas depende)

globales: sí