2013-02-27 2 views
6

POSIX 메시지 대기열을 사용하는 동안 파일 시스템에 대기열을 생성하는 이름을 가진 일부 파일이 생성되었음을 확인했습니다. 내 질문 :메시지 큐의 내용은 어디에 저장됩니까?

Q1. 메시지 대기열은 RAM이 아닌 하드 디스크의 메시지를 대기열에 넣습니까?

2. 그렇다면 하드 디스크와 관련하여 구현이 매우 느리지 않습니까?


편집 : Linux에서

, POSIX 메시지 큐 가상 파일 시스템의 I-노드 및 메시지 큐 기술자로 구현됩니다 :

나는 책 The Linux Programming Interface이 읽기 열린 메시지 큐 설명은 파일 설명자로 구현되고 각각 설명 파일을 엽니 다. 그러나 구현 세부 사항은 이며 SUSv3에서는 필요하지 않으며 일부 다른 UNIX 구현에서는 적용되지 않습니다.

VFS 일지라도 여전히 하드 디스크에 저장됩니다.

이 정보를 염두에두고 다른 사람이 지금 두 번째 질문에 대해 논평 할 수 있습니까? 아래 링크를

+0

나는 그것이 단지 RAM에 저장되고 하드 디스크에 저장되지 않는다고 생각한다. RAM 디스크와 비슷하기 때문에 파일 시스템처럼 "액세스 할 수 있지만"하드 디스크에는 존재하지 않습니다. – Johnlcf

답변

4

이 두 번째 질문에 대해서는 첫 번째 질문 http://man7.org/linux/man-pages/man7/mq_overview.7.html

에 대한 몇 가지 선명도를 제공 할 수 있습니다 (있는 경우 및/또는 우선 하나는 뭔가 더 추가) 물론 파일 기반 큐 기반 메모리보다 속도가 느려집니다 하나. 그러나 이것은 임의의 파일 액세스 작업만큼 느리지 않을 수 있습니다. 최적화 작업은 큐잉에 맞게 구현되어 있기 때문입니다.

+0

답변을받을 자격이 있습니다. – Mawg