사물인터넷을 위한 리눅스 프로그래밍 with 라즈베리 파이
2022년 09월 27일 출간
국내도서 : 2020년 03월 06일 출간
- eBook 상품 정보
- 파일 정보 pdf (103.17MB)
- ISBN 9791192469478
- 지원기기 교보eBook App, PC e서재, 리더기, 웹뷰어
-
교보eBook App
듣기(TTS) 가능
TTS 란?텍스트를 음성으로 읽어주는 기술입니다.
- 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를 읽을 수 있습니다.
- 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.
PDF 필기가능 (Android, iOS)
쿠폰적용가 23,940원
10% 할인 | 5%P 적립이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.
카드&결제 혜택
- 5만원 이상 구매 시 추가 2,000P
- 3만원 이상 구매 시, 등급별 2~4% 추가 최대 416P
- 리뷰 작성 시, e교환권 추가 최대 200원
작품소개
이 상품이 속한 분야
CHAPTER 1 사물인터넷과 라즈베리 파이 3
1.1 사물인터넷과 오픈 소스 하드웨어 플랫폼 4
1.2 라즈베리 파이 한 입 베어 물기 10
1.3 라즈베리 파이를 위한 주변 장치 14
1.4 라즈베리 파이를 위한 준비 운동: 사용 환경 설정 21
1.5 요약 46
CHAPTER 2 리눅스의 기초: 라즈베리 파이와 친해지기 49
2.1 리눅스의 사용 환경과 구조 51
2.2 리눅스의 기본 명령어 54
2.3 리눅스 텍스트 에디터 70
2.4 리눅스의 프로그래밍 도구 78
2.5 요약 104
CHAPTER 3 라즈베리 파이와 GPIO: 하드웨어 제어 107
3.1 GPIO의 개요 108
3.2 LED 제어 프로그래밍 111
3.3 wiringPi를 이용한 GPIO 프로그래밍 124
3.4 SenseHAT을 이용한 기상 관측 시스템 152
3.5 요약 168
PARTII 리눅스 기본 프로그래밍
CHAPTER 4 리눅스 프로그래밍의 기초 173
4.1 리눅스의 기본 구조와 파일 시스템 174
4.2 파일 처리와 표준 입출력 178
4.3 파일 정보와 권한 201
4.4 디렉터리와 시간 처리 214
4.5 리눅스 시스템 프로그래밍과 라즈베리 파이의 제어 228
4.6 요약 234
CHAPTER 5 프로세스와 스레드: 다중 처리 237
5.1 프로세스와 시그널 238
5.2 멀티 프로세스와 다중 처리 프로그래밍 260
5.3 프로세스 간 통신 283
5.4 POSIX 스레드와 동기화 310
5.5 다중 처리와 라즈베리 파이의 제어 320
5.6 요약 326
CHAPTER 6 리눅스 네트워크 프로그래밍: 사물인터넷의 연결을 위한 기초 329
6.1 네트워크의 개요와 BSD 소켓 330
6.2 UDP 네트워크 프로그래밍 346
6.3 TCP 서버와 클라이언트 프로그래밍 356
6.4 HTTP와 웹 서버 프로그래밍 375
6.5 웹 서버와 라즈베리 파이의 제어 398
6.6 요약 404
PART III 멀티미디어 프로그래밍
CHAPTER 7 리눅스 멀티미디어 프로그래밍: 현란함과 즐거움 409
7.1 멀티미디어와 라즈베리 파이 410
7.2 리눅스 사운드 프로그래밍 421
7.3 프레임 버퍼를 통한 이미지 출력 460
7.4 Video4Linux2와 Pi Camera 488
7.5 라즈베리 파이와 멀티미디어 504
7.6 요약 506
CHAPTER 8 OpenCV 프로그래밍: 사진 속 얼굴을 찾아라 509
8.1 영상 처리와 OpenCV 510
8.2 OpenCV 기본 프로그래밍 512
8.3 OpenCV와 영상 처리 526
8.4 OpenCV를 이용한 얼굴 인식 540
8.5 라즈베리 파이와 OpenCV 549
8.6 요약 550
CHAPTER 9 OpenGL ES를 이용한 3D 프로그래밍: 3차원의 세계로 553
9.1 라즈베리 파이와 OpenGL 554
9.2 EGL™과 OpenGL ES 1.0 560
9.3 OpenGL ES 1.1을 이용한 3D 애니메이션 578
9.4 OpenGL ES 2.0과 셰이딩 언어 587
9.5 3D와 라즈베리 파이 627
9.6 요약 632
PART IV 리눅스 고급 프로그래밍
CHAPTER 10 Qt를 이용한 GUI 프로그래밍: 더 편리한 접근성 637
10.1 Qt와 라즈베리 파이: Qt on Pi 638
10.2 Qt 프로그래밍과 사용자 정의 위젯 656
10.3 Qt 위젯과 레이아웃 669
10.4 Qt Creator를 이용한 GUI 디자인 694
10.5 GUI와 라즈베리 파이 711
10.6 요약 718
CHAPTER 11 라즈베리 파이와 인공지능: Caffe에서 한잔 721
11.1 인공지능의 개요 722
11.2 Caffe를 이용한 인공지능 728
11.3 Caffe 기본 프로그래밍 743
11.4 Caffe를 이용한 숫자 인식 751
11.5 Caffe와 라즈베리 파이의 인공지능 773
11.6 요약 779
CHAPTER 12 리눅스 커널과 디바이스 드라이버: 더 깊은 곳으로 781
12.1 리눅스 커널과 디바이스 드라이버 782
12.2 리눅스 디바이스 드라이버 프로그래밍 78
12.3 시스템 레지스터와 LED 출력 803
12.4 LED 출력을 위한 GPIO 드라이버 프로그래밍 811
12.5 스위치를 이용한 커널 이벤트 처리 827
12.6 요약 836
CHAPTER 13 부록 839
13.1 임베디드 리눅스 공부하기 840
13.2 리눅스 셸(Shell) 프로그래밍 846
13.3 GStreamer를 이용한 멀티미디어 프로그래밍 865
13.4 ARM NEON 기반의 SIMD 프로그래밍 888
이 책에는 숙련자를 위한 ‘깊게 보기’ 코너가 있다. 초보자는 이해가 되지 않을 수도 있으므로 읽지 않고 넘어가도 좋다. ‘참고하기’는 프로그래밍과 깊은 관계는 없지만 읽어보면 본문의 내용을 보다 쉽게 이해할 수 있는 내용을 담았고, 각 내용에 대한 참고나 더 자세한 내용을 알고자 하는 독자를 위해 ‘각주’를 추가하였다. ‘숨은 이야기’에는 책을 읽다가 머리가 아프거나 심심할 때 읽어볼 수 있도록 재미있는 내용을 담았다. _xix
리눅스 운영체제는 크게 커널, 디바이스 드라이버, 시스템 라이브러리, 셸(Shell), 유틸리티, X 윈도 시스템으로 나눌 수 있다. 먼저 커널(Kernel)은 중심부, 핵심이라는 뜻인데, 리눅스 커널은 실제 운영체제(Operating System)를 구성하는 기본적인 토대로서 시스템의 가장 기본적인 메모리나 프로세스 등의 하드웨어를 관리하고, 애플리케이션이 커널을 이용할 수 있도록 시스템 호출(System Call) 같은 API(Application Programming Interface)를 제공한다. 또한 커널은 하드웨어의 제어를 위한 디바이스 드라이버(Device Driver)를 포함한다. _53p
일반적으로 전류는 VCC(전원)에서 GND(접지)로 흐른다. LED 소자를 라즈베리 파이에 연결할 때는 GND 핀을 음극에 연결하고, GPIO를 양극에 연결한다. 저항은 전류의 흐름을 방해하는 부품으로, 전기 에너지는 열 에너지로 변환되어 사라진다. 이렇게 전류를 감소시킬 수 있다. 라즈베리 파이의 GPIO 18번 핀에 저항 220Ω을 연결하고, 이 저항의 다른 쪽 단자에 LED의 양극을 연결한다. 저항은 LED와 다르게 극성이 없다. 그리고 LED의 음극을 라즈베리 파이의 GND 핀에 연결한다. _115p
이제 이번 장에서 배운 리눅스 시스템 프로그래밍의 기초를 이용해서 라즈베리 파이와 SenseHAT을 제어하는 애플리케이션을 작성해보자. 3장에서 본 것과 같이 SenseHAT은 기상 관측 시스템을 만들 수 있는 기압 센서, 온습도 센서 등을 탑재하고 있다. 이번 장부터 기상 관측 시스템을 만들어 나가는데, 3장에서 사용한 라즈베리 파이의 제어를 위한 wiringPi 라이브러리를 그대로 사용하고 이번 장에서 배운 내용을 추가해보도록 하겠다. SenseHAT을 사용하는 방법은 3장에서와 같다. SenseHAT에서 기상 관측과 관련된 기압 센서(LPS25H)와 온습도 센서(HTS221)만 사용해서 값을 표시한다. 조이스틱과 8×8 LED 매트릭스의 사용에 대한 코드는 뒤에서 추가해보도록 하겠다. _229p
이제 공유 메모리에 대한 예제를 만들어보도록 하자. 아래의 애플리케이션은 2개의 프로세스를 만들어서 부모 프로세스와 자식 프로세스가 같은 메모리 공간을 함께 이용하는 예제이다. 먼저 2개의 프로세스를 생성한 후 shmget( ) 함수를 이용해서 공유 메모리 대한 채널을 가져와서 shmat( ) 함수를 이용해 공유 메모리를 현재의 프로세스의 공간에 붙인다. _303p
라즈베리 파이로 배우는 사물인터넷과 리눅스 프로그래밍!
제4차 산업혁명을 위한 최신의 내용으로 깁고 더하였습니다!
이번 개정판은 오랫동안 많은 분께 사랑받은 초판에서 최신의 라즈베리 파이 4 보드와 SenseHAT, 리눅스 커널 5(라즈비안)를 적용하고, 제4차 산업혁명의 주류 기술이 된 사물인터넷과 AR/VR/MR/XR을 위한 OpenGL ES 프로그래밍, 그리고 사물 인식을 위한 영상 인식과 인공지능(딥러닝)을 위해 관련 내용을 더욱 보강하였습니다. 라즈베리 파이로 손쉽게 사물인터넷을 학습할 수 있는 이 책이 미래를 준비하는 여러분에게 듬직한 가이드가 되기를 바랍니다.
이 책은 라즈베리 파이 같은 오픈 소스 하드웨어와 소프트웨어를 융합한 IoT 제품을 개발할 수 있도록 GPIO를 이용한 기본적인 하드웨어 개발에서부터 리눅스 프로그래밍, 멀티미디어 프로그래밍, 3D 프로그래밍, 인공지능(딥러닝), 리눅스 커널/디바이스 프로그래밍까지 다양한 내용을 담고 있습니다. 또한 여러 단계에 걸쳐 리눅스 프로그래밍에 대해 학습하고, 이를 사물인터넷 실무에 곧바로 적용할 수 있도록 집필하였으며, 내용마다 그림과 사진, 표, 코드 등의 자료를 첨부해 독자가 한층 더 수월하게 이해할 수 있도록 했고, ‘따라 하기’나 ‘참고하기’, ‘깊게 보기’ 등의 코너를 통해서는 심화 학습이 이루어지도록 구성하였습니다.
작가정보
이십여 년 가까이 프로그래밍을 해오고 있으며, IT 전문 강사와 컨설턴트, 관광 TC로도 일하고 있다. 저서로는 《사물인터넷을 위한 BBC micro:bit 프로그래밍》, 《사물인터넷: 우리가 꿈꾸는 스마트한 세상》, 《Tizen 애플리케이션 프로그래밍》, 《Qt 프로그래밍》, 《타이젠으로 웨어러블 앱 개발하기》(eBook) 등이 있다. 개발한 프로그램으로는 리눅스용 다이얼패드, SKY 6400/6500 모바일 캠코더, 원자력 발전소 CPS 시스템, 신도리코 NEST UI, 삼성전자 VOIP 전화기 등이 있으며, 주로 멀티미디어, UI(Qt), 임베디드 리눅스, 모바일, 스마트 디바이스 분야에서 개발 경력을 쌓았다. 삼성전자, LG전자, 현대자동차 등의 기업과 대구·인하·원광·전북·조선대학교 및 DIP, AKIPA, 3DFIA, KETI, KEA, RAPA, KOSTA 등의 협회에서 강의와 세미나를 진행하였다.
이 상품의 총서
Klover리뷰 (0)
- - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
- - 리워드는 1,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다. (5,000원 이상 상품으로 변경 예정, 2024년 9월 30일부터 적용)
- - 리워드는 한 상품에 최초 1회만 제공됩니다.
- - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
구매 후 리뷰 작성 시, e교환권 100원 적립
문장수집
- 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
- e교환권은 적립일로부터 180일 동안 사용 가능합니다.
- 리워드는 1,000원 이상 eBook에 한해 다운로드 완료 후 문장수집 등록 시 제공됩니다. (5,000원 이상 eBook으로 변경 예정, 2024년 9월 30일부터 적용)
- 리워드는 한 상품에 최초 1회만 제공됩니다.
- sam 이용권 구매 상품 / 선물받은 eBook / 오디오북·동영상 상품/주문취소/환불 시 리워드 대상에서 제외됩니다.
구매 후 문장수집 작성 시, e교환권 100원 적립
신규가입 혜택 지급이 완료 되었습니다.
바로 사용 가능한 교보e캐시 1,000원 (유효기간 7일)
지금 바로 교보eBook의 다양한 콘텐츠를 이용해 보세요!
- 구매 후 90일 이내 작성 시, e교환권 100원 (최초1회)
- 리워드 제외 상품 : 마이 > 라이브러리 > Klover리뷰 > 리워드 안내 참고
- 콘텐츠 다운로드 또는 바로보기 완료 후 리뷰 작성 시 익일 제공
가장 와 닿는 하나의 키워드를 선택해주세요.
총 5MB 이하로 jpg,jpeg,png 파일만 업로드 가능합니다.
신고 사유를 선택해주세요.
신고 내용은 이용약관 및 정책에 의해 처리됩니다.
허위 신고일 경우, 신고자의 서비스 활동이 제한될 수
있으니 유의하시어 신중하게 신고해주세요.
이 글을 작성한 작성자의 모든 글은 블라인드 처리 됩니다.
구매 후 90일 이내 작성 시, e교환권 100원 적립
eBook 문장수집은 웹에서 직접 타이핑 가능하나, 모바일 앱에서 도서를 열람하여 문장을 드래그하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다.
차감하실 sam이용권을 선택하세요.
차감하실 sam이용권을 선택하세요.
선물하실 sam이용권을 선택하세요.
-
보유 권수 / 선물할 권수0권 / 1권
-
받는사람 이름받는사람 휴대전화
- 구매한 이용권의 대한 잔여권수를 선물할 수 있습니다.
- 열람권은 1인당 1권씩 선물 가능합니다.
- 선물한 열람권이 ‘미등록’ 상태일 경우에만 ‘열람권 선물내역’화면에서 선물취소 가능합니다.
- 선물한 열람권의 등록유효기간은 14일 입니다.
(상대방이 기한내에 등록하지 않을 경우 소멸됩니다.) - 무제한 이용권일 경우 열람권 선물이 불가합니다.
첫 구매 시 교보e캐시 지급해 드립니다.
- 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
- 한 ID당 최초 1회 지급 / sam 이용권 제외
- 구글바이액션을 통해 교보eBook 구매 이력이 없는 회원 대상
- 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)