카테고리
생활코딩

fifo 예제. unix network programming 55p

pipe는 이름을 없어 parent, child process만 통신이 가능하다. 이를 보안한게 named pipe인데, fifo라고도 한다. 책은 다른 유닉스 버전으로 작성하여, linux에 맞게 수정했다. 결론적으로 pipe와 비슷하고 더 쉽다. 이 장에 여러 내용도 많은데 일단 다른 유닉스 버전도 보이고 시간도 없어 다음 장으로 넘어간다.

카테고리
생활코딩

pipe 예제. unix network programming 47p

pipe를 이해하기 전, 일단 gdb를 사용하는 방법을 알아야 했다. pipe가 서로 다른 프로세스를 연결하는 수단이라, gdb 기본 설정으로는 pipe로 어떤 내용을 확인하기 어려웠다. 아래 코드를 디버그 하기로 했다. 이 내용을 gdb로 확인했다. gdb를 그냥 실행하면 detach-on-fork 옵션을 on으로 갖는다. child process로 분기하면 기존 프로세스를 끝까지 실행하는 옵션인 듯 하다. parent 프로세스를 정지시키고, inferior로 child 프로세스로 […]

카테고리
생활코딩

c 더블 포인터 이해하기.

c는 포인터가 혼란스러운데 이해했다고 믿고???? 나중에 다시 생각하려고 남긴다. 다음 코드를 만들었고 실패했다. bufToStruct를 실행할 때 포인터로 넘겼어도 buf를 받으면서 임시 공간에 변수를 만든다. 함수 실행을 끝내면서 그 공간도 날아가 도로묵 된다. 위 내용을 gdb로 확인해 보았다. bufToStruct로 readbuf를 전달할 때 주소를 전달하는 직접 전달하길 원했다. bufToStruct로 전달하는 0xbefff2cc는 어디에서 나왔을까? 임시 변수로 자기가 만들었다. […]

카테고리
책과 영화

Linux System Programming

isbn: 978-1449339531 사 보진 않았지만 참 유용하다. 인터넷을 검색하면 pdf를 쉽게 찾을 수 있다. 400 페이지 책을 자세히 읽고 있으면 지친고 괴롭다. 예제 중심으로 읽고 세세한 나머지 부분을 통과 했다. 나중에 필요할 경우 다시 찾아 보면 된다. 다만 예제는 직접 실행했고 조금씩 수정해 보았다. 전에 도서관에서 비슷한 책을 빌렸는데 그때 왜 이런 책을 읽는지 이해가 […]

카테고리
생활코딩

signal, page 342

signal 예제. shell에서 kill -l로 해당 PID에 시그널을 보낼 수 있다.