연락처 정보

코스 개요

1. Coreboot 소개

  • Coreboot란 무엇인가?
  • BIOS, UEFI와 Coreboot의 비교
  • Coreboot의 아키텍처 및 설계 원칙
  • 오픈소스 펌웨어의 장점과 한계점
  • 지원되는 플랫폼 및 하드웨어 호환성

2. Coreboot 시작하기

  • 개발 환경 설정 방법
  • 필요한 도구와 의존성을 설치하는 법
  • Coreboot 소스 코드 저장소 탐색법
  • 빌드 과정을 이해하기
  • 문서 및 커뮤니티 자료 활용 방법

3. Coreboot 소스 트리 살펴보기

  • 디렉터리 구조와 프로젝트 구성 방식
  • 주요 설정 파일들에 대해 알아보기
  • 특정 보드용 구현 예시 살펴보기
  • 메인보드, 칩셋, CPU 및 SoC 지원 사항 확인하기
  • Kconfig와 menuconfig를 활용한 설정 방법

4. Coreboot 구성 및 빌드하기

  • 목표 플랫폼 선택 방법
  • 펌웨어 옵션을 설정하는 법
  • 페이로드를 지정하고 설정하는 방법
  • Coreboot 이미지 빌드 과정
  • 빌드 결과물의 정확성을 확인하는 절차
  • 펌웨어 설정을 위한 모범 사례

5. QEMU를 활용한 Coreboot 테스트하기

  • 펌웨어 에뮬레이션의 개념 이해하기
  • QEMU 내에서 Coreboot 실행 방법
  • 부팅 과정을 검증하는 절차
  • 시작 단계에 발생할 수 있는 문제를 디버깅하는 법
  • 설정 변경 사항을 안전하게 테스트하는 방안

6. 펌웨어 구성 요소 및 부팅 과정

  • Coreboot의 초기화 단계들에 대해 알아보기
  • ROM 단계와 그 역할
  • RAM 단계에 대한 설명
  • 리소스 할당 메커니즘 이해하기
  • 페이로드 로딩 과정에 대해 알아보기
  • 전반적인 부팅 흐름의 개요
  • CBFS(Coreboot 파일 시스템)의 특징과 용도 이해하기

7. 페이로드와 부트로더

  • 페이로드란 무엇인가?
  • SeaBIOS에 대한 개요
  • U-Boot의 특징과 활용 방안
  • Tianocore 및 EDK II에 관한 기초 지식
  • 적절한 페이로드를 선택하는 방법
  • Coreboot를 통해 운영체제를 부팅하는 절차

8. 실전 사례: Coreboot 활용법

  • ChromeOS와 Coreboot의 연계 방식
  • 임베디드 시스템에서의 활용 예시
  • 서버 및 워크스테이션 환경에서의 활용 가능성
  • 보안 측면에서의 장점들에 대해 알아보기
  • 성능 최적화를 위한 고려 사항들을 살펴보기
  • 펌웨어 업데이트 전략에 관한 안내

9. 문제 해결 및 디버깅 방법

  • Coreboot 로그 내용을 올바르게 읽는 법
  • 시리얼 콘솔을 활용한 디버깅 기법
  • 자주 발생하는 빌드 오류 유형 및 대처 방안
  • 하드웨어 호환성 문제에 대한 해결책 탐색하기
  • 펌웨어 업데이트 실패 시 복구 방법 안내
  • 유용한 디버깅 도구와 기법 정리하기

10. 실습 및 요약 시간

  • Coreboot 이미지를 직접 빌드하는 연습하기
  • QEMU 환경에서 해당 펌웨어를 테스트해 보기
  • 간단한 설정 변경을 실제로 적용해보기
  • 부팅 로그 내용을 분석하는 연습하기
  • 핵심 개념들에 대한 종합 복습 시간
  • 질의응답 세션 진행하기
  • 향후 학습 방향과 추가적인 학습 자료 안내하기

요건

  • 컴퓨터 펌웨어에 관한 기초 지식

대상자

  • 개발자들
  • 컴퓨터 프로그래머들
 7 시간

참가자 수


참가자별 가격

예정된 코스

관련 카테고리