perl을 통해서 binary data를 만들 때 주의할 점은 endian 문제이다.
perl에는 pack/unpack이라는 함수가 있는데 pack이라는 함수가
포스비 웹을 linux에서 돌리는 데 문제가 되었다. pack은 perl 에서
정의된 variable의 값을 file에 'write' 할수 있도록 바꿔준다.
포스비의 read action이 일어날 때 조회수를 읽어서 이것을
하나 증가시킨후에 다시 쓸 때에 어떤 conversion 방식을 사용하는가가
문제였다. 기존의 Sun 머신에서는 "S"를 사용했었는데 문제가 안 됐다.
그런데, intel 머신에서는 endian 문제로 말썽이다. "S"를 사용하면
아마도 big endian의 순서에 맞추어서 변환되는 것 같다. "V"를 사용하면
little endian 순서로 변환한다고 한다.

'Linux & Unix' 카테고리의 다른 글

windows에서 linux samba 연결시 한글 파일 이름  (0) 2005.11.07
Debian에서 mysql 시작 에러  (0) 2005.10.04
perl과 endian  (0) 2003.11.16
Solaris에서 scandir( ) 사용하기.  (0) 2003.04.19
linux에서 방송하기.  (0) 2003.02.16
mutt에서 text/html 보기.  (0) 2003.01.27
  
트랙백 0  |  댓글   |
 이전  1···24252627282930313233   다음 

fotowall :: ncloud RSS Feeds today : 1   yesterday : 12
total : 176,526