임베디드 OS 개발 프로젝트
ARM 기반 펌웨어/RTOS의 원리와 구조
Regular price
$26.97
Sale price
Regular price
✈️
Estimated delivery date 예상 배송일
Standard Shipping
불러오는 중...
주문일로부터 8-12 영업일
Express Shipping
불러오는 중...
주문일로부터 6-8 영업일
나만의 임베디드 운영체제를 만들어 보자.
이 책은 펌웨어 개발 과정을 실시간 운영체제(RTOS)를 만들어 가며 설명한다. 임베디드 운영체제를 개발 환경 구성에서 시작해 최종적으로 RTOS를 만드는 과정(부트로더 제작, 하드웨어 제어, 태스크 간 동기화 등)을 하나하나 추가하며 설명하고 있다. 이렇게 만들어 가는 과정에서 ARM 아키텍처와 운영체제의 핵심 이론을 설명하고 있어 이미 운영체제 이론을 공부한 사람에게는 공부한 내용이 어떻게 다른 방식으로 구현되는지 혹은 어떤 요소가 공통되는지를 알 수 있는 좋은 기회가 될 것이다. 또한 운영체제 이론을 공부하지 않은 사람은 운영체제 이론을 실전으로 공부해 볼 수 있다.
이 책은 펌웨어 개발 과정을 실시간 운영체제(RTOS)를 만들어 가며 설명한다. 임베디드 운영체제를 개발 환경 구성에서 시작해 최종적으로 RTOS를 만드는 과정(부트로더 제작, 하드웨어 제어, 태스크 간 동기화 등)을 하나하나 추가하며 설명하고 있다. 이렇게 만들어 가는 과정에서 ARM 아키텍처와 운영체제의 핵심 이론을 설명하고 있어 이미 운영체제 이론을 공부한 사람에게는 공부한 내용이 어떻게 다른 방식으로 구현되는지 혹은 어떤 요소가 공통되는지를 알 수 있는 좋은 기회가 될 것이다. 또한 운영체제 이론을 공부하지 않은 사람은 운영체제 이론을 실전으로 공부해 볼 수 있다.
Couldn't load pickup availability
출판사 리뷰
출판사 리뷰
〈이 책의 내용〉
● 개발 환경 구성
● 부트로더
● 메모리 설계
● 익셉션 핸들링
● UART
● 인터럽트
● 타이머
● 태스크
● 컨텍스트 스위칭
● 이벤트
● 메시징
● 동기화
● ARM 아키텍처 기초 지식
● 개발 환경 구성
● 부트로더
● 메모리 설계
● 익셉션 핸들링
● UART
● 인터럽트
● 타이머
● 태스크
● 컨텍스트 스위칭
● 이벤트
● 메시징
● 동기화
● ARM 아키텍처 기초 지식
목차
목차
1장 임베디드 운영체제
1.1 운영체제
1.2 임베디드 운영체제와 펌웨어
1.3 RTOS
1.4 나빌로스
1.5 에뮬레이터 개발 환경
1.6 깃허브 리포지토리에서 아카이브 다운받기
1.7 요약
2장 개발 환경 구성하기
2.1 컴파일러 설치하기
2.2 QEMU 설치하기
2.3 요약
3장 일단 시작하기
3.1 리셋 벡터
3.2 실행 파일 만들기
3.3 QEMU에서 실행해 보기
3.4 빌드 자동화하기
3.5 하드웨어 정보 읽어오기
3.6 요약
4장 부팅하기
4.1 메모리 설계
4.2 익셉션 벡터 테이블 만들기
4.3 익셉션 핸들러 만들기
4.4 메인으로 진입하기
4.5 요약
5장 UART
5.1 UART 출력하기
5.2 안녕 세상!
5.3 UART로 입력 받기
5.4 printf 만들기
5.5 요약
6장 인터럽트
6.1 인터럽트 컨트롤러
6.2 UART 입력과 인터럽트 연결
6.3 IRQ 익셉션 벡터 연결
6.4 요약
7장 타이머
7.1 타이머 하드웨어 초기화
7.2 타이머 카운터 오버플로
7.3 delay() 함수
7.4 요약
8장 태스크
8.1 태스크 컨트롤 블록
8.2 태스크 컨트롤 블록 초기화
8.3 태스크 생성
8.4 요약
9장 스케줄러
9.1 간단한 스케줄러
9.2 우선순위 스케줄러
9.3 요약
10장 컨텍스트 스위칭
10.1 컨텍스트 백업하기
10.2 컨텍스트 복구하기
10.3 yield 만들기
10.4 커널 시작하기
10.5 요약
11장 이벤트
11.1 이벤트 플래그
11.2 인터럽트와 이벤트
11.3 사용자 정의 이벤트
11.4 여러 이벤트 플래그를 동시에 보내고 처리하기
11.5 요약
12장 메시징
12.1 메시지 큐
12.2 태스크 간 데이터 전달
12.3 요약
13장 동기화
13.1 세마포어
13.2 뮤텍스
13.3 스핀락
13.4 요약
14장 맺음말
14.1 프로젝트 종료
14.2 펌웨어
14.3 RTOS
14.4 마치며
부록 A 추가 자료
A.1 ARM 아키텍처 기초 지식
A.2 ABI
A.3 실행 파일 형식
A.4 ARM 인포센터에서 RealViewPB의 데이터시트 찾기
1.1 운영체제
1.2 임베디드 운영체제와 펌웨어
1.3 RTOS
1.4 나빌로스
1.5 에뮬레이터 개발 환경
1.6 깃허브 리포지토리에서 아카이브 다운받기
1.7 요약
2장 개발 환경 구성하기
2.1 컴파일러 설치하기
2.2 QEMU 설치하기
2.3 요약
3장 일단 시작하기
3.1 리셋 벡터
3.2 실행 파일 만들기
3.3 QEMU에서 실행해 보기
3.4 빌드 자동화하기
3.5 하드웨어 정보 읽어오기
3.6 요약
4장 부팅하기
4.1 메모리 설계
4.2 익셉션 벡터 테이블 만들기
4.3 익셉션 핸들러 만들기
4.4 메인으로 진입하기
4.5 요약
5장 UART
5.1 UART 출력하기
5.2 안녕 세상!
5.3 UART로 입력 받기
5.4 printf 만들기
5.5 요약
6장 인터럽트
6.1 인터럽트 컨트롤러
6.2 UART 입력과 인터럽트 연결
6.3 IRQ 익셉션 벡터 연결
6.4 요약
7장 타이머
7.1 타이머 하드웨어 초기화
7.2 타이머 카운터 오버플로
7.3 delay() 함수
7.4 요약
8장 태스크
8.1 태스크 컨트롤 블록
8.2 태스크 컨트롤 블록 초기화
8.3 태스크 생성
8.4 요약
9장 스케줄러
9.1 간단한 스케줄러
9.2 우선순위 스케줄러
9.3 요약
10장 컨텍스트 스위칭
10.1 컨텍스트 백업하기
10.2 컨텍스트 복구하기
10.3 yield 만들기
10.4 커널 시작하기
10.5 요약
11장 이벤트
11.1 이벤트 플래그
11.2 인터럽트와 이벤트
11.3 사용자 정의 이벤트
11.4 여러 이벤트 플래그를 동시에 보내고 처리하기
11.5 요약
12장 메시징
12.1 메시지 큐
12.2 태스크 간 데이터 전달
12.3 요약
13장 동기화
13.1 세마포어
13.2 뮤텍스
13.3 스핀락
13.4 요약
14장 맺음말
14.1 프로젝트 종료
14.2 펌웨어
14.3 RTOS
14.4 마치며
부록 A 추가 자료
A.1 ARM 아키텍처 기초 지식
A.2 ABI
A.3 실행 파일 형식
A.4 ARM 인포센터에서 RealViewPB의 데이터시트 찾기
저자
저자
이만우
숭실대학교 컴퓨터학부를 졸업한 후 삼성전자에서 임베디드 소프트웨어를 개발하였다. 이후 미국 회사로 이직하여 지금은 실리콘밸리에 정착했으며, 여전히 임베디드 소프트웨어 엔지니어로 일하고 있다. 〈프로그램 세계〉에 리눅스 관련 강좌를 다수 연재했고, 〈마이크로소프트웨어〉에도 강좌를 연재했다. 저서로는 《도전! 임베디드 OS 만들기》(인사이트, 2009), 《컴퓨터 아나토미》(한울아카데미, 2012)가 있다.
Payment & Security
Payment methods
Your payment information is processed securely. We do not store credit card details nor have access to your credit card information.

