여러 라이브러리로 구성된 프로그램의 동시실행 방법
글쓴이: kakalot81 / 작성시간: 수, 2008/07/30 - 5:48오전
제목이 좀 애매한데요.
리눅스의 경우 특정 라이브러리를 사용할 때 실행방법이 조금씩 달라 여러 라이브러리를 사용할 시에 도무지 어떻게 프로그램을 돌려야 할 지 감이 안잡힙니다. 제가 리눅스를 접한 지 얼마 안되었고, 소켓 프로그래밍도 처음이라 많이 버벅대고 있네요.
본인의 예시)
mpich(병렬 라이브러리) 실행
mpirun -np 3 excutefile --options..
socket(네트워크) 클라이언트 실행
./client hostname && ./server
이 두 라이브러리의 실행을 한번에 할 수 있는 방법...
본격 질문)
1. 소켓 프로그래밍과 병렬(mpi)프로그래밍을 병행해서 할려고 하는데요, 우선 가능한지 궁금합니다.
2. 소켓 프로그래밍은 서버와 클라이언트를 독립적으로 실행하는 방법 말고, 한 코드로 구성된 프로그램으로는 불가능한가요?
3. 여러 라이브러리로 구성된 프로그램 실행의 경우 예를들면 실행명령을 스크립트화 해서 동시실행이 가능할까요?
약간이라도 좋으니 답변 부탁드릴께요...
Forums:
1. 네 가능합니다.
1. 네 가능합니다. 어차피 같은 C로 짜신다면, 문제될 게 없지요.
2. 네 가능합니다. fork()를 사용하시면 됩니다.
3. 동시실행이 어떤 걸 의미하시나요? 병렬처리를 말씀하시는 건가요? 질문이 애매모호하시네요..
------------------------------------------------------
아직은 젊다. 모든 것을 할 수 있는 나이란 말이지.
------------------------------------------------------
아직은 젊다. 모든 것을 할 수 있는 나이란 말이지.
3. 제가 무지해서
3. 제가 무지해서 이런 질문을 하는 지 몰라도, 두 라이브러리(mpich, socket)를 사용한 프로그램의 실행방법이 명시적으로 서로 다른데 이를 한번에 실행시킬 수 있는 방법이 있는지 궁금합니다.
예를들어 쉡 스크립트(용어가 확실한지 모르겠음)를 이용해 run이라는 실행파일을 만들고
첫번째 라인 -- mpirun -np3 실행파일....
두번째 라인 -- 실행파일 hostname..
# sh run
이런 식으로 프로그램을 한번에 실행시킬 수 있을런지요?
네 가능합니다.
네 가능합니다. 웹에서 bash 프로그래밍 혹은 shell 프로그래밍 등으로 검색해보시면, 자세한 정보들이 나오니 내용은 참고하시면 될 거 같습니다.
------------------------------------------------------
아직은 젊다. 모든 것을 할 수 있는 나이란 말이지.
------------------------------------------------------
아직은 젊다. 모든 것을 할 수 있는 나이란 말이지.
2. fork()를 사용해
2. fork()를 사용해 구체적으로 어떻게 서버/클라이언트 병합 프로그래밍하면 될까요?
fork()는 단지 해당 노드의 자식 프로세서를 생성해주는 기능으로 알고 있습니다만...
man bash /background[enter]
man bash
/background[enter]
댓글 달기