Linux에는 어떤 핵심 커널 수준 IPC 메커니즘이 있습니까?

Linux에는 어떤 핵심 커널 수준 IPC 메커니즘이 있습니까?

내 머리 꼭대기에는 다음이 있다는 것을 알고 있습니다.

  • 관로
  • FIFO 파일/명명된 파이프
  • 메시지 대기열
  • 공유 메모리
  • 신호
  • 신호

이것이 완전한 목록입니까? 좀 조사해본 결과 내 생각엔아마도, 하지만 확실히 하고 싶습니다.

답변1

~에서Linux의 IPC 메커니즘 - 소개:

Linux 커널은 다음과 같은 IPC 메커니즘을 제공합니다.

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

공유 파일 설명자를 목록에 추가하겠습니다.

답변2

pseudo-tty도 포함되나요? 이것은 /dev/ptsLinux에서 마법의 특수 파일입니다. 나는 이전 유닉스가 특별히 명명된 장치 파일로서 고정된 수의 의사 tty를 갖고 있다고 생각합니다.

의사 tty는 파이프나 소켓 쌍과 매우 비슷하지만 다른 ioctl()호출에 응답합니다.

소켓 쌍에 관해 말하면, 시스템 호출의 특수 파일 설명자가 socketpair()포함됩니까?

또한 공유 메모리는 두 가지 형태로 제공된다는 점을 명심하세요. 더 이상 일반적으로 사용할 수 없으며 mmap()플래그가 있는 잘 알려진 파일을 사용하는 더 오래되고 난해한 System V IPC 공유 메모리가 있습니다 MAP_SHARED.

관련 정보