프로그래밍

pchero on September 14th, 2009

 PID를 디스크에 기록하는 전략은 시스템 데몬들이 주로 사용하는 표준으로 syslog에서 OpenSSH까지의 모든 데몬이 이를 사용한다.  일단 파일시스템에서 PID 파일을 이용할 수 있게 되면 프로세스는 ps 출력을 구문 분석하거나 유사 파일시스템(pseudo-filesystem) /proc 를 검색하지 않고도 자신의 다른 인스턴스가 이미 실행 중인지 확인할 수 있다. 이 해결책은 kill() 시스템 호출의 반환 값을 이용하는데, 확인하고자 하는 프로세스에게 SIGTERM, […]

Continue reading about Kill() 을 이용한 프로세스 모니터링

 흔히…마법사책으로 불리는 책이다.  번역본이 나오자 마자 사놓고…바쁘다는 핑계로 여지껏 잊고 있다가…방학이 시작되고 근 한달이 지난 오늘에서야 첫장을 넘겨보았다.  역자들의 서문부터 천천히 읽어보았는데…특히 ‘김재우‘님의 서문이 인상깊었다.  역자들이 얼마나 이 책에 관심을 쏟고 정성을 기울였는지 알 수 있었다.  책을 번역함에 있어서…특히나 명서로 손 꼽히고 자신에게 특별한 만남이 된 그런책을 번역을 하게 되었으니…그 책임감이 얼마나 막중하랴…  자신들의 실수 […]

Continue reading about SICP(Structure and Interpretation of Computer Program) 컴퓨터 프로그램의 구조와 해석

pchero on January 9th, 2008

프로그래밍의 도(道) The Tao of Programming 영역: 죠프리 제임스(Geoffrey James) 필사: 세쓰 로버트슨(Seth Robertson) 한역: 윤태원 목차 제 1 권 : 무(無) 제 2 권 : 고대(古代)의 도사(道士)들 제 3 권 : 설계(Design) 제 4 권 : 코딩(Coding) 제 5 권 : 유지(Maintenance) 제 6 권 : 관리(Management) 제 7 권 : 운용의 묘 제 […]

Continue reading about 프로그래밍의 도(道) (The Tao of Programming)

 scanf 로 문자열을 받고 나면 공백으로 구분되서 남은 문자들이 아직 버퍼에 남아 있기 때문에… fflush(stdin); 을 해줌으로써 버퍼를 비워주는 프로그래밍 기법이 있다.  하지만 이것은 엄밀히 말하면 틀린것이다. 더 정확히 이야기하자면 VC 에서만(아마도..) 된다.  사용자들의 편의를 위해 VC에서 확장의 개념으로 만든것이라 생각하면 이해가 쉬울 것이다.  그렇다면 왜 이것이 안되는 것일까? C FAQ 12.26을 보면 다음과 같은 […]

Continue reading about 리눅스(Unix)에서 fflush(stdin) 사용시 발생하는 문제점.

 참으로 골치아픈 문제였다. 하지만 답은 간단했다.  문제의 시작점은 gethostbyaddr() 함수를 호출하면서 시작됐다.  210.125.213.93 (본인 블로그의 IP)주소. 어라???안돼네??  무슨 문제일까….. 211.115.77.213 (daum 의 IP 주소). 이것도 안되네??  무슨 문제가 있나보다….나는 책에 나온 예제를 다시 하나하나 비교를 하면서 혹시 있을지 모를 미스타이핑을 찾아보았다.  그런데…없.었.다.  도대체 무엇이 문제일까…  한참 고민을 하다가 디버깅을 해보았다.  역시나….gethostbyaddr()함수를 호출하는 부분에서 에러가 발생했다.  이 함수의 […]

Continue reading about gethostbyaddr 함수 호출시 널(NULL)값 리턴 문제…