Thumbnail
보안 · 네트워크 시스템

리눅스 커널의 구조와 원리: 디버깅 - Basic [저자 직강 1부-2] 대시보드

72명이 수강하고 있어요.

33,000원

지식공유자: 김동현 (Austin Kim)
총 33개 수업 (4시간 35분)
수강기한: 
무제한
수료증: 발급
난이도: 
입문
-
초급
-
중급이상
지식공유자 답변이 제공되는 강의입니다
폴더에 추가 공유

초급자를 위해 준비한
[시스템, linux-kernel] 강의입니다.

시스템 소프트웨어에서 가장 많이 쓰이는, 최신 리눅스 커널(v6.1)의 기본적인 디버깅 기능과 방법을 "디버깅을 통해 배우는 리눅스 커널의 구조와 원리"의 저자가 제대로 설명합니다.

✍️
이런 걸
배워요!
실전 프로젝트에서 디버깅이 중요한 이유와 실제 디버깅을 하는 과정
디버깅 능력을 키우는 다양한 방법과 실전 프로젝트에 나올 수 있는 이슈의 유형
printk와 dump_stack()을 활용해 커널을 디버깅하는 방법
printk를 사용해 디바이스 드라이버를 디자인하고 디버깅 패치를 만드는 방법
Ftrace를 활용하는 방법과 설정 방법
다양한 이벤트의 Ftrace 메시지를 통한 리눅스 커널의 주요 동작 원리

이런 분들께 추천드려요!

🎓
학습 대상은
누구일까요?
시스템 반도체, 전기 자동차 분야(자율주행, 인포테인먼트)를 포함한 시스템 소프트웨어 분야에서 역량을 키우고 싶은 주니어 개발자
시스템 반도체, 전기 자동차 분야와 같은 시스템 소프트웨어 개발을 하고 싶은 취업 준비생
시스템 소프트웨어 분야(메모리, 파일 시스템, 운영체제)의 대학원 진학을 목표로 하는 대학생
시스템 소프트웨어 분야로 커리어를 전환하려는 다른 분야의 개발자
리눅스 시스템 소프트웨어 개발자로 디버깅 능력을 키우고 싶은 개발자
리눅스 시스템 소프트웨어와 관련된 문제 해결 과정을 알고 싶은 개발자
📚
선수 지식,
필요할까요?
C언어
컴퓨터구조
운영체제

안녕하세요
김동현 (Austin Kim) 입니다.
김동현 (Austin Kim)의 썸네일

국내 시스템 소프트웨어 분야에서 전무후무한! 'Arm 아키텍처(Armv8-A, Armv7-A)'와 '리눅스 커널' 책을 쓴 저자이며, 최신 시스템 소프트웨어 트렌드(전기자동차, 시스템 반도체- 시스템 소프트웨어)를 가장 잘 알고 있는 현업 개발자입니다. 또한 시스템 소프트웨어 분야에서 가장 지식 전파 활동을 활발하게 하는 교육자입니다. 

  • '시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리'(2023년) 저자

  • '디버깅을 통해 배우는 리눅스 커널의 구조와 원리' (2021년, 대한민국 학술원 우수도서상) 저자

  • '프로그래머스 데브 코스: 리눅스 시스템 및 커널 전문가' 메인 강사

  • 2022년 6월, 한국컴퓨터종합학술대회 (KCC2022) - 튜토리얼 발표 [ftrace를 이용해 리눅스 커널 정복하기]

  • LG전자 '리눅스 커널' 및 'Armv8 아키텍처' 사내 강사(국내 및 해외 개발자 포함) - (2020년~현재)

국내에서 어느 누구보다 리눅스 커널과 Arm 아키텍처(Armv8-A, Armv7-A)를 잘 설명할 수 있는 교육자라고 자신있게 말씀드릴 수 있습니다.

주요 로드맵 🎯

'시스템 소프트웨어 개발자를 위한 Arm - basic course'

'시스템 소프트웨어 개발자를 위한 Arm - advanced course'

로드맵_이미지_스킨.png

 

시스템 소프트웨어 개발자를 위한 Linux kernel - basic course

image

체계적으로 Arm 아키텍처(Armv8-A, Armv7-A)와 리눅스 커널을 배우시려는 분은 로드맵(전체 강의 30% 할인)을 활용하시면 좋습니다.

커리큘럼 총 33 개 ˙ 4시간 35분의 수업
이 강의는 영상, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 0. 리눅스 커널 디버깅이란
섹션 1. 리눅스 커널 디버깅 기본 기능 - printk
주요 커널 디버깅 기법 소개 미리보기 08:13 printk 소개 미리보기 06:19
printk - 로그 레벨 설정 06:46
printk - 프로젝트 프로세스와 로그 레벨 04:13
printk - 주의 사항 05:56
printk를 디바이스 드라이버에서 사용하는 방법 09:02
printk로 디버깅 패치를 만드는 방법 07:33
섹션 2. 리눅스 커널 디버깅 기본 기능 - dump_stack(), sysrq 매직키
dump_stack() 소개 08:42
dump_stack() 함수-사용 예시 05:39
dump_stack() 함수-주의 사항 05:56
sysrq 매직키 07:26
섹션 3. ftrace 설정하기
ftrace란 미리보기 13:32
ftrace 설정 - 기본 컨피그레이션 07:08
ftrace 설정 - 셸 스크립트 분석 10:32
주요 Tracer 소개 - nop, function 07:10
function 트레이서와 set_filter_function 설정 05:37
주요 이벤트와 트레이스 포인트 07:03
섹션 4. ftrace 메시지 분석하기
ftrace 메시지 포멧 분석 12:04
function 트레이서 - stack tracer 분석 08:26
ftrace message와 커널 코드 분석 06:50
섹션 5. ftrace 디버깅 실습 (with 라즈베리 파이)
실습 자료: ftrace 설정 셸 스크립트 및 ftrace 로그 파일
ftrace 설정 파일과 주요 event 소개 미리보기 13:04
nop 트레이서와 주요 event 설정 06:44
nop 트레이서 - ftrace message 분석 07:52
function 트레이서와 주요 event 설정 08:24
function 트레이서 - ftrace message 분석 10:57
강의 게시일 : 2024년 03월 07일 (마지막 업데이트일 : 2024년 04월 13일)
수강평
수강생분들이 직접 작성하신 수강평입니다.
아직 평가를 충분히 받지 못한 강의 입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!😄️️
연관 로드맵
이 강의가 포함된 잘 짜여진 로드맵을 따라 학습해 보세요!