리눅스 커널 자료구조 알고리즘 상세분석. 2 : 북윈도
리뷰 0 위시 120

리눅스 커널 자료구조 알고리즘 상세분석. 2 요약정보 및 구매

상품 선택옵션 0 개, 추가옵션 0 개

출판사 커널연구회
저자 정재준
ISBN 9788997750115 (8997750119)
정가 28,000원
판매가 25,200원(10% 할인)
배송비 무료배송
포인트 정책 설명문 닫기

00포인트

포인트 정책 설명문 출력

선택된 옵션

관심상품

상품 정보

사은품
상품 상세설명


이책은 리눅스 커널 소스에 구현되어 있는 자료구조 알고리즘을 이해하기 쉽도록 설명하는 내용으로 전체 6장으로 구성되어 있다. 1장에서는 자료구조 알고리즘에 대한 기본 원리를 이해하기 쉽게 설명한다. 2장과 3장에서는 리눅스 커널에 구현되어 있는 Linked List를 설명하고 스택과 큐를 독자들이 직접 구현할 수 있도록 내용을 구성했다. 4장은 Red-Black Tree를 자세히 설명하고 키값을 삽입, 삭제하면서 트리의 좌우 균형을 어떻게 맞추어 가는지 직접 실습할 수 있도록 소스를 설명한다. 5장은 대용량 데이터 처리에 적합한 B+Tree에 대해서 소스와 함께 구현방법을 자세히 설명한다. 6장에서는 리눅스 커널 소스에 구현되어 있는 자료구조를 직접 확인하며 익힐 수 있도록 구성했다. 마지막으로 부록에서는 리눅스 커널 소스를 효율적으로 분석할 수 있는 방법들에 대해서 기술했다.

목차
리눅스 커널 자료구조 상세분석 2 1
저작권t2
커널연구회 로드맵t3
저자 소개t4
목차t5

1. 자료구조 알고리즘 개요t8
2. LINKED LISTt13
2.1 주소(포인터)연산 이해t13
2.2 링크드 리스트 전체소스t19
2.3 LIST_ADD (STACK)t32
2.4 LIST_ADD_TAIL (QUEUE)t39

3. QUEUE(KFIFO)t45
3.1 KFIFO 소스 분석t45
3.2 KFIFO 실습t55

4. RED-BLACK TREEt60
4.1 RED-BLACK TREE 개념t60
4.2 RED-BLACK TREE 소스t64
4.2.1 include/linux/rbtree.ht64
4.2.2 lib/rbtree.ct68
4.2.3 rbtree_test.ct79
4.2.4 실행 결과t84
4.3 RED-BLACK TREE 구조체t87
4.4 삽입(INSERT) 소스1 분석t90
4.4.1 노드(key=10) 삽입t92
4.4.2 노드(key=20) 삽입t95
4.4.3 노드(key=30) 삽입t98
4.4.4 노드(key=40) 삽입t104
4.4.5 노드(key=50) 삽입t107
4.4.6 노드(key=60) 삽입t110
4.4.7 노드(key=70) 삽입t112
4.4.8 노드(key=80) 삽입t115
4.5 삽입(INSERT) 소스2 분석t121
4.5.1 노드(key=80) 삽입t122
4.5.2 노드(key=70) 삽입t125
4.5.3 노드(key=60) 삽입t128
4.5.4 노드(key=50) 삽입t133
4.5.5 노드(key=40) 삽입t137
4.5.6 노드(key=30) 삽입t140
4.5.7 노드(key=20) 삽입t142
4.5.8 노드(key=10) 삽입t145
4.6 삽입(INSERT) 소스3 분석t151
4.6.1 노드(key=10) 삽입t151
4.6.2 노드(key=30) 삽입t154
4.6.3 노드(key=20) 삽입t157
4.6.4 노드(key=50) 삽입t164
4.6.5 노드(key=40) 삽입t165
4.6.6 노드(key=25, 22) 삽입t168
4.6.7 노드(key=35) 삽입t170
4.7 탐색(SEARCH) 소스 분석t175
4.8 삭제(ERASE) 소스 분석t182
4.8.1 노드(key=10) 삭제t189
4.8.2 노드(key=20) 삭제t193
4.8.3 노드(key=30) 삭제t196
4.8.4 노드(key=40) 삭제t203
4.8.5 노드(key=50) 삭제t206
4.8.6 노드(key=60) 삭제t212
4.8.7 노드(key=70) 삭제t216
4.8.8 노드(key=80) 삭제t219

5. B+TREEt222
5.1 B+TREE 소스t223
5.2 B+TREE 구조체t249
5.3 B+TREE 삽입 알고리즘t252
5.3.1 노드 분할t255
5.3.2 부모노드 생성t257
5.3.3 부모노드 분할t261

6. 리눅스 커널 자료구조t265
6.1 자료구조 기본t265
6.2 스케쥴러 자료구조t269
6.3 스케쥴러 소스 분석t276
6.3.1 스케쥴러 클래스 정의t278
6.3.2 CFS 스케쥴러 실행 함수t285
6.3.3 RT 스케쥴러 실행 함수t288
6.3.4 DeadLine 스케쥴러 실행 함수t289

부록A. 리눅스 커널 소스 분석 도구t292
A.1 커널소스 다운로드t294
A.2 커널소스 빌드t297
A.2.1 라즈베리파이 보드에서 직접 빌드t297
A.2.2 리눅스 Host PC에서 크로스 컴파일t298
A.3 커널 설치t299
A.4 커널소스 디버깅(KGDB)t302

부록B. 커널연구회 똑똑한왕자 소개t310

부록C. 커널연구회 교육과정 상세안내t322
C.1 커널연구회 교육과정 로드맵t322
C.2 C언어와 자료구조 알고리즘t323
C.3 리눅스 시스템 프로그래밍t327
C.4 ARM 아키텍쳐, STM32 프로그래밍t331
C.5 리눅스 커널 자료구조 알고리즘 실습t334
C.6 리눅스 커널 소스 디버깅 실습t338
C.7 리눅스 커널 DEVICE TREE 실습t342
C.8 교육 내용 테이블t346
출판사 서평
리눅스 커널은 전세계 뛰어난 개발자들에 의해서 지속적으로 향상되고 있고
그 속에 있는 소스코드들도 놀랄만큼 최적화되고 있다.
특히 리눅스 커널에 구현되어 있는 Linked List, Red-Black Tree등을 분석해 보면 아주 간결하면서도
효율적으로 만들어진 소스 코드라는 것을 느낄 수 있다.
이책은 리눅스 커널 소스에 구현되어 있는 자료구조 알고리즘을
모두가 이해하기 쉽도록 분석한 내용으로 구성되어 있다.소프트웨어 코딩은 자료구조 알고리즘부터 출발한다.
자료구조 알고리즘은 코딩의 기본이며,
이것을 가장 잘 이해하기 위한 출발점이 되는 것이 링크드 리스트이다.
링크드 리스트를 사용하여 자료를 효율적으로 연결(포인터)하는 방법을 익힐 수 있다.
더구나 리눅스 커널 소스의 링크드 리스트는 아주 효율적으로 만들어져 있다.
앞쪽과 뒤쪽을 연결하는 2개의 포인터만으로 연결하는 위치에 따라서 Stack도 되고 Queue도 된다.
즉, 별다른 부가적인 데이터를 사용하지 않고 Linked List 연결관계만으로 Stack과 Queue을 모두 구현한다.
여러가지 자료구조 알고리즘 서적들에서 링크드 리스트를 설명하고 있지만,
리눅스 커널 소스에 있는 링크드 리스트가 가장 뛰어나다고 말할 수 있다.
이책은 필자가 커널연구회를 운영하며 수년동안 리눅스 커널 소스를 분석한 내용을 실무적으로 상세히 설명한다.
상품 정보 고시
도서명 리눅스 커널 자료구조 알고리즘 상세분석. 2
저자 정재준
출판사 커널연구회
ISBN 9788997750115 (8997750119)
쪽수 347
출간일 2017-12-10
사이즈 182 * 259 * 18 mm /669g
목차 또는 책소개 리눅스 커널 자료구조 상세분석 2 1
저작권t2
커널연구회 로드맵t3
저자 소개t4
목차t5

1. 자료구조 알고리즘 개요t8
2. LINKED LISTt13
2.1 주소(포인터)연산 이해t13
2.2 링크드 리스트 전체소스t19
2.3 LIST_ADD (STACK)t32
2.4 LIST_ADD_TAIL (QUEUE)t39

3. QUEUE(KFIFO)t45
3.1 KFIFO 소스 분석t45
3.2 KFIFO 실습t55

4. RED-BLACK TREEt60
4.1 RED-BLACK TREE 개념t60
4.2 RED-BLACK TREE 소스t64
4.2.1 include/linux/rbtree.ht64
4.2.2 lib/rbtree.ct68
4.2.3 rbtree_test.ct79
4.2.4 실행 결과t84
4.3 RED-BLACK TREE 구조체t87
4.4 삽입(INSERT) 소스1 분석t90
4.4.1 노드(key=10) 삽입t92
4.4.2 노드(key=20) 삽입t95
4.4.3 노드(key=30) 삽입t98
4.4.4 노드(key=40) 삽입t104
4.4.5 노드(key=50) 삽입t107
4.4.6 노드(key=60) 삽입t110
4.4.7 노드(key=70) 삽입t112
4.4.8 노드(key=80) 삽입t115
4.5 삽입(INSERT) 소스2 분석t121
4.5.1 노드(key=80) 삽입t122
4.5.2 노드(key=70) 삽입t125
4.5.3 노드(key=60) 삽입t128
4.5.4 노드(key=50) 삽입t133
4.5.5 노드(key=40) 삽입t137
4.5.6 노드(key=30) 삽입t140
4.5.7 노드(key=20) 삽입t142
4.5.8 노드(key=10) 삽입t145
4.6 삽입(INSERT) 소스3 분석t151
4.6.1 노드(key=10) 삽입t151
4.6.2 노드(key=30) 삽입t154
4.6.3 노드(key=20) 삽입t157
4.6.4 노드(key=50) 삽입t164
4.6.5 노드(key=40) 삽입t165
4.6.6 노드(key=25, 22) 삽입t168
4.6.7 노드(key=35) 삽입t170
4.7 탐색(SEARCH) 소스 분석t175
4.8 삭제(ERASE) 소스 분석t182
4.8.1 노드(key=10) 삭제t189
4.8.2 노드(key=20) 삭제t193
4.8.3 노드(key=30) 삭제t196
4.8.4 노드(key=40) 삭제t203
4.8.5 노드(key=50) 삭제t206
4.8.6 노드(key=60) 삭제t212
4.8.7 노드(key=70) 삭제t216
4.8.8 노드(key=80) 삭제t219

5. B+TREEt222
5.1 B+TREE 소스t223
5.2 B+TREE 구조체t249
5.3 B+TREE 삽입 알고리즘t252
5.3.1 노드 분할t255
5.3.2 부모노드 생성t257
5.3.3 부모노드 분할t261

6. 리눅스 커널 자료구조t265
6.1 자료구조 기본t265
6.2 스케쥴러 자료구조t269
6.3 스케쥴러 소스 분석t276
6.3.1 스케쥴러 클래스 정의t278
6.3.2 CFS 스케쥴러 실행 함수t285
6.3.3 RT 스케쥴러 실행 함수t288
6.3.4 DeadLine 스케쥴러 실행 함수t289

부록A. 리눅스 커널 소스 분석 도구t292
A.1 커널소스 다운로드t294
A.2 커널소스 빌드t297
A.2.1 라즈베리파이 보드에서 직접 빌드t297
A.2.2 리눅스 Host PC에서 크로스 컴파일t298
A.3 커널 설치t299
A.4 커널소스 디버깅(KGDB)t302

부록B. 커널연구회 똑똑한왕자 소개t310

부록C. 커널연구회 교육과정 상세안내t322
C.1 커널연구회 교육과정 로드맵t322
C.2 C언어와 자료구조 알고리즘t323
C.3 리눅스 시스템 프로그래밍t327
C.4 ARM 아키텍쳐, STM32 프로그래밍t331
C.5 리눅스 커널 자료구조 알고리즘 실습t334
C.6 리눅스 커널 소스 디버깅 실습t338
C.7 리눅스 커널 DEVICE TREE 실습t342
C.8 교육 내용 테이블t346
상품 정보 고시
도서명 상품페이지 참고
저자 상품페이지 참고
출판사 상품페이지 참고
크기 상품페이지 참고
쪽수 상품페이지 참고
제품구성 상품페이지 참고
출간일 상품페이지 참고
목차 또는 책소개 상품페이지 참고
배송공지

사용후기

회원리뷰 총 0개

사용후기가 없습니다.

상품문의

등록된 상품문의

상품문의 총 0개

상품문의가 없습니다.

교환/반품

[반품/교환방법]
마이페이지> 주문배송조회 > 반품/교환신청 또는 고객센터 (070-4680-5689)로 문의 바랍니다.

[반품주소]
- 도로명 : (10882) 경기도 파주시 산남로 62-20 (산남동)
- 지번 : (10882) 경기도 파주시 산남동 305-21

[반품/교환가능 기간]
변심반품의 경우 수령 후 14일 이내, 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내

[반품/교환비용]
단순 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담

[반품/교환 불가 사유]
- 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
(단지 확인을 위한 포장 훼손은 제외)
- 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
예) 화장품, 식품, 가전제품(악세서리 포함) 등
- 복제가 가능한 상품 등의 포장을 훼손한 경우
예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
- 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
- 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
- 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
- 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
* (1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시
‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①양서-판매정가의 12%, ②일서-판매정가의 7%를 적용)

[상품 품절]
공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.

[소비자 피해보상, 환불지연에 따른 배상]
- 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됩니다.
- 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함.

회원로그인

오늘 본 상품

  • 리눅스 커널 자료구조 알고리즘 상세분석. 2
    리눅스 커널 자료구
    25,200