책 소개
1957년 노벨 문학상 수상자인 카뮈의 대표작은 《페스트》와 《이방인》??이다. 제2차 세계대전 당시 레지스탕스로 활동하기도 한 카뮈는 《이방인》?에서 사회 부조리에 대한 개인적 저항 정신을 표출하였고, 《페스트》?에서는 이를 더욱 발전시켜 비인간성으로 표상되는 ‘악’에 대한 집단적 저항과 연대의식을 역설했다.
코로나19 바이러스가 전 세계를 강타한 현재, 전 세계 모든 나라는 코로나로 인해 자유가 제약되어 사실상 감옥처럼 변해버렸다. 그 폐쇄된 공간 속에서 인간은 과연 어떻게 행동하여야 하는가. 그것이 바로 우리가 출간 후 70년이 지난 이 시점에서 《페스트》?를 다시 꺼내 읽는 이유이다.
카뮈가 처음 생각한 이 소설 제목은 《페스트》?가 아니라 《수인(囚人)들》이었다고 한다. ‘감옥에 갇혀 있는 사람들’이라는 뜻이다. 이 작품은 ‘재앙’이라는 집단적 비극과 마주한 인간이 죽음으로 이어지는 질병에 대항하는 새로운 휴머니즘을 보여주었다.
목 차
CHAPTER 1 임베디드 소프트웨어 엔지니어의 업무 1
01 임베디드 시스템이란? 3
임베디드 시스템의 중요성 3
임베디드 시스템과 PC, 서버는 어떻게 다른가? 4
02 임베디드 시스템의 특징 5
Nature: 자연 법칙의 취급 6
Time: 실시간성의 요구 7
Constraint: 엄격한 제약 사항 8
Reliability: 높은 신뢰성 9
제품별 NTCR 요구사항의 특징 9
03 임베디드 소프트웨어란? 10
소프트웨어의 종류 10
04 임베디드 소프트웨어 엔지니어의 업무 13
임베디드 소프트웨어 엔지니어가 속하는 조직 13
임베디드 소프트웨어의 규모에 따라 조직은 변한다 13
하청이 아닌 프로 서비스 14
05 임베디드 소프트웨어 엔지니어의 직종 16
CHAPTER 2 마이크로컴퓨터 하드웨어 19
06 임베디드 시스템의 구성 21
07 임베디드 마이크로컴퓨터의 구성 23
하드웨어의 종류 23
CPU와 마이크로컴퓨터 24
메모리 25
메모리의 종류 27
버스의 구성 29
메인 버스의 용도 29
로컬 버스 31
주변장치 34
주변장치의 제어 방식 36
08 CPU란? 38
CPU의 명령 실행 40
인터럽트 43
CHAPTER 3 임베디드 소프트웨어 47
09 임베디드 시스템의 소프트웨어 49
임베디드 소프트웨어의 종류 49
10 임베디드 소프트웨어를 개발하는 흐름 51
실제 빌드의 흐름 확인하기 53
11 어셈블리 언어로부터 알 수 있는 것 59
스타트업 루틴 61
main 함수가 호출될 때까지의 흐름 추적 61
메모리 맵 63
스택 64
스택과 인터럽트 65
12 임베디드 소프트웨어의 테스트 환경 68
ICE 68
13 임베디드 시스템 프로그래밍에서의 C언어 71
최적화 옵션의 장점과 단점 71
volatile 선언 71
unsigned와 signed 72
pragma 73
포인터와 배열 73
인터럽트 핸들러 74
CHAPTER 4 임베디드 시스템을 사용한 C언어 프로그래밍 77
14 아두이노의 하드웨어 확인하기 79
아두이노란? 79
아두이노 우노의 하드웨어 구성 80
마이크로컴퓨터의 데이터 시트 조사하기 82
데이터 시트와 보드 맞춰 보기 84
ATmega328P의 내부 구성과 커넥터와의 관계 88
15 LED를 ON/OFF하는 실험 93
LED 실험의 개요 93
LED 접속 94
점멸 프로그램 작성하기 96
동작 확인 101
16 LED 실험 프로그램 이해하기 103
CPU의 관점에서 바라본 레지스터 제어 103
어셈블러에서 확인 103
17 LED 점멸 시간 지정하기 109
타이머의 이용 111
CHAPTER 5 실시간 운영체제 113
18 임베디드 시스템의 운영체제 115
운영체제란? 115
임베디드 운영체제가 필요한 이유 116
임베디드 운영체제를 사용할 때의 단점 121
19 임베디드 운영체제 사용해 보기 123
임베디드 운영체제의 동작 123
20 FreeRTOS 동작 배우기 128
FreeRTOS의 구성 128
FreeRTOS의 기본 동작 129
소스 코드의 실제 동작 131
21 임베디드 운영체제의 역사 136
임베디드 운영체제의 역사 136
임베디드 운영체제의 종류와 시대 배경 138
22 임베디드 운영체제의 선택 방법 142
임베디드 운영체제의 선정 포인트 142
CHAPTER 6 스마트 디바이스 145
23 데이터 주도 사회 147
데이터의 활용 147
24 스마트 디바이스 149
스마트 디바이스란? 149
스마트 디바이스의 사용 예 150
스마트 디바이스의 구성 152
CHAPTER 7 임베디드 리눅스 161
25 임베디드 리눅스 163
리눅스 운영체제를 사용하는 이유 163
리눅스 운영체제가 동작하는 하드웨어 구성 164
리눅스 운영체제가 동작하는 소프트웨어 구성 168
26 임베디드 리눅스 소프트웨어의 개요 170
프로세스 170
스레드 171
IPC 171
커널 172
시스템 콜 인터페이스 175
27 임베디드 리눅스의 빌드와 기동 179
이용할 하드웨어 179
라즈베리 파이 3B+의 리눅스 배포판 181
라즈베리 파이 3B+에서 Yocto를 기동하기까지의 흐름 183
Yocto에서의 빌드 실행 183
28 임베디드 리눅스의 동작 확인 187
Yocto 재빌드에 의한 자체 개발환경의 도입 187
sysfs의 이용 196
오픈 소스 소프트웨어의 이용 198
임베디드 리눅스 개발에서 주의해야 할 포인트 203
CHAPTER 8 임베디드 소프트웨어의 개발 프로세스 207
29 임베디드 시스템의 라이프사이클 209
30 임베디드 시스템의 개발 방법 211
동시 개발 211
프런트 로딩 212
임베디드 소프트웨어 개발 프로세스의 V자 모델 213
임베디드 소프트웨어 개발 프로세스 214
31 시스템 요구 정의 216
32 시스템 아키텍처 설계 218
33 소프트웨어 요구 정의 223
34 소프트웨어 아키텍처 설계 225
35 소프트웨어 상세 설계 228
36 구현, 단위 테스트 229
37 소프트웨어 결합, 통합 테스트 232
38 소프트웨어 타당성 확인 테스트 235
39 시스템 결합, 통합 테스트와 시스템 타당성 확인 테스트 236
40 제품 출하 237
CHAPTER 9 사물인터넷/인공지능 시대의 임베디드 소프트웨어 개발 239
41 산업혁명과 임베디드 시스템 241
제1차 산업혁명 241
제2차 산업혁명 242
제3차 산업혁명 243
제4차 산업혁명 245
42 DX 시대의 임베디드 시스템 개발 247
기능 배치의 변화 247
43 임베디드 엔지니어의 학습방법 253
수파리 이론 253
표준적인 개발 방법 배우기 254
자신이 직접 정보를 제공하면 다른 정보도 수집된다 255
APPENDIX A Arduino IDE/Yocto의 설치 257
44 Arduino IDE를 윈도우 10에서 설치하기 259
Arduino IDE의 입수 259
Arduino IDE의 설치 262
AVR 명령의 동작 확인 266
45 Yocto 빌드 환경의 준비 267
dash의 전환 267
빌드에 필요한 패키지 설치 267
프록시의 설정이 필요할 때 268
46 라즈베리 파이 3의 Yocto 환경 구축 271
Yocto의 버전 271
Yocto의 환경 구축 271
Yocto 환경의 셋업 272
찾아보기 276
- 단순 변심인 경우 : 상품 수령 후 7일 이내 신청
- 상품 불량/오배송인 경우 : 상품 수령 후 3개월 이내, 혹은 그 사실을 알게 된 이후 30일 이내 반품 신청 가능
반품사유 | 반품 배송비 부담자 |
---|---|
단순변심 | 고객 부담이며, 최초 배송비를 포함해 왕복 배송비가 발생합니다. 또한, 도서/산간지역이거나 설치 상품을 반품하는 경우에는 배송비가 추가될 수 있습니다. |
고객 부담이 아닙니다. |
진행 상태 | 결제완료 | 상품준비중 | 배송지시/배송중/배송완료 |
---|---|---|---|
어떤 상태 | 주문 내역 확인 전 | 상품 발송 준비 중 | 상품이 택배사로 이미 발송 됨 |
환불 | 즉시환불 | 구매취소 의사전달 → 발송중지 → 환불 | 반품회수 → 반품상품 확인 → 환불 |
- 결제완료 또는 배송상품은 1:1 문의에 취소신청해 주셔야 합니다.
- 특정 상품의 경우 취소 수수료가 부과될 수 있습니다.
결제수단 | 환불시점 | 환불방법 |
---|---|---|
신용카드 | 취소완료 후, 3~5일 내 카드사 승인취소(영업일 기준) | 신용카드 승인취소 |
계좌이체 |
실시간 계좌이체 또는 무통장입금 취소완료 후, 입력하신 환불계좌로 1~2일 내 환불금액 입금(영업일 기준) |
계좌입금 |
휴대폰 결제 |
당일 구매내역 취소시 취소 완료 후, 6시간 이내 승인취소 전월 구매내역 취소시 취소 완료 후, 1~2일 내 환불계좌로 입금(영업일 기준) |
당일취소 : 휴대폰 결제 승인취소 익월취소 : 계좌입금 |
포인트 | 취소 완료 후, 당일 포인트 적립 | 환불 포인트 적립 |
- 단순변심으로 인한 반품 시, 배송 완료 후 7일이 지나면 취소/반품 신청이 접수되지 않습니다.
- 주문/제작 상품의 경우, 상품의 제작이 이미 진행된 경우에는 취소가 불가합니다.
- 구성품을 분실하였거나 취급 부주의로 인한 파손/고장/오염된 경우에는 취소/반품이 제한됩니다.
- 제조사의 사정 (신모델 출시 등) 및 부품 가격변동 등에 의해 가격이 변동될 수 있으며, 이로 인한 반품 및 가격보상은 불가합니다.
- 뷰티 상품 이용 시 트러블(알러지, 붉은 반점, 가려움, 따가움)이 발생하는 경우 진료 확인서 및 소견서 등을 증빙하면 환불이 가능하지만 이 경우, 제반 비용은 고객님께서 부담하셔야 합니다.
- 각 상품별로 아래와 같은 사유로 취소/반품이 제한 될 수 있습니다.
상품군 | 취소/반품 불가사유 |
---|---|
의류/잡화/수입명품 | 상품의 택(TAG) 제거/라벨 및 상품 훼손으로 상품의 가치가 현저히 감소된 경우 |
계절상품/식품/화장품 | 고객님의 사용, 시간경과, 일부 소비에 의하여 상품의 가치가 현저히 감소한 경우 |
가전/설치상품 | 전자제품 특성 상, 정품 스티커가 제거되었거나 설치 또는 사용 이후에 단순변심인 경우, 액정화면이 부착된 상품의 전원을 켠 경우 (상품불량으로 인한 교환/반품은 AS센터의 불량 판정을 받아야 합니다.) |
자동차용품 | 상품을 개봉하여 장착한 이후 단순변심의 경우 |
CD/DVD/GAME/BOOK등 | 복제가 가능한 상품의 포장 등을 훼손한 경우 |
상품의 시리얼 넘버 유출로 내장된 소프트웨어의 가치가 감소한 경우 | |
노트북, 테스크탑 PC 등 | 홀로그램 등을 분리, 분실, 훼손하여 상품의 가치가 현저히 감소하여 재판매가 불가할 경우 |