임베디드 시스템 아키텍처 (사물인터넷을 위한 임베디드 시스템의 기초)

임베디드 시스템 아키텍처 (사물인터넷을 위한 임베디드 시스템의 기초)

$31.42
Description
임베디드 시스템의 하드웨어 아키텍처, 라이브러리, 개발 도구 및 사용 방법, 그리고 에너지 효율성에 중점을 둔 설계 기술을 설명하고 있다. 비교적 접근이 간단한 단일 시스템의 구축부터 쉽게 놓칠 수 있는 상세한 부분까지 설명하고 있기 때문에, 임베디드 시스템에 처음 입문하는 개발자는 개요를 살펴볼 수 있으며, 숙련자는 다양한 주제에 대해 고려해볼 수 있다.
저자

다니엘라카메라

여러산업계의임베디드시스템에대한소프트웨어설계및개발에서방대한경험을갖춘소프트웨어전문가이자연구원이다.현재는프리랜서소프트웨어개발자및트레이너로일하고있다.TCP/IP와전송프로토콜설계및최적화분야의세계적인전문가이며,이주제로20개이상의논문을썼다.리눅스커널을비롯한몇몇프로젝트에기여하고,IoT의무료및오픈소스소프트웨어사용을권장하는여러커뮤니티와조직에참여함으로써자유소프트웨어를지원한다.

목차

1장.임베디드시스템:실용주의적접근

__도메인정의
____임베디드리눅스시스템
____저사양8비트마이크로컨트롤러
____하드웨어아키텍처
____도전과제이해하기
____멀티스레딩
__RAM
__플래시메모리
__인터페이스와주변장치
____비동기식UART기반직렬통신
____SPI
____I2C
____USB
__연결시스템
__레퍼런스플랫폼
____ARM레퍼런스설계
____Cortex-M마이크로프로세서
__요약

2장.작업환경과워크플로최적화

__워크플로개요
____C컴파일러
____링커
____빌드자동화
____디버거
____임베디드워크플로
__GCC툴체인
____크로스컴파일러
____컴파일러컴파일
____실행파일링크
____바이너리포맷변환
__타깃과의상호작용
____GDB세션
__검증
____기능테스트
____하드웨어도구
____오프타깃테스트
____에뮬레이터
__요약

3장.아키텍처패턴

__환경설정관리
____리비전제어
____추적활동
____코드리뷰
____지속통합
__소스코드구성
____하드웨어추상화
____미들웨어
____애플리케이션코드
__임베디드프로젝트의생애주기
____프로젝트단계정의
____프로토타입제작
____리팩토링
____API와문서
__요약

4장.부트업과정

__인터럽트벡터테이블
____시작코드
____리셋핸들러
____스택할당
____장애핸들러
__메모리레이아웃
__부트코드빌드및실행
____makefile
____애플리케이션실행
__다중부트단계
____부트로더
____이미지빌드
____다중단계시스템디버깅
____공유라이브러리
__요약

5장.메모리관리

__메모리매핑
____메모리모델과주소공간
____코드구역
____RAM구역
____주변장치접근구역
____시스템구역
____메모리트랜잭션순서
__실행스택
____스택배치
____스택오버플로
____스택페인팅
__힙관리
____사용자정의구현
____newlib사용
____힙제한
____다중메모리풀
____일반적인힙사용오류
__메모리보호유닛
____MPU환경설정레지스터
____MPU프로그래밍
__요약

6장.일반목적주변기기

__인터럽트컨트롤러
____주변장치인터럽트환경설정
__시스템시간
____플래시대기상태적용
____클록환경설정
____클록배분
____SysTick활성화
__일반타이머
__범용I/O
____핀환경설정
____디지털출력
____PWM
____디지털입력
____인터럽트기반입력
____아날로그입력
__워치도그
__요약

7장.로컬버스인터페이스

__직렬통신소개
____클록과심볼동기화
____버스와이어링
____주변장치프로그래밍
__UART기반비동기직렬버스
____프로토콜상세
____컨트롤러프로그래밍
____HelloWorld!
____newlibprintf
____데이터수신
____인터럽트기반입출력
__SPI버스
____프로토콜상세
____트랜시버프로그래밍
____SPI트랜잭션
____인터럽트기반SPI전송
__I2C버스
____프로토콜상세
____클록늘리기
____다중마스터
____컨트롤러프로그래밍
____인터럽트처리
__요약

8장.저전력최적화

__시스템환경설정
____하드웨어설계
클록관리
________전압제어
____저전력운영모드
____딥슬립환경설정
____정지모드
____대기모드
____웨이크업간격
__전력측정
____개발보드
__저전력임베디드애플리케이션설계
____비지루프를슬립모드로대체
____긴비활성기간동안의딥슬립
____클록속도선택
____전력상태전환
__요약

9장.분산시스템과IoT아키텍처

__네트워크인터페이스
____매체접근제어
____이더넷
____와이파이
____저속무선개인영역네트워크(LR-WPAN)
____LR-WPAN산업링크계층확장
____6LoWPAN
____블루투스
____모바일네트워크
____저전력원거리네트워크(LPWAN)
____적절한네트워크인터페이스선택
__인터넷프로토콜
____TCP/IP구현
____네트워크장치드라이버
____TCP/IP스택구동
____소켓통신
____메시네트워크와동적라우팅
__전송계층보안
____보안소켓통신
__애플리케이션프로토콜
____메시지프로토콜
____REST구조패턴
____분산시스템(단일실패지점)
__요약

10장.병렬태스크와스케줄링

__태스크관리
____태스크블록
____컨텍스트스위칭
____태스크생성
__스케줄러구현
____슈퍼바이저호출
____협업스케줄러
____동시성과타임슬라이스
____블록되는태스크
____자원대기
____실시간스케줄링
__동기화
____세마포어
____뮤텍스
____우선순위도치
__시스템자원분리
____권한수준
____메모리세그먼테이션
____시스템호출
__요약

11장.임베디드운영체제

__실시간애플리케이션플랫폼
____FreeRTOS
____ChibiOS
__저전력IoT시스템
____ContikiOS
____RiotOS
__POSIX호환시스템
____NuttX
____Frosted
__안전한임베디드시스템의미래
____프로세스분리(Tock)
__요약

출판사 서평

★이책에서다루는내용★

■임베디드상품의설계및정의단계에참여
■ARMCortex-M마이크로컨트롤러를위한코드작성법
■임베디드개발실험환경구축및워크플로최적화
■메모리안전코드작성
■통신인터페이스이면의아키텍처이해
■IoT영역에연결및배포된설계및개발패턴이해
■멀티태스크병렬실행패턴과실시간운영체제이해

★이책의대상독자★

대부분의내용은임베디드시스템에대해배우고자하는다른분야의경험을갖춘소프트웨어개발자및설계자를대상으로한다.
초심자나경험이부족한임베디드프로그래머는특정개발영역으로지식을확장할수있다.
숙련된임베디드소프트웨어엔지니어들은이책에서제기된논의점,특히차세대임베디드시스템을위한안전성,보안연결,그리고에너지효율성에대한영감을얻을수도있다.

★이책의구성★

1장‘임베디드시스템:실용주의적접근’마이크로컨트롤러기반임베디드시스템에대해소개한다.
2장‘작업환경과워크플로최적화’사용되는도구및개발워크플로를설명한다.
3장‘아키텍처패턴’협업개발과테스트를위한계획및개발방법론을다룬다.
4장‘부트업과정’임베디드시스템의부트절차,부트단계및부트로더에대해분석한다.
5장‘메모리관리’메모리관리를위한최적의전략을제시한다.
6장‘범용주변장치’GPIO핀과기타일반내장주변장치에대한접근을설명한다.
7장‘로컬버스인터페이스’직렬버스컨트롤러(UART,SPI,I2C)의통합으로독자를안내한다.
8장‘저전력최적화’에너지효율시스템의전력소모를줄이는데이용가능한기술을살펴본다.
9장‘분산시스템과IoT아키텍처’분산및연결된시스템을구축하기위해요구되는사용가능한프로토콜과인터페이스를소개한다.
10장‘병렬태스크와스케줄링’실시간작업스케줄러의구현으로멀티태스킹운영체제의인프라를설명한다.
11장‘임베디드운영체제’구현된안전성과보안메커니즘에초점을두고,임베디드세계에서이용가능한오픈소스운영체제를알아본다.

★옮긴이의말★

사물인터넷(IoT)으로대변되는현재의임베디드시스템분야의이슈는단연에너지효율성및인터넷으로의연결입니다.인터넷연결을이루기위한기존범용시스템에서사용되는중첩스택은임베디드분야로넘어오면서에너지효율성을일부떨어뜨립니다.따라서목적에맞게운영체제및라이브러리를선택하는것이더욱중요합니다.
이책은임베디드시스템소개에서부터작업환경,아키텍처패턴,부트업절차,메모리관리,일반목적주변기기관리,로컬버스인터페이스,저전력최적화,분산시스템,병렬작업및스케줄링,임베디드운영체제를순서대로살펴봅니다.이를통해사물인터넷을위한임베디드시스템을구축하기위한기초및상세사항들을살펴봅니다.또한제한된자원을가진임베디드시스템을목적에맞고안정성있으며,안전하게구축하는방법을서술합니다.이를통해초심자부터숙련자까지임베디드시스템을접하기위한기본부터놓치기쉬운상세사항까지를다루기때문에,사물인터넷에관심이있는개발자를해당분야에발을딛도록하는데도움이되는책이라생각합니다.