Quais mecanismos centrais de IPC no nível do kernel existem no Linux?

2

No topo da minha cabeça, eu sei que existem:

  • tubos
  • arquivos FIFO / pipes nomeados
  • filas de mensagens
  • memória compartilhada
  • semáforos
  • sinais

Essa é a lista completa? Fazendo um pouco de pesquisa, acho que pode ser , mas quero ter certeza.

    
por Parthian Shot 06.04.2016 / 19:17

2 respostas

1

Os pseudo-ttys contam? Esses são os arquivos especiais mágicos em /dev/pts no Linux. Os Unixes mais antigos tinham um número fixo de pseudo-ttys como arquivos de dispositivos especialmente nomeados, acredito.

Os pseudo-ttys são parecidos com pipes ou pares de soquetes, mas respondem a diferentes ioctl() chamadas.

Falando em pares de soquetes, os descritores de arquivos especiais são provenientes de uma contagem de chamadas do sistema socketpair() ?

Além disso, tenha em mente que existem duas formas de memória compartilhada. Há a mais antiga, mais esotérica memória compartilhada do System V IPC, que não está mais disponível universalmente, e está usando mmap() em um arquivo conhecido, com um sinal MAP_SHARED .

    
por 06.04.2016 / 22:44
1

De Mecanismos de IPC no Linux - Introdução :

The Linux kernel provides the following IPC mechanisms:

Signals
Anonymous Pipes
Named Pipes or FIFOs
SysV Message Queues
POSIX Message Queues
SysV Shared memory
POSIX Shared memory
SysV semaphores
POSIX semaphores
FUTEX locks
File-backed and anonymous shared memory using mmap
UNIX Domain Sockets
Netlink Sockets
Network Sockets
Inotify mechanisms
FUSE subsystem
D-Bus subsystem

Eu adicionaria descritores de arquivos compartilhados à lista.

    
por 07.04.2016 / 21:58

Tags