이미 소장하고 있다면 판매해 보세요.
|
__CHAPTER 1 핵심 개념 소개
____1.1 시스템 프로그래밍 ____1.2 API와 ABI ____1.3 표준 ____1.4 리눅스 프로그래밍의 개념 ____1.5 시스템 프로그래밍 시작하기 __CHAPTER 2 파일 입출력 ____2.1 파일 열기 ____2.2 read()로 읽기 ____2.3 write()로 쓰기 ____2.4 동기식 입출력 ____2.5 직접 입출력 ____2.6 파일 닫기 ____2.7 lseek()로 탐색하기 ____2.8 지정한 위치 읽고 쓰기 ____2.9 파일 잘라내기 ____2.10 다중 입출력 ____2.11 커널 들여다보기 ____2.12 맺음말 __CHAPTER 3 버퍼 입출력 ____3.1 사용자 버퍼 입출력 ____3.2 표준 입출력 ____3.3 파일 열기 ____3.4 파일 디스크립터로 스트림 열기 ____3.5 스트림 닫기 ____3.6 스트림에서 읽기 ____3.7 스트림에 쓰기 ____3.8 사용자 버퍼 입출력 예제 프로그램 ____3.9 스트림 탐색하기 ____3.10 스트림 비우기 ____3.11 에러와 EOF ____3.12 파일 디스크립터 얻어오기 ____3.13 버퍼링 제어하기 ____3.14 스레드 세이프 ____3.15 표준 입출력 비평 ____3.16 맺음말 __CHAPTER 4 고급 파일 입출력 ____4.1 벡터 입출력 ____4.2 epoll ____4.3 메모리에 파일 맵핑하기 ____4.4 일반 파일 입출력에 대한 힌트 ____4.5 동기화, 동기식, 비동기식 연산 ____4.6 입출력 스케줄러와 성능 ____4.7 맺음말 __CHAPTER 5 프로세스 관리 ____5.1 프로그램, 프로세스, 스레드 ____5.2 프로세스 ID ____5.3 새로운 프로세스 실행하기 ____5.4 프로세스 종료하기 ____5.5 자식 프로세스 종료 기다리기 ____5.6 사용자와 그룹 ____5.7 세션과 프로세스 그룹 ____5.8 데몬 ____5.9 맺음말 __CHAPTER 6 고급 프로세스 관리 ____6.1 프로세스 스케줄링 ____6.2 CFS 스케줄러 ____6.3 프로세서 양보하기 ____6.4 프로세스 우선순위 ____6.5 프로세서 친화 ____6.6 실시간 시스템 ____6.7 리소스 제한 __CHAPTER 7 스레딩 ____7.1 바이너리, 프로세스, 스레드 ____7.2 멀티스레딩 ____7.3 스레딩 모델 ____7.4 스레딩 패턴 ____7.5 동시성, 병렬성, 경쟁 상태 ____7.6 동기화 ____7.7 Pthread ____7.8 더 알아보기 __CHAPTER 8 파일과 디렉터리 관리 ____8.1 파일과 메타데이터 ____8.2 디렉터리 ____8.3 링크 ____8.4 파일 복사와 이동 ____8.5 디바이스 노드 ____8.6 대역 외 통신 ____8.7 파일 이벤트 모니터링 __CHAPTER 9 메모리 관리 ____9.1 프로세스 주소 공간 ____9.2 동적 메모리 할당하기 ____9.3 데이터 세그먼트 관리하기 ____9.4 익명 메모리 맵핑 ____9.5 고급 메모리 할당 ____9.6 메모리 할당 디버깅 ____9.7 스택 기반 할당 ____9.8 메모리 할당 메커니즘 선택하기 ____9.9 메모리 조작하기 ____9.10 메모리 락 걸기 ____9.11 게으른 할당 __CHAPTER 10 시그널 ____10.1 시그널 개념 ____10.2 시그널 관리 기초 ____10.3 시그널 보내기 ____10.4 재진입성 ____10.5 시그널 모음 ____10.6 시그널 블록 ____10.7 고급 시그널 관리 ____10.8 페이로드와 함께 시그널 보내기 ____10.9 시그널은 미운 오리 새끼? __CHAPTER 11 시간 ____11.1 시간에 대한 자료구조 ____11.2 POSIX 시계 ____11.3 현재 시간 얻기 ____11.4 현재 날짜와 시각 설정하기 ____11.5 시간 다루기 ____11.6 시스템 시계 조율 ____11.7 잠들기와 대기 ____11.8 타이머 __APPENDIX A C 언어의 GCC 확장 기능 __APPENDIX B 참고 서적 ____찾아보기 |
|
리눅스 커널과 코어 시스템 라이브러리를 직접 사용하는 소프트웨어를 작성해보자.
리눅스 커널 개발자인 로버트 러브는 이 책을 통해 리눅스 시스템 프로그래밍 튜토리얼, 리눅스 시스템 콜에 대한 레퍼런스 메뉴얼, 그리고 더 깔끔하면서도 빠르게 동작하는 코드를 작성하는 가이드를 제공한다. 또한, POSIX 표준 함수와 리눅스에서만 제공하는 특별한 서비스를 명확하게 구분하고 있다. 2판에서는 이론과 실무 두 가지 관점에서 리눅스를 이해할 수 있도록 다음과 같은 다양한 프로그래밍 주제를 다루고 있다. * 리눅스 커널, C 라이브러리, C 컴파일러 개요 * 파일을 읽고 쓰는 입출력의 기초 * 메모리 맵핑, 최적화 기법 등 고급 입출력 인터페이스 * 기본적인 프로세스 관리를 위한 시스템 콜 패밀리 * 실시간 프로세스를 포함한 고급 프로세스 관리 * 스레드의 개념. 멀티스레드 프로그래밍, Pthread * 파일 및 디렉터리 관리 * 메모리 할당 인터페이스와 메모리 접근 최적화 * 시그널 인터페이스와 시스템상에서의 용도 * POSIX 시계와 타이머를 포함한 시간 관리 |