[질문] IPC기능과 파일을 사용한 프로세스간 통신
글쓴이: 익명 사용자 / 작성시간: 금, 2002/10/04 - 1:44오전
같은 기능을 하는 프로그램을 프로세스간의 통신을 message queue와
shared memory, 그리고, file을 만들어서 서로 통신하는 방법의 3가지로
구현을 해봤는데요..
time 유틸을 사용해서, 시간계산을 해봤는데, 제 예상과는 틀리게 의외로
file을 사용한 프로그램이 훨씬 빠른 결과가 나왔습니다.
왜 그럴까요?
1) 파일을 사용한 방법
$)time hw1 10 0.0000001
……
real 0m0.033s
user 0m0.000s
sys 0m0.040s
2) 메시지 큐를 사용한 방법
$)time hw2 10 0.0000001
……
real 0m4.578s
user 0m4.090s
sys 0m0.000s
3) 공유메모리를 사용한 방법
$)time hw3 10 0.0000001
……
real 0m4.593s
user 0m4.580s
sys 0m0.010s
파일은 각 프로세스당 만들었으니깐 10개 생성됬구요.
메세지큐도 10개, 공유메모리도 10개 생성했는데요.
원인을 아시는 분 설명 좀 부탁드리겠습니다.
Forums:
Re: [질문] IPC기능과 파일을 사용한 프로세스간 통신
벤치마크에 사용된 소스를 보아야..
테스트의 결과를 분석할 수 있을듯 하네요.
Re: [질문] IPC기능과 파일을 사용한 프로세스간 통신
공유메모리는 확실치 않지만 파일을 이용한 경우와 메시지큐를 이용한 경
우 user 의 시간은 비슷해야 할 것 같은데 너무 많은 차이가 나네요.
시간차이가 sys쪽이 아니라 user쪽에서 나는 것으로 봐서 프로세스간 통
신을 제외한 다른 부분이 동일하지는 않은 것 같고요.
소스를 봐야 확실해 질 듯 싶습니다.
그리고 수행시간 또는 횟수도 너무 짧거나 작은 것 같습니다.
현재보다 10배나 100배 정도 더 돌려보셔야 할 것 같습니다.
Re: [질문] IPC기능과 파일을 사용한 프로세스간 통신
별로 놀랄일이 아닙니다.
저는 1~100까지 더하는것을 껌따 프로그램으로 돌리는 것보다
제가 머리로 계산 하는것이 더빠른경우도 있더군요..
저는 플로피 읽고/쓰기 보다 더느리게 메모리에 읽고/쓰는 프로그램을
만들수 있습니다. ㅡ,.ㅡ;;;;
댓글 달기