Android Internals Vol. 1
도서명:Android Internals Vol. 1
저자/출판사:조나단,레빈/에이콘출판
쪽수:284쪽
출판일:2016-08-26
ISBN:9788960778979
목차
1. 안드로이드 아키텍처의 진화 __안드로이드 버전의 이력
____프로요
____진저브레드
____허니콤
____아이스크림 샌드위치
____젤리빈
____키켓
____롤리팝 ____마시멜로
__안드로이드 대 리눅스 ____리눅스의 또 다른 배포판이 아니다
____그러고 나서 안드로이드가 왔다
____리눅스와의 공통점과 차이점
____안드로이드 프레임워크
____달빅 가상 머신
____JNI
____네이티브 라이브러리
____바이오닉(Bionic)
____안드로이드 네이티브 라이브러리
____외부 네이티브 라이브러리
____하드웨어 추상화 레이어
____리눅스 커널
__안드로이드 파생물
____구글에서 만든 파생물
____구글이 아닌 곳에서 만든 파생물
__생각해보기
____64비트 호환성
____안드로이드 런타임(ART)
____분할-화면
____데스크톱 OS로서의 안드로이드
____안드로이드와 프로젝트 아라
____브릴로
__요약
__참조 2. 안드로이드 파티션 및 파일시스템
__파티셔닝 스키마
____별도의 파티션에 대한 필요성
____GUID 파티션 테이블
____플래시 저장 시스템
____파일시스템
____안드로이드 디바이스 파티션
__안드로이드 파일시스템 콘텐츠
____루트 파일시스템
____/system
____/system/bin
____/system/xbin
____/system/lib[64] ____/system/etc
____/data
____/data/data
____/data/misc
____/data/system
____/cache
____/vendor
____SD 카드
__보호된 파일시스템
____OBB
____ASec
__리눅스 가상 파일시스템 ____cgroupfs
____debugfs
____functionfs(/dev/usb-ffs/adb) ____procfs(/proc)
____pstore(/sys/fs/pstore)
____SELinuxfs(/sys/fs/selinux)
____sysfs(/sys)
__요약
__참조 3. 안드로이드 부팅, 백업 및 복구
__안드로이드 이미지
____부트로더
____부트로더 이미지 ____부트로더 잠금
____부트 이미지
____커널
____디바이스 트리(ARM) ____램디스크
____시스템 및 데이터 파티션
__부트 프로세스
____펌웨어 부트
____커널 부트
__종료 및 재부팅
__안드로이드 백업 및 복구 ____커맨드 라인 도구
____로컬 백업
____백업 동작 모니터링
__시스템 복구 및 업데이트
____OTA 업데이트
____OTA 업데이트 프로세스
____이미지 커스터마이징
____이미지 변경을 위한 리소스
__요약
__참조
4. init
__init의 역할과 책임 ____시스템 프로퍼티
____.rc 파일
____종합: init의 흐름
__Init 및 USB __init의 다른 역할
____ueventd
____watchdogd __요약
__이번 장에서 설명한 파일들 5. 안드로이드 데몬
__핵심 서비스 ____adbd
____healthd
____lmkd?(안드로이드 L)
____logd(안드로이드 L)
____vold
__네트워크 서비스
____netd
____mdnsd
____mtpd
____racoon
____rild
__그래픽 및 미디어 서비스
____부트애니메이션
____mediaserver
____drmserver
__다른 서비스들
____installd
____Commands
____키스토어
____debuggerd[64] ____sdcard
____자이고트[64]
__요약
__이번 장에서 설명한 파일들
__참조 6. 프레임워크 서비스 아키텍처
__서비스 매니저 다시 살펴보기
__서비스 호출 패턴
____장단점들
____직렬화와 AIDL(Android Interface Definition Language)
__바인더(Binder)
____짧은 역사
____그러면 정확하게 바인더는 무엇일까?
____바인더 사용하기
____바인더 추적하기
__system_server
____시작 및 흐름
____시작 동작 변경하기
__요약 __이번 장에서 사용된 파일
__참조
7. 리눅스 렌즈를 이용해 안드로이드 살펴보기
__/proc, revisited
____심링크: cwd, exe, root
____fdinfo
____status
____pid, tid, tgid 및 ppid 정리하기
__스레드 상태 및 컨텍스트 스위칭
__사용자 모드 메모리 관리
____가상 메모리 분류 및 생명주기
____메모리 메트릭
____아웃 오브 메모리 조건
__시스템 호출 추적하기
____toolbox ps 툴
____wchan 및 syscall
____strace 툴
__요약
__이번 장에서 사용된 참조 및 설명한 파일
8. 안드로이드 보****
__모바일 보****위협 모델링
____공격 경로
____로드맵
__리눅스 레벨의 보****
____리눅스 퍼미션
____리눅스 케이퍼빌리티
____SELinux
____주목할 만한 다른 특징들
__달빅 레벨의 보****
____달빅 레벨 퍼미션
____달빅 코드 서명
__사용자 레벨 보****
____잠금 화면
____멀티-유저 지원
__키 매니지먼트
____인증서 관리
____비밀 및 개인 키 관리
__스토리지 보****
____/data 암호화
____시큐어 부트
__안드로이드 루팅
____루트로 부트하기
____취약점을 악용해 루팅하기
__요약
__참조