- 0x0000007b
- 2차세계대전
- 3.20해킹
- 4대강
- 502 error
- 53빌딩
- 7840hs
- 88체육관 수영장
- ABI
- abortive close
- abortive shutdown
- AHCI
- akmods
- ALC1220
- alma linux
- alternatives
- AM4 메인보드
- AMD
- amd 7840hs
- amd 그래픽 게임용
- amd 내장 그래픽 최적화
- anonymous file
- API
- apple.com
- APT
- apt-get
- Armagnac
- Asrock
- ASTALIFT
- audacious player
- Today / Yesterday
- /
- Total
목록네트워크 프로그래밍 (4)
Linux Programmer
* TCP의 TIME_WAIT는 없애는 방법은 무엇인가? TCP 소켓 네트워크 프로그래밍을 하다 보면 TIME_WAIT 상황에 대한 고민을 하는 시점이 오게 된다. 학부 시절 네트워크 프로그래밍 수업을 듣고 실습실에서 열심히 프로그래밍 해봤다면 학부 때 맞닥뜨리게 되는 경우도 있다. 만일 학생 때 고민하지 않고 넘어갔다면 회사에서 주먹구구식으로 혼동을 일으키는 내용이기도 하다. 그래서 이에 대해 좀 정확한 정보를 전달하고자 이 글을 쓴다. 아래 글은 각종 책과 표준안의 레퍼런스와 실제 코딩으로도 검증했지만, 그래도 혹시 틀린 점이 있다면 개의치 말고 지적해주면 감사하겠다. ^^ TIME_WAIT란 무엇인가? 이 글을 쓰게 된 계기 TIME_WAIT는 당신을 해치지 않는다. 그래도 없애고 싶다면? SO_R..
리눅스 커널 2.6구조와 원리. 타카하시 히로카즈, 오다 이츠로, 야마하타 이사쿠, 이영희 역, 한동훈 감수, 한빛출판사. 리눅스 커널 2.6 구조와 원리야마하타 이사쿠(YAMAHATA ISAKU),타카하시 히로카즈(TAKAHASI HIROKAZU),오다 이츠로(ODA ITUROU)상세보기 1. 책의 저술 목표이 책은 커널 코드를 분석하는 책이 아니라 커널에 쓰인 기법이나 각종 표준들이 어떤 것들인지 러프하게 소개하는 책이다. 따라서 직접 커널을 개발하기 위한 책보다는 참고서에 가깝다고 본다. 그래서 내용면에서 코드보다 도표가 많은 편이다. 코드 구조는 최소화 하려고 했던 흔적이 보인다.즉 이 책은 나무를 보기보단 숲을 보는, 전체적인 조화를 확인하는 용도이다. 그림을 보면 알겠지만 도식을 연속으로 배치..
Advanced 리눅스 시스템 네트워크 프로그래밍 오탈자 정오표(최근 업데이트 목록은 맨 아래의 history를 참고해 주시기 바랍니다.) * p.126 3번째 문단 수정전 수정후 posix_madvise는 addr부터 len까지의 메모리 공간에 대해 ...생략... advise에 사용 가능한 힌트는 표 4.5에 정리해보았다. posix_madvise는 addr부터 len까지의 메모리 공간에 대해 ...생략... advise에 사용 가능한 힌트는 표 5.5에 정리해보았다. * p.156 4번째 문단 수정전 수정후 이 기능은 기존 세마포어와는 역으로 작동하여 세마포어 값이 0이면 깨어나고 양수면 잠복하게 된다. 이런 다양한 기능 덕분에 ISI 세마포어는 아직도 많이 사용되는 기능이다. 이 기능은 기존 세마..
TCP/IP 소켓 프로그래밍을 하다보면 초보자는 물론이고 중급이상의 숙련된 프로그래머도 실수하는 경우가 많다. 초급자는 경험이 없어서 실수하고, 중급자는 까먹어서 실수한다. 최근에는 미들웨어나 각종 통신 관련 라이브러리가 많아서 직접 TCP/IP 소켓 프로그래밍을 하는 경우는 줄어들고 있지만, 그렇다고 아예 없어지는 것은 아니니 주의할 점을 한 번 정도는 읽어두면 좋다. * 목차 1. TCP 소켓의 연결 종료가 감지되면 꼭 close를 해야만 한다. 2. SIGPIPE 시그널 처리 3. 재전송 1. TCP 소켓의 연결 종료가 감지되면 꼭 close를 해야만 한다. TCP 소켓은 1:1 스트림 연결이기 때문에 상대편이 소켓 연결을 종료하면 이쪽도 같이 종료해야 한다. 자동으로 닫히는 것이 아니므로 꼭 닫아..