Creative Commons License

태그 : unix 요약보기전체보기목록닫기

1

ftok

IPC ... Inter Process Communication. 뭐 말 그대로 프로세스끼리 말하는 통신하는 방식이다. IPC에는 여러가지 방식이 있겠지만, 일반적으로 메시지큐, 공유메모리, 세마포어 이 세가지를 읊곤 한다. (소켓도 IPC라고!) 내 머릿속에서 이러한 세가지 단어를 엎고 있는 단어가 있었으니 이름하야 'SysV'.전화회사(AT&...

Message Queue of UN*X

발로 짠 UN*X message queue 프로그래밍. 아... 귀찮스러... CMake가 깔려 있다면, 아래와 같이 입력하면 대략 안성 맞춤이다.$ cmake .$ make

asynchronous socket

boolsetAsync(int fd){    int flags(fcntl(fd, F_GETFL));    return !( 0 > fcntl(fd, F_SETFL, flags|O_NONBLOCK) );}Powered by ScribeFire.

TLS - Thread Local Storage

쓰레드를 돌리다보면 해당 쓰레드에서만 유효한 변수를 만들고 싶을 때가 있다. 그럴 때 어떻게 해야할까? 쓰레드 개수만큼 벡터를 잡고, 해당 쓰레드마다 벡터 인덱스를 넘겨주는 것도 나름 방법이지만, 이러한 경우를 위해 TLS라는 것이 존재한다. 축약처럼 쓰레드 안에서만 따로 스토리지를 할당한 것인데, 일반 프로세스의 스텍과 비슷하나 그 크기는 프로세스 것...

POSIX's thread tips

쓰레드 자신에 대한 핸들을 알고 싶다면, pthread_self라는 전역 변수를 사용할 것.두 쓰레드 핸들을 비교하고 싶다면 pthread_equal(핸들1,핸들2)을 사용한다. 둘이 같으면 0이 아닌 값이 나온다.쓰레드 Concurrency를 확인/설정하고 싶으면 pthread_get/setconcurrency를 사용할 것.CPU점유를 다른 쓰레드에게...

POSIX thread's condition

이런 상황을 생각해보자. 쓰레드가 있고, 그것은 평상시에 자는 상태(CPU점유율 0%)이다. 그런데 문득 할 일이 생겨서 침 흘리며 자고 있는 쓰레드를 두들겨 깨우고 싶다. 어떻게 하면 좋을까?volatile bool gWakeUp(false);void*_thr(void*){    while (!gWakeUp) usleep(1...

clientmqueue에서 벗어나세요.

뭐, 다르게 생각하는 사람도 있겠지만, 관리하는 서버에서 sendmail을 사용하지 않는다면 clientmqueue에 쌓이는 무지막지한 파일로부터 벗어나고 싶을 것이다.일단 clientmqueue는 선무당이 알아본 바로는 sendmail에서 배송지경로를 확정하지 못한 메일을 잠시 보관해두는 곳이고, 확정 지으면 mqueue로 메일을 옮긴 뒤, 배송한다고...

UNIX 공유객체(shared object) 만들기

#include <cstdio>using namespace std;extern "C"{extern void hello(void);}voidhello(void){    printf("void hello(void);\n");}g++ -c -fPIC hello.cppg++ -shared -lc -o hello.so hel...
1

Google Adsense

Google Adsense

Google Analytics



C로그팬박스