리눅스 커널 자료구조 알고리즘 교육

리눅스 커널 자료구조 알고리즘 설계에 대해 이해할 수 있습니다. 커널 객체지향 구조체에 대해 이해할 수 있습니다. 커널 링크드 리스트(Doubly Circular Linked List)에 대해 알수 있습니다. Red-Black Tree 자료구조에 대해 알 수 있습니다. 과정개요:

리눅스 커널은 하드웨어 자원을 빠르고 효율적으로 처리하기 위해 가장 최적화된 자료구조와 알고리즘을 적용하고 있습니다. 이로인해 커널의 자료구조 알고리즘에 대한 깊이있는 지식이 없다면 커널을 제대로 이해할 수 없습니다. 본 과정은 리눅스 커널의 분석과 이해가 필요한 개발자를 위해 커널에 적용된 자료구조와 알고리즘을 분석하고 이해하기 위한 과정입니다.

 

과정목표:


리눅스 커널 자료구조 알고리즘 설계에 대해 이해할 수 있습니다.
커널 객체지향 구조체에 대해 이해할 수 있습니다.
커널 링크드 리스트(Doubly Circular Linked List)에 대해 알수 있습니다.
커널 큐(Queues) 자료구조에 대해 알 수 있습니다.
Red-Black Tree 자료구조에 대해 알 수 있습니다.


 

과정장점:

본 과정은 단순 이론 설명이 아니라 커널 소스를 직접 분석하고 이를 응용하는 실습을 통해 커널에 적용된 자료구조와 알고리즘을 제대로 알수 있도록 실습 위주로 강의합니다.

(커널 소스의 기반이 되는 링크드 리스트와 큐, Red-Black Tree에 대한 중점 강의).

 

주요내용:


리눅스 커널 객체지향 코딩 이해
커널에서 다루는 구조체, 함수 포인터
offsetof, container_of 매크로 이해
Linked-List 이해 및 실습
큐(Queue) 이해 및 실습
Red-Black Tree 이해 및 실습


 

사전지식:

C언어 중고급 문법을 알고 있고 특히 구조체와 포인터에 대해서 잘 이해하고 있어야 함.

 

교육내용:

1. 커널 객체지향 코딩


커널 구조체 / 구조체 멤버변수 접근방식 이해
구조체 내의 함수 접근방식 이해


2. 객체지향 코드 실습


구조체 offsetof 매크로 이해 / 구조체 container_of
매크로 이해 / 커널 구조체 실습


3. Include/linux/list.h


LIST_HEAD 매크로 이해 / list_init


4. 링크드 리스트 실습


list_add / list_del / list_replace / list_move / list_last
list_cut / list_splice


5. 링크드 리스트 탐색


list_entry / list_first_entry / list_for_each /
list_prepare_entry / hlist


6. Include/linux/rbtree.h


Red-Black Tree 구조체 이해 / rb_parent / rb_color
rb_is_red / rb_is_black


7. lib/rbtree.c


*rb_next / *rb_prev / *rb_first / *rb_last


8. lib/rbtree.c 탐색


rb_entry / rb_first / rb_insert / rb_search
rb_output / rb_erase


9. 커널 내의 자료구조 알고리즘 적용사례


task_struct / work_queue / run_queue 이해


 

교육시간:

교육시간: 오후1시 ~ 오후6시(5시간)

교육일정: 매월 첫째주 일요일(일정조정가능)

교육장:


수도권 지역(서울 강남 선릉역 SW랩실)
동남권 지역(대구시 성서 기계부품연구원 교육장) 
서남권 지역(대전시)


 

개발환경(IDE): CodeBlocks



 

교육보드: 라즈베리파이



 

리눅스 커널 자료구조 알고리즘 교육

과정개요:리눅스 커널은 하드웨어 자원을 빠르고 효율적으로 처리하기 위해 가장 최적화된 자료구조와 알고리즘을 ...

회원 등급
할인 행사
적립금
배송비
추가 금액
수량
품절된 상품입니다.