구조체 통신에 대해서 질문입니다.

shint의 이미지

어떤분이.
구조체 통신.
Struct를 메모리에 넣어서 send하는건 일반적인 방법이 아니라고 하던데요.

일반적인 방법이라는게 뭔지 궁금합니다.

소타의 이미지

구조체에 포인터 방식의 거시기가 없고 두 장비의 바이트 오더가 같다면 전송해도 되겠죠~
자세한건 다음분께서..

bushi의 이미지

byte order 는 byte stream 으로 자료를 주고 받아도 마찬가지고요.

byte align 때문에 그렇습니다.
pack 시키거나 pad 시키거나하는 꽁수를 쓰는 경우도 있는데,
CPU 도 같을 거란 보장이 없고, OS 도 같을 거란 보장이 없고,
소프트웨어(혹은 컴파일러)가 동일할 거란 보장도 없으므로,
pack 이건 pad 건 좋은 방법이 아닙니다.

또하나 문제가 되는 것은...
struct a {
char a;
char b;
}
라고 했을 때 메모리 상에서 a 와 b 의 위치가 어떻게 되느냐는 겁니다.

네트웍 뿐만 아니라 이기종간 데이터 교환이 필요한 모든 응용에 똑같이 적용되는 문제입니다.
가까운 예로 storage 를 이용한 데이타 교환방식인 파일시스템이 그렇습니다.

OTL

송효진의 이미지

일반적인 방법이란 xml 변환 혹은 serialize 하는것 아닐까요?

emerge money
http://wiki.kldp.org/wiki.php/GentooInstallSimple - 명령어도 몇개 안되요~