Duda en cuanto a los conceptos de IPC y Thread

Re: Duda en cuanto a los conceptos de IPC y Thread

de Hernan Esteves Rosano -
Número de respuestas: 0

Hola. En cuanto a lo del IPC, no es que soporte threads como decis. En un sistema singlethreaded lo que se comunican son los procesos pero en un sistema multithreaded lo que se comunican son los kernel threads porque lo que el sistema ve son los kernel threads; en los SO que lo soportan son los kernel threads los que se schedulean, no procesos. Por ejemplo imaginate un sistema con microkernel que admite multithreading a nivel del kernel. Para utilizar un servicio, por ejemplo, para acceder a un archivo (servicio que estaria corriendo como usuario por ser microkernel) el programa cliente tiene que comunicarse con el servicio via pasaje de mensajes (o sea son kernel threads lo que se pasan los mensajes); no usan IPC de memoria compartida en ese caso. Por otro lado, el SO ni siquiera ve los user threads entonces es imposible que utilicen algun metodo de IPC. Los user threads ya comparten la memoria (mediante el PCB) y son desconocidos por el SO.

En cuanto a lo segundo, las 2 desventajas que mencionas estan bien yo creo pero lo ultimo no tanto porque la concurrencia en general presenta esos problemas ya que los procesos pueden compartir memoria tambien.

De todas formas espero que algun profesor pueda verificar lo que dije o corregir si estoy errado en algo.