웹마스터 팁

공유 메모리 제어에 관한 함수 정리


1) 공유 메모리 생성
   int shm_attach ( int key [, int memsize [, int perm]])
   공유 메모리 세그먼트를 열거나 생성한다.

   ex) shm_attach($chat, 1024, 0777);
   매개변수 설명 (공유메모리의 키 값, 공유메모리의 사이즈(sysvshm.init_mem), 퍼미션 임의값 0666:8진수)

2) 공유 메모리 종료
   int shm_detach ( int shm_identifier)
   공유 메모리 세그먼트 접속을 종료.
   Unix 시스템에서의 공유메모리는 종료 후에도 여전히 존재한다. :(

3) 공유 메모리 삭제
   int shm_remove ( int shm_identifier)
   위에서 말했듯이 Unix 시스템에서는 종료 후에도 여전히 데이타가 남아있다, 삭제.

4) 공유 메모리 블럭 생성
   int shmop_open ( int key, string flags, int mode, int size)
   공유 메모리 블럭을 열거나 생성.

   "a" : 접근 (IPC_EXCL 상수로 설정) 존재하고 있는 공유 메모리 세그먼트를 여는데 이 flag를 사용.

   "c" : 생성 (IPC_CREATE 상수로 설정) 새로운 공유 메모리 세그먼트를 생성하려할 때 이 flag를 사용.

   ex) $shm_open = shmop_open (0x00ff, "c", 0777, 100);
   매개변수 설명 (키값:10진수 또는 16진수로, "세그먼트의 열기, 생성", 퍼미션:8진수, 사이즈);

   주의 : 세번째와 네번째 인자는 존재하고 있는 메모리 세그먼트를 열때는 0 을 지정해야만 한다.

5) 공유 메모리 블럭 읽기
   string shmop_read ( int shmid, int start, int count)
   공유 메모리 블럭으로부터 데이터를 판독.

   ex) $data = shmop_read($shm_open, 0, 50);
   매개변수 설명 (공유메모리 오픈 핸들(블럭아이디), 시작할offset, count:읽어낼바이트);

6) 공유 메모리 블럭의 사이즈
   int shmop_size ( int shmid)
   공유 메모리 블럭으로부터 총 사이즈를 읽어낸다.

   ex) $size = shmop_size($shm_open);
   매개변수 설명은 생략

7) 공유 메모리 블럭에 데이터 기록
   int shmop_write ( int shmid, string data, int offset)
   공유 메모리 블럭에 데이터를 기록한다.

   ex) $shm_write = shmop_write($shm_open, "데이터를 기록한다", 0);
   매개변수 설명 (공유메모리 오픈 핸들(블럭아이디), 기록할 데이타, 시작할offset)

   위 코드는 "데이터를 기록한다"를 공유 메모리 블럭에 기록하고, 기록된 바이트 수를 $shm_write 에 반환한다.

8) 공유 메모리 블럭 삭제
   int shmop_delete ( int shmid)
   공유 메모리 블럭을 삭제한다.

   ex) shmop_delete($shm_id);
   매개변수 설명은 생략

9) 공유 메모리 블럭 닫기
   int shmop_close ( int shmid)
   공유 메모리 블럭을 닫는다.

   ex) shmop_close($shm_id);
   매개변수 설명은 생략


수고하셨어요~
제목 글쓴이 날짜
윈도우XP 서비스팩2 사용자인지 아닌지 판별하기 [22] file 天高馬肥[쉬드] 2004.10.09
echo 안에 더블쿼테이션을 사용하기 [15] 토토루 2004.10.05
trim 과 addslashes를 일괄처리하는 함수 [7] BigStone 2004.10.02
'' -> ""로 만들기(?) [2] 플로렐라 2004.09.17
crontab 실제 사용 예제, 온라인 웹 게임 운영하기 (팁 + 오픈 소스 게임 소개 ^^;) [1] 박용구 2004.09.14
날씨별로 다양한 말이나 음악 보여주기[수정] [4] 로크 2004.09.13
-긴급소스 수정본- winamp 방송정보 알아내기 file 이승원 2004.09.11
랜덤으로 파일 가져와서 재생하고, 끝나면 다른 랜덤파일 또 재생하기.. 겜방 2004.09.10
썸네일 생성시 unsharp mask활용할수 있는 팁..소스 file 앗싸~~ 곰세마리 2004.09.06
Echo 여러번호출? 할때 깜빡임 없애기 [5] file 신희돈 2004.09.03
서브디렉토리,파일까지 모두 삭제하는 함수. [5] Lepas 2004.08.24
4. include, require 그리고 뽀나쓰~ [8] 티다 2004.08.19
공유 메모리 제어에 관한 함수 정리 (공유메모리) [5] Simsim 2004.08.16
접속자 IP 주소 텍스트로 저장 [7] 천상원 2004.08.15
PHP프로그램에 간단한 인증(로그인) 걸기. [15] Lepas 2004.08.09
파일업로드시 파일명 중복되지 않게 저장하기... [6] 김지호 2004.08.06
ISO 3166 국가코드로인한, 국가 검출소스 [4] kein23 2004.08.04
IP 뒤에 두칸 글자 길이에 따라서 *로 나타내기 [13] Sy-Tgt(stargt) 2004.07.30
php로 이미지를 mysql디비 저장하고 보여주는 소스 [2] QQQ 2004.07.30
디비내용을 엑셀,워드,파워포인트 파일로 다운로드 시키는 방법 [13] QQQ 2004.07.30