Sobes.tech
Junior — Middle

Por quais métodos os processos interagem no sistema operativo?

sobes.tech IA

Resposta da IA

Os processos no sistema operativo interagem entre si através de vários métodos de comunicação entre processos (IPC):

  • Túneis (pipes) — permitem transmitir dados sequencialmente entre processos, geralmente relacionados por parentesco.
  • Sockets — fornecem troca de dados entre processos, tanto na mesma máquina quanto através da rede.
  • Memória partilhada (shared memory) — reserva uma área de memória acessível por vários processos para uma transferência rápida de dados.
  • Semáforos — são usados para sincronizar o acesso a recursos comuns.
  • Filas de mensagens (message queues) — permitem que processos troquem mensagens estruturadas.

Em Go, para interação entre goroutines, usam-se frequentemente canais (channels), que garantem uma transferência segura de dados e sincronização.

Exemplo de uso de um canal em Go:

ch := make(chan string)
func() {
    ch <- "Olá da goroutine"
}()
msg := <-ch
fmt.Println(msg)