개발자를 위한 리눅스의 완성 세트
- 지은이마이클 커리스크, 로버트 러브, 스리크슈난 벤카테스와란, 스티브 베스트
- ISBN : 9788960773929
- 165,000원
- 2013년 01월 30일 펴냄 (절판)
- 페이퍼백 | 3,876쪽 | 188*255mm
- 시리즈 : 오픈소스 프로그래밍
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
[ 세트 구성: 전5권 ]
1) 『리눅스 API의 모든 것 Vol. 1 기초 리눅스 API: 파일, 메모리, 프로세스, 시그널, 타이머』
2) 『리눅스 API의 모든 것 Vol. 2 고급 리눅스 API: 스레드, IPC, 소켓, 고급 I/O』
3) 『(개정 3판) 리눅스 커널 심층 분석』
4) 『코드로 읽는 리눅스 디바이스 드라이버: 임베디드 개발자를 위한』
5) 『리눅스 디버깅과 성능 튜닝: 오픈소스 도구를 사용한 문제 진단 분석과 해결』
『리눅스 API의 모든 것』
리눅스와 유닉스 시스템 프로그래밍 인터페이스를 빠짐없이 다룬 최고의 안내서!
『리눅스 API의 모든 것』은 리눅스와 유닉스 프로그래밍 인터페이스(리눅스나 유닉스 시스템에서 동작하는 거의 모든 응용 프로그램이 사용하는 인터페이스)을 위한 최고의 안내서다.
리눅스 프로그래밍 전문가 마이클 커리스크는 이 권위 있는 책에서, 시스템 프로그래밍 기술을 마스터하는 데 필요한 시스템 호출과 라이브러리 함수를 자세히 설명하며, 이에 덧붙여 명확하고 완전한 예제 프로그램을 제공한다.
이 책에서는 1권과 2권 통틀어 500개가 넘는 시스템 호출과 라이브러리 함수, 200개가 넘는 예제 프로그램, 88개의 표, 115개의 다이어그램에 대한 설명이 들어 있으며, 다음과 같은 내용을 설명한다.
■ 파일을 효율적으로 읽고 쓰기
■ 시그널, 클록, 타이머 사용법
■ 프로세스를 만들고 프로그램 실행하기
■ 안전한 프로그램 작성법
■ 공유 라이브러리 만들고 사용하기
■ POSIX 스레드를 이용한 멀티스레드 프로그램 작성법
■ 파이프, 메시지 큐, 공유 메모리, 세마포어를 이용한 프로세스 간 통신
■ 소켓 API를 이용한 네트워크 프로그램 작성법
『리눅스 API의 모든 것』이 epoll, inotify, /proc 파일 시스템 등 수많은 리눅스 고유 기능을 다루지만, 유닉스 표준(POSIX.1-2001/SUSv3와 POSIX.1-2008/SUSv4)을 강조하기 때문에 여타 유닉스 플랫폼에서 작업하는 프로그래머들에게도 마찬가지로 가치가 크다.
『리눅스 API의 모든 것』은 리눅스와 유닉스 프로그래밍 인터페이스를 다룬 가장 포괄적인 책이며, 새로운 고전이 되리라 믿어 의심치 않는다.
『(개정 3판) 리눅스 커널 심층 분석』
이 책은 리눅스 커널의 핵심을 간결하면서도 심도있게 다루고 있다. 일반적인 운영체제에 대한 이해를 넘어, 여타 유닉스 시스템과 다른 리눅스만의 특징적인 부분에 대한 설계, 구현, 인터페이스 등을 이론과 실제 사이에서 균형감 있게 소개한다. 구체적으로 운영체제의 기본적인 기능인 프로세스 관리, 시스템 호출, 인터럽트 처리, 동기화, 메모리 관리, 파일 시스템, 이식성에 대한 내용 뿐 아니라, 최신 2.6 커널의 흥미로운 부분인 CFS 스케줄러, 커널 선점, 블럭 입출력 계층, 입출력 스케줄러 등의 내용을 상세히 다룬다.
개정 3판에서 달라진 내용
■ 커널 자료 구조를 별도 장으로 새로 추가
■ 인터럽트 핸들러와 후반부 처리에 대한 자세한 내용
■ 커널 동기화 및 잠금에 대한 깊이 있는 설명
■ 가상 메모리와 메모리 할당에 대한 설명 보강
■ 리눅스 커널 디버깅 시 도움이 되는 기법
■ 커널 패치를 제출할 때 유용한 노하우와 리눅스 커널 공동체와 함께 일하는 방법
『코드로 읽는 리눅스 디바이스 드라이버』
x86과 임베디드 CPU를 모두 아우르며, 리눅스에서 지원하는 거의 모든 디바이스 유형을 설명하고, 원시 코드 수준에서 실제 예제를 보여준다. 또한 디바이스 드라이버 개발 절차와 방법을 자세히 설명하며 커널 내부 동작 방식과 구성을 디바이스 드라이버 개발자 관점으로 바라보게 만드는 리눅스 디바이스 드라이버 개발자를 위한 실전 바이블
이 책에서 다루는 내용
■ 기존 책에서 다루지 않는 I2C, 비디오, 사운드, PCMCIA, 다양한 플래시 메모리 같은 드라이버
■ 리눅스 커널 스레드와 도우미 인터페이스를 비롯한 핵심 커널 서비스와 기능
■ 폴링, 비동기식 통지, 입출력 제어 설명
■ 임베디드 리눅스 드라이버용 I2C 프로토콜
■ 리눅스 비디오 하위시스템과 리눅스 오디오 프레임워크를 사용한 멀티미디어 디바이스 드라이버
■ 블루투스, 적외선, 와이파이, 셀룰러 네트워크 같은 무선 기술을 지원하기 위한 리눅스 구현 방식
■ 디버깅과 유지 보수 과정 등 전반적인 드라이버 개발 생명주기
■ 부록에서 다루는 리눅스 어셈블리어, 바이오스 호출, Seq 파일
『리눅스 디버깅과 성능 튜닝』
커널과 응용 프로그램 모두에 적용할 수 있는 리눅스 소프트웨어 디버깅과 성능 최적화를 다루는 리눅스 문제해결 실전서의 결정판!
리눅스 커널과 응용 프로그램 생산성을 극대화하려는 모든 개발자는 물론이고, 리눅스 안정성과 성능 문제를 해결해야 하는 시스템 관리자와 지원 전문가를 위한 필독서!
이 책은 커널과 응용 프로그램 모두에 적용할 수 있는 리눅스 소프트웨어 디버깅과 성능 최적화를 다루는 결정판이다. 리눅스 코드 예제를 광범위하게 사용함으로써, 버그가 없고 튜닝이 제대로 된 코드를 만들기 위해 오픈소스 도구와 우수 개발기법을 체계적으로 소개한다.
IBM에서 보여준 뛰어난 리눅스 시스템 최적화 경험을 토대로 저자는 메모리 관리와 I/O에서 시작해 시스템 프로세스와 커널 버그 메시지에 이르기까지 다양한 분야에 걸친 실전 기법을 소개한다. 실제 디버깅 세션을 통해 가장 복잡한 응용 프로그램과 커널 관련 문제점을 디버깅하기 위한 저자의 전문가적인 노력을 느낄 수 있다. 이 책을 통해 더 빨리 병목을 찾아서 해결하기 위한 복잡한 프로파일링 기법을 익히고, 문제가 발생했을 때 올바른 자료를 찾아내는 방법을 터득하게 될 것이다.
이 책에서 다루는 내용
■ 병목 파악 * syslog와 사건 기록
■ 코드 커버리지 * 실행 추적
■ 디버거: gdb, kgdb, KDB * 커널 동작 프로파일
■ 메모리 관리 * 캐시 실패
■ /proc 커널 자료 분석 * 사용자 모드 리눅스
■ 시스템 프로세스 감시 * 동적 탐색
■ 네트워크 성능 * 충돌 덤프 분석
■ 웁스 버그 메시지
1) 『리눅스 API의 모든 것 Vol. 1 기초 리눅스 API: 파일, 메모리, 프로세스, 시그널, 타이머』
2) 『리눅스 API의 모든 것 Vol. 2 고급 리눅스 API: 스레드, IPC, 소켓, 고급 I/O』
3) 『(개정 3판) 리눅스 커널 심층 분석』
4) 『코드로 읽는 리눅스 디바이스 드라이버: 임베디드 개발자를 위한』
5) 『리눅스 디버깅과 성능 튜닝: 오픈소스 도구를 사용한 문제 진단 분석과 해결』
『리눅스 API의 모든 것』
리눅스와 유닉스 시스템 프로그래밍 인터페이스를 빠짐없이 다룬 최고의 안내서!
『리눅스 API의 모든 것』은 리눅스와 유닉스 프로그래밍 인터페이스(리눅스나 유닉스 시스템에서 동작하는 거의 모든 응용 프로그램이 사용하는 인터페이스)을 위한 최고의 안내서다.
리눅스 프로그래밍 전문가 마이클 커리스크는 이 권위 있는 책에서, 시스템 프로그래밍 기술을 마스터하는 데 필요한 시스템 호출과 라이브러리 함수를 자세히 설명하며, 이에 덧붙여 명확하고 완전한 예제 프로그램을 제공한다.
이 책에서는 1권과 2권 통틀어 500개가 넘는 시스템 호출과 라이브러리 함수, 200개가 넘는 예제 프로그램, 88개의 표, 115개의 다이어그램에 대한 설명이 들어 있으며, 다음과 같은 내용을 설명한다.
■ 파일을 효율적으로 읽고 쓰기
■ 시그널, 클록, 타이머 사용법
■ 프로세스를 만들고 프로그램 실행하기
■ 안전한 프로그램 작성법
■ 공유 라이브러리 만들고 사용하기
■ POSIX 스레드를 이용한 멀티스레드 프로그램 작성법
■ 파이프, 메시지 큐, 공유 메모리, 세마포어를 이용한 프로세스 간 통신
■ 소켓 API를 이용한 네트워크 프로그램 작성법
『리눅스 API의 모든 것』이 epoll, inotify, /proc 파일 시스템 등 수많은 리눅스 고유 기능을 다루지만, 유닉스 표준(POSIX.1-2001/SUSv3와 POSIX.1-2008/SUSv4)을 강조하기 때문에 여타 유닉스 플랫폼에서 작업하는 프로그래머들에게도 마찬가지로 가치가 크다.
『리눅스 API의 모든 것』은 리눅스와 유닉스 프로그래밍 인터페이스를 다룬 가장 포괄적인 책이며, 새로운 고전이 되리라 믿어 의심치 않는다.
『(개정 3판) 리눅스 커널 심층 분석』
이 책은 리눅스 커널의 핵심을 간결하면서도 심도있게 다루고 있다. 일반적인 운영체제에 대한 이해를 넘어, 여타 유닉스 시스템과 다른 리눅스만의 특징적인 부분에 대한 설계, 구현, 인터페이스 등을 이론과 실제 사이에서 균형감 있게 소개한다. 구체적으로 운영체제의 기본적인 기능인 프로세스 관리, 시스템 호출, 인터럽트 처리, 동기화, 메모리 관리, 파일 시스템, 이식성에 대한 내용 뿐 아니라, 최신 2.6 커널의 흥미로운 부분인 CFS 스케줄러, 커널 선점, 블럭 입출력 계층, 입출력 스케줄러 등의 내용을 상세히 다룬다.
개정 3판에서 달라진 내용
■ 커널 자료 구조를 별도 장으로 새로 추가
■ 인터럽트 핸들러와 후반부 처리에 대한 자세한 내용
■ 커널 동기화 및 잠금에 대한 깊이 있는 설명
■ 가상 메모리와 메모리 할당에 대한 설명 보강
■ 리눅스 커널 디버깅 시 도움이 되는 기법
■ 커널 패치를 제출할 때 유용한 노하우와 리눅스 커널 공동체와 함께 일하는 방법
『코드로 읽는 리눅스 디바이스 드라이버』
x86과 임베디드 CPU를 모두 아우르며, 리눅스에서 지원하는 거의 모든 디바이스 유형을 설명하고, 원시 코드 수준에서 실제 예제를 보여준다. 또한 디바이스 드라이버 개발 절차와 방법을 자세히 설명하며 커널 내부 동작 방식과 구성을 디바이스 드라이버 개발자 관점으로 바라보게 만드는 리눅스 디바이스 드라이버 개발자를 위한 실전 바이블
이 책에서 다루는 내용
■ 기존 책에서 다루지 않는 I2C, 비디오, 사운드, PCMCIA, 다양한 플래시 메모리 같은 드라이버
■ 리눅스 커널 스레드와 도우미 인터페이스를 비롯한 핵심 커널 서비스와 기능
■ 폴링, 비동기식 통지, 입출력 제어 설명
■ 임베디드 리눅스 드라이버용 I2C 프로토콜
■ 리눅스 비디오 하위시스템과 리눅스 오디오 프레임워크를 사용한 멀티미디어 디바이스 드라이버
■ 블루투스, 적외선, 와이파이, 셀룰러 네트워크 같은 무선 기술을 지원하기 위한 리눅스 구현 방식
■ 디버깅과 유지 보수 과정 등 전반적인 드라이버 개발 생명주기
■ 부록에서 다루는 리눅스 어셈블리어, 바이오스 호출, Seq 파일
『리눅스 디버깅과 성능 튜닝』
커널과 응용 프로그램 모두에 적용할 수 있는 리눅스 소프트웨어 디버깅과 성능 최적화를 다루는 리눅스 문제해결 실전서의 결정판!
리눅스 커널과 응용 프로그램 생산성을 극대화하려는 모든 개발자는 물론이고, 리눅스 안정성과 성능 문제를 해결해야 하는 시스템 관리자와 지원 전문가를 위한 필독서!
이 책은 커널과 응용 프로그램 모두에 적용할 수 있는 리눅스 소프트웨어 디버깅과 성능 최적화를 다루는 결정판이다. 리눅스 코드 예제를 광범위하게 사용함으로써, 버그가 없고 튜닝이 제대로 된 코드를 만들기 위해 오픈소스 도구와 우수 개발기법을 체계적으로 소개한다.
IBM에서 보여준 뛰어난 리눅스 시스템 최적화 경험을 토대로 저자는 메모리 관리와 I/O에서 시작해 시스템 프로세스와 커널 버그 메시지에 이르기까지 다양한 분야에 걸친 실전 기법을 소개한다. 실제 디버깅 세션을 통해 가장 복잡한 응용 프로그램과 커널 관련 문제점을 디버깅하기 위한 저자의 전문가적인 노력을 느낄 수 있다. 이 책을 통해 더 빨리 병목을 찾아서 해결하기 위한 복잡한 프로파일링 기법을 익히고, 문제가 발생했을 때 올바른 자료를 찾아내는 방법을 터득하게 될 것이다.
이 책에서 다루는 내용
■ 병목 파악 * syslog와 사건 기록
■ 코드 커버리지 * 실행 추적
■ 디버거: gdb, kgdb, KDB * 커널 동작 프로파일
■ 메모리 관리 * 캐시 실패
■ /proc 커널 자료 분석 * 사용자 모드 리눅스
■ 시스템 프로세스 감시 * 동적 탐색
■ 네트워크 성능 * 충돌 덤프 분석
■ 웁스 버그 메시지
목차
목차
- 『리눅스 API의 모든 것 Vol. 1 기초 리눅스 API』
- 1장 역사와 표준
- 2장 기본 개념
- 3장 시스템 프로그래밍 개념
- 4장 파일 I/O: 범용 I/O 모델
- 5장 파일 I/O: 더 자세히
- 6장 프로세스
- 7장 메모리 할당
- 8장 사용자와 그룹
- 9장 프로세스 자격증명
- 10장 시간
- 11장 시스템 한도와 옵션
- 12장 시스템과 프로세스 정보
- 13장 파일 I/O 버퍼링
- 14장 파일 시스템
- 15장 파일 속성
- 16장 확장 속성
- 17장 ACL
- 18장 디렉토리와 링크
- 19장 파일 이벤트 감시
- 20장 시그널: 기본 개념
- 21장 시그널: 시그널 핸들러
- 22장 시그널: 고급 기능
- 23장 타이머와 수면
- 24장 프로세스 생성
- 25장 프로세스 종료
- 26장 자식 프로세스 감시
- 27장 프로그램 실행
- 28장 더 자세히 살펴보는 프로세스 생성과 프로그램 실행
- 29장 프로세스 그룹, 세션, 작업 제어
- 30장 프로세스 우선순위와 스케줄링
- 31장 프로세스 자원
- 32장 데몬
- 33장 안전한 특권 프로그램 작성
- 34장 능력
- 35장 로그인 계정
- 36장 공유 라이브러리 기초
- 37장 공유 라이브러리의 고급 기능
- 부록
- 『리눅스 API의 모든 것 Vol. 2 고급 리눅스 API』
- 1장 스레드: 소개
- 2장 스레드: 스레드 동기화
- 3장 스레드: 스레드 안전성과 스레드별 저장소
- 4장 스레드: 스레드 취소
- 5장 스레드: 기타 세부사항
- 6장 프로세스 간 통신 개요
- 7장 파이프와 FIFO
- 8장 시스템 V IPC 소개
- 9장 시스템 V 메시지 큐
- 10장 시스템 V 세마포어
- 11장 시스템 V 공유 메모리
- 12장 메모리 매핑
- 13장 가상 메모리 동작
- 14장 POSIX IPC 소개
- 15장 POSIX 메시지 큐
- 16장 POSIX 세마포어
- 17장 POSIX 공유 메모리
- 18장 파일 잠금
- 19장 소켓: 소개
- 20장 소켓: 유닉스 도메인
- 21장 소켓: TCP/IP 네트워크 기초
- 22장 소켓: 인터넷 도메인
- 23장 소켓: 서버 설계
- 24장 소켓: 고급 옵션
- 25장 터미널
- 26장 대체 I/O 모델
- 27장 가상 터미널
- 부록 A 연습문제 해답
- 『(개정 3판) 리눅스 커널 심층 분석』
- 1장 리눅스 커널 입문
- 2장 커널과의 첫 만남
- 3장 프로세스 관리
- 4장 프로세스 스케줄링
- 5장 시스템 호출
- 6장 커널 자료 구조
- 7장 인터럽트와 인터럽트 핸들러
- 8장 후반부 처리와 지연된 작업
- 9장 커널 동기화 개요
- 10장 커널 동기화 방법
- 11장 타이머와 시간 관리
- 12장 메모리 관리
- 13장 가상 파일시스템
- 14장 블록 입출력 계층
- 15장 프로세스 주소 공간
- 16장 페이지 캐시와 페이지 지연 기록
- 17장 장치와 모듈
- 18장 디버깅
- 19장 이식성
- 20장 패치, 해킹, 공동체
- 『코드로 읽는 리눅스 디바이스 드라이버』
- 1장 소개
- 2장 커널 내부 탐험
- 3장 커널 기능
- 4장 기반 다지기
- 5장 문자 드라이버
- 6장 직렬 드라이버
- 7장 입력 드라이버
- 8장 I2C 프로토콜
- 9장 PCMCIA와 CF
- 10장 PCI
- 11장 USB
- 12장 비디오 드라이버
- 13장 오디오 드라이버
- 14장 블록 드라이버
- 15장 네트워크 인터페이스 카드
- 16장 무선 리눅스
- 17장 MTD
- 18장 임베디드 리눅스
- 19장 사용자 영역 드라이버
- 20장 기타 디바이스와 드라이버
- 21장 디바이스 드라이버 디버깅
- 22장 유지 보수와 배포
- 23장 시스템 종료
- 부록 A 리눅스 어셈블리어
- 부록 B 리눅스와 바이오스
- 부록 C seq 파일
- 『리눅스 디버깅과 성능 튜닝』
- 1장. 프로파일링
- 2장. 코드 커버리지
- 3장. GNU 디버거
- 4장. 메모리 관리 디버깅
- 5장. 시스템 정보
- 6장. 시스템 도구
- 7장. 시스템 오류 메시지
- 8장. 이벤트 로그
- 9장. LTT
- 10장. 커널이 지원하는 프로파일러 oprofile
- 11장. UML
- 12장. 동적 프로브
- 13장. 커널 디버거