로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

리눅스 디바이스 드라이버

   
지은이 유영창   |   출판사 한빛미디어  |   발행일 2004년 12월 10일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 35,000원31,500원 10%
마일리지 5% 1,750원
발행일 2004-12-10
ISBN 8979142951 | 9788979142952
기타정보 국내서 | 960쪽
예상출고일
배송비 무료배송
   
운영체계(OS)
종합지수 61p 3 위
   
주의사항 더이상 출간되지 않습니다.
 

리눅스 디바이스 드라이버를 학습하기 위해 필요한 내용을 단계적으로 설명한 후, 학습한 내용을 복습하고 실제 사용법을 익히게 도와주는 실제 예제를 제시하는 책. 디바이스와 관련된 커널(2.6&2.4)을 어떻게 활용하는지를 명확하게 짚어주고 동작원리를 보여줌으로써 보다 쉽게 디바이스 드라이버를 제작할 수 있도록 도와준다.

일반 PC에 설치되어 있는 프린터 포트를 이용해 실습을 진행할 수 있기 때문에 하드웨어에 대한 전문 지식 없이도 쉽게 사용할 수 있고 간편한 LED와 금속 클립 정도만 있으면 된다. 사례별로 활용도 높은 디바이스 드라이버 제작법을 알려주며, 쉽게 찾아서 활용할 수 있는 리눅스 커널 API 함수와 활용법이 수록되어 있다. 또한 3명의 현장 개발자가 저자와 함게 테스트하고 격론한 컨텐츠와 예제가 풍부하다.

Chapter 1. 실습 환경 설정과 준비
01. 시스템과 리눅스 운영체제의 준비
02. 커널 소스의 준비
03. 실습 기자재의 준비
04. 준비된 실습 환경 점검
-
Chapter 2. 리눅스 커널과 디바이스 드라이버
01. 운영체제로서의 리눅스
02. 리눅스 커널
03. 디바이스 드라이버
-
Chapter 3. 디바이스 파일과 저수준 파일 입출력
01. 디바이스 파일과 파일 입출력 함수
02. 저수준 파일 입출력 함수
03. 디바이스 파일 관련 함수
04. 저수준 파일 입출력 함수의 사용 예
mknod 명령과 저수준 파일 입출력 함수 정리
-
Chapter 4. 간단한 모듈 테스트
01. 모듈 프로그램 맛보기
02. 모듈 소스 준비
03. 모듈 소스의 형식
04. 모듈 컴파일용 Makefile
05. 모듈 매개변수의 지정
06. 커널 메시지의 출력
07 커널과 모듈
-
Chapter 5장 메모리 할당과 해제
01. 변수
02. 동적 메모리
03. 동적 메모리 예제
04. 메모리 풀
05. 메모리 풀 예제
메모리 할당과 해제 함수의 정리
-
Chapter 6. 디바이스 드라이버의 등록과 해제
01. 디바이스 드라이버 제어 방식
02. struct file_operations
03. 문자 디바이스 드라이버 등록과 해제 및 구성
04. 응용 프로그램과 형 디바이스 드라이버의 호출 관계 예제
디바이스 드라이버 등록과 해제 함수 정리
-
Chapter 7. 디바이스 드라이버의 초기화와 종료
01. 초기화와 종료 처리
02. 모듈 사용 횟수의 관리
03. I/O 영역의 경쟁 처리 함수
디바이스 드라이버 초기화와 종료 함수의 정리
-
Chapter 8. 디바이스 드라이버의 읽기와 쓰기
01. 읽기와 쓰기의 구현
02. I/O 처리
03. 사용자 프로세스 공간과 커널 프로세스 공간
04. 디바이스 드라이버의 읽기와 쓰기 구현 예제
디바이스 드라이버 읽기와 쓰기 함수 정리
-
Chapter 9. 주 번호와 부 번호의 처리
01. 주 번호, 부 번호, 디바이스 타입
02. 부 번호에 의한 파일 처리 방법
03. 부 번호에 의한 파일 처리 예제
04. 예약된 주 번호
-
Chapter 10. 디바이스의 제어
01. 디바이스 제어
02. ioctl() 함수를 이용한 입출력 구현 예제
디바이스 제어 함수의 정리
-
Chapter 11. 시간 처리와 커널 타이머
01. 시간 처리
02. 커널 타이머
03. 커널 타이머를 이용한 LED 점멸 예제
시간 처리와 커널 타이머 함수 정리
-
Chapter 12. 인터럽트 처리
01. 인터럽트
02. 인터럽트 발생 시간 체크 예제
인터럽트 처리 함수 정리
-
Chapter 13. 블록킹 I/O
01. 프로세스의 사용 효율성과 잠들기(sleep) 구조
02. 블록킹 I/O
03. 인터럽트 발생 시간 체크 예제
04. wait_event_interruptible 매크로
블록킹 I/O 함수 정리
-
Chapter 14. 입출력 다중화
01. 입출력 다중화
02. 다중 입출력의 구현
03. 다중 입출력 처리를 이용한 프린터 포트 예제
입출력 다중화 함수 정리
-
Chapter 15. 태스크 큐와 워크 큐
01. 태스크 큐와 워크 큐의 필요성
02. 태스크 큐
03. 워크 큐
04. 태스크 큐 예
05. 워크 큐 예
06. 태스크 큐를 이용한 LED 점멸
06. 워크 큐를 이용한 키 입력 채터링 방지 예제
태스크 큐 함수 정리
워크 큐 함수 정리
-
Chapter 16. BottomHalf
01. TopHalf와 BottomHalf
02. 태스크 큐와 mark_bh() 함수
03. 태스크 큐 처리 수정(2.4-> 2.6)
04. 인터럽트 발생 시간 체크 예제
인터럽트 함수 정리
-
Chapter 17. proc 파일 시스템
01. 시스템 정보의 확인
02. proc 파일 시스템
03. proc 파일 시스템 동작 방식
04. 가산기 예제
proc 파일 시스템 함수 정리
-
Chapter 18. 메모리 매핑
01. 물리 주소와 가상 주소
02. 주소 변환 함수
03. 프로세스 메모리 매핑
04. 매개변수 전달값을 보여주는 예제
05. VIDEO I/O 영역 메모리 mmap 구현 예제
06. nopage를 이용한 커널 메모리 mmap 구현 예제
메모리 매핑 함수 정리
-
Chapter 19. 모듈간의 상호 참조
01. 모듈간의 상호 참조와 EXPORT_SYMBOL 매크로
02. 커널 2.4의 /proc/ksyms와 커널 2.6의 /proc/kallsyms
03. 모듈간의 심볼 참조 예제
-
Chapter 20. 다중 프로세스 환경의 디바이스 드라이버
01. 단일 프로세스를 위한 디바이스 드라이버
02. 프로세스별 관련 관리
03. 비선점형 커널의 디바이스 드라이버
04. 선점형 커널의 디바이스 드라이버
-
Chapter 21. 디바이스 드라이버를 커널 소스에 포함시키는 방법
01. 사전 고려 사항
02. 커널에서의 커널 컴파일 옵션 파일
03. Makefile 문법 규칙
04. 디바이스 드라이버를 커널에 포함시키는 예
-
Chapter 22. 블록 디바이스 드라이버
01. 리눅스와 블록 디바이스
02. 하드디스크의 특성
03. 블록 디바이스 드라이버와 요구 큐
04. 버전별 블록 디바이스 처리
05. 커널 2.4의 블록 디바이스 드라이버
06. make_request 방식의 램디스크 예제
07. request 방식의 가상의 하드디스크 예제
08. 커널 2.6의 블록 디바이스 드라이버
09. make_request 방식의 램디스크 예제
10. request 방식의 가상의 하드디스크 예제
블록 디바이스 함수 정리
-
Chapter 23. 네트워크 디바이스 드라이버
01. 리눅스와 네트워크 디바이스 드라이버
02. 네트워크 디바이스 드라이버 등록과 제거
03. 보편적인 초기화 및 등록 처리 절차
04. struct net_device의 이해
05. 네트워크 디바이스의 열기와 닫기
06. 전송과 수신
07. 통계 처리
08. 네트워크 디바이스 제어 ioctl
09. 멀티 캐스트 처리
네트워크 디바이스 드라이버 함수 정리
-
Chapter 24. 디바이스 드라이버 파일 시스템(devfs)
01. devfs 파일 시스템
02. 디바이스 파일 생성 예제
devfsc 파일 시스템 함수 정리
-
Chapter 25. 시스템 파일 시스템(sysfs)
01. sysfs 파일 시스템
02. sysfs 파일 시스템의 이용
-
Chapter 26장. 이기종 시스템으로의 이식, 시그널, 헬퍼
01. 이기종 시스템으로의 디바이스 드라이버 이식
02. ARM용 DIO 디바이스 드라이버 예제
03. 시그널과 SIGIO
04. call_usermodehelper 사용 예제
05. modprobe와 모듈 적재 요청 처리
-
Chapter 27. DMA와 PCI 디바이스
01. DMA
02. PCI
유영창(frog@falinux.com, FA리눅스 개발 이사)
전자공학을 전공한 후 공장 자동화 및 네트워크 제어에 관련된 프로그램을 개발하였다. 윈도우 환경에서 동작하는 제어 시스템의 불안정성을 극복하기 위한 방안으로 PC 제어 시스템에 리눅스를 도입하면서 임베디드 리눅스를 접했다. 임베디드 컨트롤러와 리눅스를 접목하는 회사인 FA리눅스 주식회사에서 기술 이사를 역임하면서, 임베디드 리눅스 인터넷 동호회인 KELP에 온라인 강의를 올리는 등 활발히 활동중이다.



[감수자 소개]

안윤호(Xray21의 기술 이사 & 마소 기술 자문 위원)
현재 Xray21의 기술 이사로 재직하고 있으며, 커널의 구조와 임베디드 시스템에 관심이 많다. 아직은 커널 개발 분야에서 이렇다 할 업적은 없으나 리눅스와 커널의 구조와 NetBSD 커널에 관심이 많은 아마추어 커널 해커다.

오재경(FA리눅스 개발 실장)
단국대 전자공학과를 졸업한 후 현재 FA리눅스 개발 실장으로 재직하고 있으며, 8비트 마이컴과 윈도우 등을 거쳐 리눅스를 주 도구로 사용하고 있다. IC 칩의 제조사 웹사이트에서 제품들의 스펙이나 데이터시트 등을 찾아보는 데 즐거움을 느낀다.

유명환((주)넷플러그 대표)
애플리케이션에서 디바이스 드라이버에 이르기까지 다양한 경험을 토대로 삼성SDS 멀티캠퍼스, 삼성전자, 한국소프트웨어진흥원 IT SoC 아카데미, 비트캠프 등에서 임베디드 리눅스 관련 장단기 과정 강의를 진행해왔다. 현재는 유비쿼터스 기술(프로세서, 통신, 센서 기술)에 관한 전문 교육용 기자재 및 컨텐츠를 제작하고 있다.
처음 리눅스 디바이스 드라이버 만들어보려고 하시는 분들께 추천 합니다.
장병남님이 쓰신 서평보기 I 평점 I 조회수(1706) I 공감 (0) I 블로그
900페이지의 분량과 27~28 장의 분량으로굉장히 두꺼운 책입니다. 하지만, 국내 개발자가 정성스럽게 쓰신 내용과이해하긴 쉬운 코드로 구성되어 있어서 하루 1장씩 목표로 하신다면 (네트워크 디바이스, 블럭 디바이스는 하루 반장 정도로 해야 합니다.. 내용이 많아서,,)1달 반정도면 완독이 가능 합니다. 현재 커널이 2.6.30이 넘어가는 시점에서 2005년 책이 별 의미가없다고 생각하실수도 있지만, 기본을 이해하기 위해 꼭 추천 드리고싶습니다. 이 책을 먼저 마스터 하시...
책의 명성(?)에 비해서는 좀 .....
최성춘님이 쓰신 서평보기 I 평점 I 조회수(1381) I 공감 (0) I 블로그
그냥 하루만에 완독 가능한 수준의 책입니다.뭔말이냐하면 책페이지는 엄청나도 두꺼운데 내실은 좀 부족합니다.제가 가장싫어하는 스타일의 집필입니다.장수채우려고 노력한 흔적이 여기저기 보이는군요.2.4 2.6 전부설명한는건 좋은데 왜 소스코드를 따로보여주는지 아무리 생각해도 이해가 안됩니다.전처리기로 처리하시든지... 다른부분만 보여주면 될것을말이죠.이것만 잘 처리하면 이책 1/4은 얇아질수있을겁니다.똑같은 컴파일과정 보여주는것도 눈에 거스르구요.그리고 커널에...
아무 것도 모르는 저에게 힘이 되어준책
송창안님이 쓰신 서평보기 I 평점 I 조회수(1250) I 공감 (0) I 블로그
작년 초에 처음 이책을 접하면서 아무것도 모르는 저에게 힘이 되어준 책 이라고 할 수 있습니다.커뮤니티 에서 처음 이책을 가지고 스터디를 하면서 기존에 디바이스에 대해서 확실히 알 수 없었지만 이책을 보면서 스터디를 해 나가면서 프린트 포트에 연결 하여 불이 들어 오게 하는 실습과 디바이스에 대해서 포괄 적으로 알 수 있는 핵심적인 내용들이 수록 되어 있어 현재 제 책상의 애장 도서중 한개로 넣어 두고 있습니다. 아직 많이 부족 하지만 일년전의 저의 모습을 또...
올해에 구입한 책중에 최고~~~
김근수님이 쓰신 서평보기 I 평점 I 조회수(1258) I 공감 (0) I 블로그
책을 받고 나서 너무 좋아서 무작정 준비하고 일기 시작 했습니다. 너무 좋아요~~~
너 괜찮은데!!!
김현준님이 쓰신 서평보기 I 평점 I 조회수(1352) I 공감 (0) I 블로그
말 그대로 디바이스 드라이버만을 위한 책이다.보통은 embedded system programming이라 해가지고 임베디드 개요부터 이것 저것 백화점식으로 다 나오는데, (이런 책들은 시스템 개요 및 전체 맥락을 잡는 책으로 보구)이 책은 말 그대로 디바이스 드라이버를 샘플을 진행하며 설명해 놓은 책으로, 커널에 관심을 갖기 시작한 리눅서라든가, 임베디드 시스템을 해야하는 이들에게 디바이스 드라이버의 길라잡이로 사용할만한 좋은 책으로 추천하는 바이다. 아직 나 또한 관련...
고수를 향한 첫걸음을 위하여
이재경님이 쓰신 서평보기 I 평점 I 조회수(1907) I 공감 (0) I 블로그
이 책을 보면서 느낀 감회는 전에 김상형님에 api정복을 만났을때와 비슷한 느낌입니다.처음 가보는 길을 갈때 상세하게 잘 만들어진 지도를 만난 그런 느낌입니다.제일 맘에 드는 부분은 kernel 2.4 와 2.6에 차이를 설명해 놓은 부분입니다.아직은 제가 드라이버 공부에 초보인지라 어떤 부분에서의 알고있다고 가정한 부분에서의 생략되어있는 부분은 다른 책이나 사이트를 참조하고 한다고 조금 힘들었지만요 ^^ 모든게 제 입맛에 맞을 수는 없는 법이니 까요 .커널과 부트로더 그...
우분투 리눅스...
이종원
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
 
전체평균(42)
회원평점   회원서평수 6
처음 리눅스 디바이스 드라이버 만들어보려고 하시는 분들께 추천 합니다.
장병남 님  2010-03-01
책의 명성(?)에 비해서는 좀 .....
최성춘 님  2007-08-17
아무 것도 모르는 저에게 힘이 되어준책
송창안 님  2006-05-02
올해에 구입한 책중에 최고~~~
김근수 님  2006-04-18
너 괜찮은데!!!
김현준 님  2005-07-08
고수를 향한 첫걸음을 위하여
이재경 님  2005-05-19
한빛미디어 출판사의 신간
고객이 보이는 구글 애널리틱스
문준영 저
27,000원
(10%↓+5%)
 
김도형의 데이터 사이언스 스쿨 : 수학 편
김도형 저
49,500원
(10%↓+5%)
 
미술관에 GAN 딥러닝 실전 프로젝트
데이비드 포스터 [옮긴이]박해선 저
0원
(0%↓+1%)
 
미술관에 GAN 딥러닝 실전 프로젝트
데이비드 포스터 [옮긴이]박해선 저
28,800원
(10%↓+5%)
 
C++ 최적화
커트 건서로스 [옮긴이]옥찬호 저
34,200원
(10%↓+5%)
 
이메일주소수집거부