HOME > Detail View

Detail View

(ARM으로 배우는) 임베디드 리눅스 시스템 : CPU부터 안드로이드까지 총망라! 개정판 (Loan 21 times)

Material type
단행본
Personal Author
안효복
Title Statement
(ARM으로 배우는) 임베디드 리눅스 시스템 : CPU부터 안드로이드까지 총망라! / 안효복 지음
판사항
개정판
Publication, Distribution, etc
서울 :   한빛미디어,   2013  
Physical Medium
1092 p. : 삽화, 도표 ; 26 cm
Series Statement
IT expert : IT전문가의 현장실무서
ISBN
9788968480683
General Note
참고문헌: p. 1082  
부록: 1. 개발 환경 설치 및 사용법, 2. ARM 어셈블리 프로그래밍  
"ARM으로 배우는 임베디드 시스템"의 개정판임  
색인수록  
000 00929namcc2200289 c 4500
001 000045779100
005 20131218214317
007 ta
008 131218s2013 ulkad b 001c kor
020 ▼a 9788968480683 ▼g 13000
040 ▼a 211009 ▼c 211009 ▼d 211009
082 0 4 ▼a 005.446 ▼2 23
085 ▼a 005.446 ▼2 DDCK
090 ▼a 005.446 ▼b 2013z4
100 1 ▼a 안효복
245 2 0 ▼a (ARM으로 배우는) 임베디드 리눅스 시스템 : ▼b CPU부터 안드로이드까지 총망라! / ▼d 안효복 지음
250 ▼a 개정판
260 ▼a 서울 : ▼b 한빛미디어, ▼c 2013
300 ▼a 1092 p. : ▼b 삽화, 도표 ; ▼c 26 cm
440 0 0 ▼a IT expert : IT전문가의 현장실무서
500 ▼a 참고문헌: p. 1082
500 ▼a 부록: 1. 개발 환경 설치 및 사용법, 2. ARM 어셈블리 프로그래밍
500 ▼a "ARM으로 배우는 임베디드 시스템"의 개정판임
500 ▼a 색인수록
740 2 ▼a ARM으로 배우는 임베디드 시스템
945 ▼a KLPA

Holdings Information

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.446 2013z4 Accession No. 121227701 Availability Available Due Date Make a Reservation Service B M

Contents information

Book Introduction

임베디드 개념과 CPU 선택에서부터 커널 포팅, 디바이스 드라이버 개발, Qt 애플리케이션 개발, 안드로이드 탑재 등 임베디드 개발 전 과정을 다루는 책. 하드웨어 시스템 입문자, 리눅스 커널 포팅 및 디바이드 드라이버 개발자, 체계적으로 임베디드 지식을 정립하고자 하는 기존 개발자를 대상으로 하고 있다.

이 책은 임베디드 시스템의 개념에서부터 시작하여 ARM 프로세서의 동작 원리와 캐시, MMU, MPU의 구조와 사용 방법, ARM 프로세서를 사용한 SoC 및 하드웨어 설계 방법, 임베디드 소프트웨어 설계 방법 및 최적화 기법, ARM 프로세서 기반의 임베디드 리눅스 구조와 커널 포팅 방법, 디바이스 드라이버 개발 방법, 루트 파일시스템 구축 방법, 안드로이드 플랫폼의 탑재와 활용 방법을 풍부한 실무 경험을 바탕으로 핵심을 짚어가면서 체계적으로 설명한다.

이 책이 제시하는 핵심 내용
이 책은 임베디드 시스템을 시작하고 싶지만 어디서부터 무엇을 어떻게 해야 할지 막막한 분들을 위한 책이다. 임베디드 개념과 CPU 선택에서부터 커널 포팅, 디바이스 드라이버 개발, Qt 애플리케이션 개발, 안드로이드 탑재 등 임베디드 개발 전 과정을 다룬다.

이 책의 특징과 장점
실전 프로젝트를 수행할 수 있게 체계적 접근한다!
이 책은 임베디드 시스템의 개념에서부터 시작하여 ARM 프로세서의 동작 원리와 캐시, MMU, MPU의 구조와 사용 방법, ARM 프로세서를 사용한 SoC 및 하드웨어 설계 방법, 임베디드 소프트웨어 설계 방법 및 최적화 기법, ARM 프로세서 기반의 임베디드 리눅스 구조와 커널 포팅 방법, 디바이스 드라이버 개발 방법, 루트 파일시스템 구축 방법, 안드로이드 플랫폼의 탑재와 활용 방법을 풍부한 실무 경험을 바탕으로 핵심을 짚어가면서 체계적으로 설명한다. 또한 임베디드 리눅스를 활용하여 프로젝트를 수행할 수 있는 방법을 제시하는 데 노력을 기울였다.

대상 독자
- 하드웨어 시스템 입문자
- 리눅스 커널 포팅 및 디바이드 드라이버 개발
- 체계적으로 임베디드 지식을 정립하고자 하는 기존 개발자

도서 특징(책 표지 글)
♣ 이론과 실습을 바탕으로 테블릿 만들기에 도전하자!
대부분의 스마트폰은 프로세서를 사용한다. 그 위에 리눅스와 안드로이드가 올라가 있을 뿐이다. 이 책은 현업에서 가장 대중적으로 사용되는 프로세서와 OS를 집중해부하고 테블릿을 만드는 방법을 다룬다. 이 책은 저자의 오랜 개발과 강의 노하우가 녹아 있어 임베디드 시스템에 대한 이론을 바탕으로 실습 능력을 키울 수 있을 것이다.

♣ 오랜 개발과 강의 노하우가 가득한 실전 문제를 접한다!
오래 개발하고 오래 강의한 저자는 개발자들이 무엇을 궁금해하는지 안다. 그러한 내용을 본문에 담고 장 끝에서 연습문제로 확인할 수 있게 했다. 또한 실습문제를 곳곳에 두어 진짜로 실전 능력이 쌓였는지 스스로 점검해볼 수 있게 했다(정답지는 PDF로 따로 제공한다).

[이 책의 주요 내용]
o 임베디드 하드웨어/소프트웨어 구성 요소와 설계 절차 및 방법
o ARM의 내부 구조와 동작 원리, 명령어 구조와 사용법, 캐시, MMU, MPU, 쓰기 버퍼
o ARM 기반 SoC 설계 및 하드웨어 설계 방법
o 임베디드 소프트웨어를 설계하는 데 필요한 툴 구성 및 최적화된 소프트웨어 설계 기법
o ARM 기반 부트로더 개발과 하드웨어 제어 방법
o 임베디드 리눅스 커널, 디바이스 드라이버, 애플리케이션, 루트 파일 시스템 개발 방법
o Qt 및 안드로이드 탑재


Information Provided By: : Aladin

Author Introduction

안효복(지은이)

삼성전자에 근무하면서 ARM 프로세서를 기반으로 하는 SoC 응용 개발을 담당했으며 다양한 RTOS 및 디바이스 드라이버를 포팅했다. MMU가 없는 ARM 프로세서에서 동작하는 임베디드 리눅스를 개발하여 국내외에 다양한 임베디드 시스템 솔루션을 제공했다. 현재 임베디드 시스템 솔루션 및 디지털 사이니지/DID 전문 회사인 ㈜다인시스의 대표로 다양한 멀티미디어 솔루션을 개발하고 있고, 삼성전자를 비롯한 국내외 여러 회사에서 ARM 프로세서 및 임베디드 리눅스 분야의 강사로 활동 중이다.

Information Provided By: : Aladin

Table of Contents

목차
지은이 소개 = 4
지은이의 말 = 5
이 책의 개발 환경 = 6
1부 임베디드 시스템
 1장 임베디드 시스템의 개요
  1.1. 임베디드 시스템의 이해 = 32
  1.2. 프로세서 = 37
  1.3. 메모리 장치 = 46
  1.4. 입출력 장치 = 54
  1.5. 시스템 버스 = 61
  1.6. 연습문제 = 63
 2장 임베디드 시스템의 설계
  2.1. 임베디드 시스템 설계 절차 = 66
  2.2. 임베디드 하드웨어 설계 = 67
  2.3. 임베디드 소프트웨어 설계 = 71
  2.4. 임베디드 소프트웨어 개발 환경 = 75
  2.5. 연습문제 = 77
2부 ARM 프로세서의 이해
 3장 ARM 아키텍처와 동작 원리
  3.1. ARM 아키텍처 = 82
  3.2. ARM 명령어와 파이프라인 = 87
  3.3. ARM 구조와 명령어 실행 = 91
  3.4. 연습문제 = 94
 4장 프로그래머 모델
  4.1. 명령어 = 96
  4.2. 트러스트존 모델과 보호 영역 = 98
  4.3. 동작 모드 = 98
  4.4. 레지스터 = 99
  4.5. 메모리 구조 = 106
  4.6. 예외 처리 = 108
  4.7. 연습문제 = 112
 5장 ARM 프로세서 명령어
  5.1. ARM 프로세서 명령어의 특징 = 116
  5.2. 아키텍처 v4 ARM 명령어 = 119
  5.3. 아키텍처 v5 ARM 명령어 = 162
  5.4. 아키텍처 v6 ARM 명령어 = 170
  5.5. 아키텍처 v7 ARM 명령어 = 194
  5.6. 16비트 Thumb 명령어 = 197
  5.7. Thumb-2와 Thumb-2EE 명령어 = 199
  5.8. NEON 및 VFP 프로그래밍 = 204
  5.9. ARM의 의사 명령어 = 242
  5.10. 연습문제 = 245
 6장 예외 처리와 시스템 리셋
  6.1. ARM 프로세서의 예외 처리 = 248
  6.2. 예외 처리 = 252
  6.3. 시스템 리셋 = 260
  6.4. 연습문제 = 262
3부 ARM 프로세서와 임베디드 하드웨어 설계
 7장 ARM 프로세서 코어
  7.1. ARM 프로세서의 종류 = 266
  7.2. ARM9 프로세서 = 268
  7.3. ARM11 프로세서 = 279
  7.4. Xscale 마이크로 아키텍처 = 286
  7.5. Cortex 애플리케이션 프로세서 = 288
  7.6. Cortex 임베디드 프로세서 = 300
  7.7. 연습문제 = 307
 8장 ARM 프로세서
  8.1. ARM 프로세서의 구조 = 310
  8.2. ARM 프로세서의 제어 = 311
  8.3. 캐시와 쓰기 버퍼 = 328
  8.4. MMU = 336
  8.5. MPU = 352
  8.6. TCM = 360
  8.7. 멀티프로세서 = 362
  8.8. 연습문제 = 368
 9장 SoC 구조
  9.1. SoC와 AMBA 버스 = 372
  9.2. 상용 SoC 제품 = 379
  9.3. 연습문제 = 387
 10장 임베디드 시스템 하드웨어 설계
  10.1. 하드웨어 구성 요소 = 390
  10.2. 하드웨어 설계 = 404
  10.3. 연습문제 = 408
4부 임베디드 소프트웨어 설계
 11장 소프트웨어 개발 툴의 이해와 활용
  11.1. 소프트웨어 개발 툴의 구성 및 사용법 = 412
  11.2. 메모리 구조 설계 = 423
  11.3. 다운로드와 디버깅 = 432
  11.4. 연습문제 = 441
 12장 임베디드 C 프로그래밍과 소프트웨어 최적화
  12.1. 컴파일러 사용과 옵션 설정 = 444
  12.2. 임베디드 C의 구성 요소와 프로그램 최적화 = 447
  12.3. 나눗셈과 나머지 연산 = 462
  12.4. 메모리 참조와 포인터 = 464
  12.5. ARM/Thumb 인터워킹 = 466
  12.6. NEON 명령의 사용 = 470
  12.7. 연습문제 = 473
 13장 시스템 리셋과 부트코드
  13.1. 리셋 핸들러 = 476
  13.2. 부트코드 작성 = 480
  13.3. 연습문제 = 498
 14장 하드웨어 제어
  14.1. GPIO 제어와 LED 점멸 = 500
  14.2. UART 장치 제어 = 505
  14.3. 타이머 제어 = 512
5부 임베디드 ARM 리눅스
 15장 개발 환경과 부트로더
  15.1. 부트로더의 이해 = 522
  15.2. U-Boot 빌드와 설치 = 526
  15.3. U-Boot 활용 = 545
  15.4. U-Boot 포팅 = 554
  15.5. 연습문제 = 562
 16장 리눅스 커널
  16.1. 임베디드 시스템과 리눅스 = 564
  16.2. 리눅스 커널과 프로세스 = 566
  16.3. 리눅스의 메모리 사용 = 582
  16.4. 예외 처리와 인터럽트 = 584
  16.5. 시스템 콜 인터페이스 = 588
  16.6. 가상 파일시스템 = 590
  16.7. 사용자 프로그램 실행 = 594
  16.8. 프로세스 간 통신과 동기화 = 596
  16.9. 리눅스 커널 디렉터리 및 소스 = 602
  16.10. 리눅스 커널 초기화 절차 = 605
  16.11. 연습문제 = 632
 17장 디바이스 드라이버
  17.1. 디바이스 드라이버의 이해 = 634
  17.2. 디바이스 드라이버 모델 = 645
  17.3. 커널 모듈 = 653
  17.4. 메모리 매핑 = 657
  17.5. 문자 디바이스 = 664
  17.6. 블록 디바이스 = 680
  17.7. 네트워크 인터페이스 = 692
  17.8. 연습문제 = 706
 18장 리눅스 파일시스템과 애플리케이션
  18.1. 리눅스 파일시스템 = 710
  18.2. 루트 파일시스템 = 718
  18.3. 리눅스 애플리케이션 = 720
  18.4. 연습문제 = 723
6부 커널 포팅 및 디바이스 제어
 19장 커널 포팅 준비
  19.1. 타깃 머신 선정 및 등록 = 728
  19.2. 커널 소스 준비 = 733
  19.3. 커널 소스 설치, 빌드 및 탑재 = 735
  19.4. 연습문제 = 754
 20장 커널 포팅
  20.1. 타깃 머신 추가 = 756
  20.2. 커널 포팅과 디버깅 = 784
  20.3. 커널 포팅 = 790
  20.4. 멀티코어 지원 = 804
  20.5. 연습문제 = 814
 21장 루트 파일시스템
  21.1. 루트 파일시스템의 제작 방법 = 818
  21.2. 루트 파일시스템의 제작 = 834
  21.3. 연습문제 = 845
 22장 디바이스 제어
  22.1. 개발 환경 = 848
  22.2. 디바이스 드라이버 작성 = 854
  22.3. 버스 드라이버 작성 = 873
  22.4. 네트워크 인터페이스 지원 = 890
  22.5. 리눅스 멀티미디어 = 896
  22.6. 연습문제 = 934
 23장 임베디드 리눅스의 활용
  23.1. 프레임버퍼의 활용 = 936
  23.2. Qt/Everywhere 설치와 활용 = 941
7부 안드로이드 탑재와 활용
 24장 안드로이드의 이해
  24.1. 안드로이드의 개요 = 950
  24.2. 안드로이드의 구조 = 952
  24.3. 안드로이드 커널 및 라이브러리 = 957
  24.4. 안드로이드의 개발 환경 = 960
 25장 안드로이드 빌드, 탑재 및 실행
  25.1. 안드로이드 빌드, 탑재 및 실행 = 968
  25.2. 안드로이드 애플리케이션 = 974
부록 A. 개발 환경 설치 및 사용법 = 993
 A.1 개발 환경 구성에 앞서 = 994
 A.2 타깃 시스템 설정 = 996
 A.3 윈도우 기반의 호스트 시스템 설정 = 997
 A.4 리눅스 기반의 호스트 시스템 설정 = 1025
 A.5 우분투 10.04 기반 개발 환경 구축 = 1041
 A.6 VirtualBox와 리눅스 사용 = 1048
부록 B. ARM 어셈블리 프로그래밍 = 1053
 B.1 ARM 어셈블리 프로그래밍 실습에 앞서 = 1054
 B.2 ARM 명령어 기초 = 1056
 B.3 데이터 처리 명령어 실습 = 1061
 B.4 데이터 전송 명령어 실습 = 1068
부록 C. 참고 자료 = 1081
INDEX = 1083

New Arrivals Books in Related Fields