실전! 러스트로 배우는 리눅스 커널 프로그래밍
2024년 02월 28일 출간
국내도서 : 2024년 02월 27일 출간
- eBook 상품 정보
- 파일 정보 PDF (8.86MB)
- ISBN 9791158395056
- 지원기기 교보eBook App, PC e서재, 리더기, 웹뷰어
-
교보eBook App
듣기(TTS) 불가능
TTS 란?텍스트를 음성으로 읽어주는 기술입니다.
- 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를 읽을 수 있습니다.
- 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.
PDF 필기가능 (Android, iOS)

쿠폰적용가 25,200원
10% 할인 | 5%P 적립이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.
카드&결제 혜택
- 5만원 이상 구매 시 추가 2,000P
- 3만원 이상 구매 시, 등급별 2~4% 추가 최대 416P
- 리뷰 작성 시, e교환권 추가 최대 200원
작품소개
이 상품이 속한 분야
이 책은 이론과 실습을 결합한 접근 방식으로, 러스트를 활용한 실제 프로젝트에 바로 적용할 수 있는 다양한 예제들로 가득 차 있습니다. 이를 통해 독자들은 러스트를 통한 시스템 프로그래밍의 전문성을 한층 더 높일 수 있을 것입니다.
★ 이 책에서 다루는 내용 ★
◎ 러스트 기초 문법을 배웁니다.
◎ 러스트로 대규모 시스템을 개발하고 통합하는 노하우를 익힙니다
◎ 러스트로 리눅스 시스템 프로그래밍 방법을 습득합니다
◎ 리눅스 커널 시스템을 배우고 커널 모듈을 개발해 봅니다.
1.1 왜 러스트를 배워야 하는가?
___개요
___러스트의 역사
1.2 러스트 특징
___안전한 메모리 관리
___철저한 오류 처리
___쉽고 편한 비동기 프로그래밍
___편리한 패키지 관리 도구
1.3 러스트로 무엇을 할 수 있나?
___러스트 포 리눅스 프로젝트
___구글의 차세대 운영체제 퓨시아
___블록체인
___빠르고 안정적인 백엔드 시스템 개발
___그 외 다양한 응용 사례
1.4 개발 환경 설정하기
___리눅스 환경에 러스트 설치
___윈도우 환경에 러스트 설치
___러스트 플레이그라운드
1.5 Hello World
___비주얼 스튜디오 코드로 러스트 코드 실행하기
1.6 요약
▣ 02장: 러스트 기초
2.1 자료형
___자료형 확인하기
___튜플
___배열
___문자열
2.2 불변성과 가변성
___섀도잉
2.3 제어문
___if
___match
2.4 반복문
___loop
___for
___while
2.5 함수
2.6 클로저
2.7 n번째 수를 출력하는 피보나치 함수 만들기
2.8 구조체
___구조체 정의
___구조체 메서드
___연관 함수
2.9 열거형
___Option 열거형
2.10 구조체로 연결 리스트 만들기
2.11 요약
▣ 03장: 소유권과 메모리 할당
3.1 소유권
___빌림
___데이터 복제
3.2 동적 메모리 할당
___Box
___Rc
___RefCell
___약한 참조
___Box와 Rc
3.3 라이프타임 지시자
___정적 변수
3.4 이중 연결 리스트 만들기
3.5 요약
▣ 04장: 러스트 심화
4.1 프로젝트 구조와 모듈화
___모듈화
___간단한 모듈 만들어보기
___mod로 계층 구성하기
___모듈 단위로 파일 분리
___use 사용하기
___가시성 제어
4.2 오류 처리
___복구 가능한 오류
___복구 불가능한 오류
___복구 가능한 오류 vs. 복구 불가능한 오류
4.3 컬렉션
___Vec
___LinkedList
___HashMap
___해시셋
___BinaryHeap
___String
___컬렉션의 소유권
4.4 간단한 파일 기반 데이터베이스 만들기
4.5 요약
▣ 05장: 동시성, 입출력, 네트워킹, IPC
5.1 동시성
___std::thread 사용하기
___async/await
___이벤트 루프
___동시성 제어 기법
___다중 스레드에서 발생하는 다양한 문제들
5.2 입출력
___동기식 입출력
___비동기식 입출력
___데이터 버퍼링
___데이터 직렬화
___SQLite 사용하기
5.3 네트워킹과 IPC
___간단한 HTTP 클라이언트 만들기
___REST API 사용하기
___간단한 웹서버 만들기
___TCP 서버와 클라이언트 만들기
___기타 다양한 IPC 기법들
5.4 채팅 서비스 만들기
5.5 요약
▣ 06장: 러스트 라이브러리 활용
6.1 러스트 표준 라이브러리
___러스트 표준 트레잇
___AsRef
___시스템 콜
6.2 파일, 디렉터리 다루기
___std::fs
___std::path
___tree 명령어 만들기
6.3 시간 처리
___시간 및 날짜 관련 라이브러리
___시간 연산
6.4 간단한 셸 터미널 만들기
6.5 요약
▣ 07장: 객체지향과 디자인 패턴
7.1 객체지향 러스트
___캡슐화
___다형성
___상속
7.2 디자인 패턴
___팩토리 메서드 패턴
___싱글턴 패턴
___빌더 패턴
___어댑터 패턴
___컴포지트 패턴
___데코레이터 패턴
___플라이웨이트 패턴
___옵저버 패턴
___전략 패턴
___상태 패턴
7.3 요약
▣ 08장: 매크로
8.1 매크로란?
___매크로를 사용하는 목적
8.2 print!와 vec!
___print! 매크로
___vec! 매크로
8.3 매크로 문법
___macro_rules!
___매크로에서 다른 매크로 호출
8.4 매크로 디버깅
8.5 요약
▣ 09장: 리눅스 시스템 프로그래밍
9.1 리눅스 시스템 프로그래밍이란
9.2 FFI
___Bindgen을 사용해 C 코드 호출하기
___autocxx를 사용해 C++코드 사용하기
___Unsafe
9.3 레거시 라이브러리 연동
___libc 사용하기
___OS 자료형
___레거시 코드를 러스트로 마이그레이션하기 위한 단계별 전략
9.4 리눅스 시스템 프로그램 만들기
___공유 메모리 다루기
___mmap으로 프로세스 간 파일 공유
___ioctl로 디바이스 제어하기
___시그널 핸들러 다루기
___DBus 서버/클라이언트 개발
9.5 요약
▣ 10장: 커널 개발을 위해 알아야 할 것
10.1 리눅스 커널의 역사
___리눅스 운영체제와 리눅스 커널
___리눅스 커널의 역사
___리누스 토발즈와 타넨바움 교수의 논쟁
___모놀리식 커널과 마이크로 커널
___리눅스 커널의 성공 요인
___리눅스 커널 관리 및 개발
___리눅스 커널 코드 반영 방법
___리눅스 운영체제와 유닉스
10.2 커널 개발을 위한 환경 설정
___러스트 툴체인 다운로드 및 설치 방법
___러스트 커널 다운로드
___러스트 커널 빌드 방법
___QEMU 환경 구축
10.3 러스트 커널 모듈 빌드 및 실행
10.4 요약
▣ 11장: 리눅스 커널 아키텍처
11.1 리눅스 커널 아키텍처
11.2 프로세스 관리
___프로세스의 개념과 특징
___스레드
___프로세스 상태와 생명주기
___프로세스 관리를 위한 자료 구조
___프로세스 스케줄링
___프로세스 동기화와 통신
11.3 메모리 관리
11.4 파일 시스템
11.5 유저 모드 vs. 커널 모드
11.6 요약
▣ 12장: C를 사용해 커널 모듈 만들기
12.1 빌드 환경 구성
12.2 간단한 커널 모듈 만들기
12.3 유저 모드 프로그램과 상호작용하기
12.4 요약
▣ 13장: 러스트 이용한 커널 개발
13.1 러스트 포 리눅스
13.2 러스트를 이용한 커널 개발
13.3 커널 개발을 돕는 다양한 크레이트
___커널 크레이트
___할당 크레이트
___코어 크레이트
13.4 러스트를 사용해 간단한 커널 모듈 만들기
___간단한 커널 모듈 만들기
___리눅스 커널에서 FFI 사용하기
___커널 모듈에 파라미터 넘기기
___유저 프로그램과 상호작용하기
___커널의 동기화 요소 사용하기
___유저 모드에서 사용 가능한 커널 세마포어 구현하기
13.5 요약
▣ 14장: 커널 모듈 개발 심화
14.1 커널 핵심 모듈 개발
___커널 메모리 할당
___커널 스레드 구현
___커널 인터럽트 핸들러 구현
14.2 DMA와 제로 카피 전략
___제로 카피 전략
___DMA
___mmap과 DMA를 사용한 제로 카피 전략
14.3 드라이버 레벨에서 ioctl 구현
___ioctl 구현
14.4 간단한 문자 드라이버 만들기
___문자 드라이버 구현
14.5 간단한 블록 디바이스 드라이버 만들기
___블록 디바이스 드라이버 구현
14.6 요약
▣ 15장: 커널 디버깅
15.1 성능 프로파일
___ftrace
___eBPF
15.2 로깅
___커널 로그 출력 및 확인
___러스트로 커널 로그 출력 방법
15.3 시스템 프로세스 정보 확인 방법
15.4 커널 패닉 분석
___kdump 사용법
15.5 요약
▣ 16장: 종합 예제
16.1 LXC를 사용해 나만의 컨테이너 만들기
16.2 Fuse를 이용한 유저 영역 파일 드라이버 만들기
___파일 드라이버 구조
___FUSE
___FUSE를 이용한 유저 영역 파일 드라이버 만들기
16.3 요약
▣ 17장: 마치며
17.1 정리하기
17.2 러스트의 미래
▣ 부록A: 웹 어셈블리
A.1 웹 어셈블리 소개
A.2 웹 어셈블리의 작동 과정
A.3 웹 어셈블리 개발하기
___개발 환경 구성
___간단한 웹 어셈블리 만들기
___wasm을 구동할 웹 서버 설정
A.4 yew를 사용해 간단한 SPA 구동하기
▣ 부록B: 크로스 플랫폼
B.1 크로스 플랫폼 소개
___ARM64용 Hello World 개발하기
B.2 Android NDK 개발
___개발 환경 구성
B.3 간단한 NDK 샘플 만들기
___자바와 러스트의 성능 비교
▣ 부록C: GUI 프로그래밍
C.1 ICED
C.2 egui
C.3 gtk-rs
작가정보
이 상품의 총서
Klover리뷰 (0)
- - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
- - 리워드는 5,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다. (2024년 9월 30일부터 적용)
- - 리워드는 한 상품에 최초 1회만 제공됩니다.
- - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
구매 후 리뷰 작성 시, e교환권 100원 적립
문장수집
- 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
- e교환권은 적립일로부터 180일 동안 사용 가능합니다.
- 리워드는 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일)