최신 ARM64 커널을 코드 레벨에서 상세히 분석하다!

최신 커널을 분석하거나 수정하기 위해 라인 단위로 코드 설명!


출판사 제이펍

저자명 윤석훈, 문영일, 구본규, 유희재

출판일 2018년 5월 24일

페이지 936쪽

시리즈 (없음)

판  형 (188*245*39)

제  본 무선(soft cover)

정  가 44,000원

ISBN 979-11-88621-15-6 (93000)

키워드 리눅스 커널 / ARM64 / ARMv8 / AArch64 / 태스크 관리 / 임베디드 리눅스

분야 운영체제 / 리눅스 / 임베디드


관련 사이트

관련 포스트

관련 시리즈
■ (없음)

관련 도서

관련 파일 다운로드

교재 검토용 증정 안내
■ 학교 및 학원에서 교재 선정을 위해 책을 파일로 검토해보고자 하시는 분들은 다음의 페이지에서 신청 양식을 작성해주시기 바랍니다. 확인 후 연락을 드리도록 하겠습니다. http://goo.gl/vBtPo3

강의보조 자료
교재로 채택하신 분들은 메일을 보내주시면 아래의 자료를 보내드리겠습니다: jeipubmarketer@gmail.com
■ 본문의 그림과 표

샘플 PDF(차례, 추천사, 머리말, 이 책에 대하여, 알파리더 후기, 베타리더 후기, 1장 'ARMv8 아키텍처' 일부, 2장 '커널 시작하기' 일부, 3장 '페이징과 매핑' 일부, 4장 '메모리 관리' 일부)

정오표 페이지
■ (등록되는 대로 링크를 걸어드리겠습니다)

도서구매 사이트(가나다순)

도서 소개

ARM64 커널의 작동 구조 전격 공개!

최신 커널을 분석하거나 수정하기 위해 라인 단위로 코드 설명!


현업에서 커널 업무를 하고 있거나, 취미로 커널 분석을 시작했지만 방대한 양과 난해한 코드 때문에 어려움을 겪고 있는가? 시간이 부족하여 어디서부터 시작해야 할지 갈피조차 잡지 못하고 있는가? 오래전에 구입한 책을 뒤적거리지만 커널 버전이 맞지 않아 시간만 낭비하고 있지는 않은가? 최신 커널 학습에 어려움을 겪는 이런 분들을 위해 《코드로 알아보는 ARM 리눅스 커널》을 전면 개정하여 출간했다. 이 책은 최신 ARM64 커널의 주요 서브시스템을 코드 레벨에서 분석하고 있으며, 기존 원리를 코드를 직접 쫓아가며 명쾌하게 소개하고 있어 커널 엔지니어들에게 훌륭한 길잡이가 될 것이다.


ARM64 커널 개발을 시작했거나 좀 더 깊고 다양하게 이해하고 싶은 엔지니어, (놀랍게도) 취미로 ARM64 커널을 이해하고자 하는 엔지니어를 위한 이 책은 ARMv8 아키텍처에 대한 내용뿐만 아니라 커널의 핵심 구동 원리를 완벽히 습득하는 데 필요한 거의 모든 내용을 담고 있다. 더욱이 370여 개의 그림을 통해 이해를 돕고 있어 기나긴 커널 분석의 길에 든든한 동반자가 될 수 있을 것이다.


이 책의 주요 내용

  • ARMv8 아키텍처 구조 
  • 메모리 매핑, 페이징 
  • 태스크 관리와 스케줄링 
  • 인터럽트와 타이머
  • ARM64 커널의 시작과 익셉션 핸들링, 디바이스 트리
  • 메모리 할당자
  • SMP와 cpu 토폴로지


지은이 소개

윤석훈

9년째 임베디드 리눅스 엔지니어로 일하고 있다. 주로 커널을 최적화하는 업무에 참여했으며, 임베디드 리눅스 커널에 관한 콘텐츠를 지속적으로 생산, 배포하는 것과 디버깅 툴에 관심이 많다. 커널 엔지니어로 오래 먹고 살기 위한 궁리의 일환으로 최근에는 잘 다니던 회사를 나와 무언가를 준비 중에 있다.


문영일 

수년간 광통신을 이용하여 기가비트 인터넷을 전송하는 시스템인 GPON 네트워크 관련 개발을 하고 있다. 이전에는 ARM, PPC, MIPS 아키텍처 기반의 각종 임베디드 시스템뿐 아니라 콜센터 및 데이터센터 분야의 애플리케이션 설계와 개발을 수행했었다.


구본규

국내 손꼽히는 SoC 팹리스에서 리눅스 엔지니어로 근무하고 있다. 10년 넘게 각종 IT 세미나, 콘퍼런스, 커뮤니티 활동을 했으며, 요즘은 로봇과 인공지능이 바꿀 미래를 꿈꾸며 머신러닝 스터디 모임을 운영하고 있다.


유희재

임베디드 리얼타임 컴퓨팅 랩에서 멀티코어 환경에서의 임베디드 시스템을 전공했다. 대학원을 졸업한 후에는 시스템 엔지니어로 컴퓨터 비전을 활용한 스마트 네트워크 시스템과 x-ray 디텍터 및 바이오 진단기기를 개발했고, 플래그십 AP와 FPGA를 활용한 펌웨어 엔지니어로 최첨단 의료기기인 복강경 수술로봇의 국산화에도 힘썼다. 지금은 종합 반도체 회사에서 UFS를 위한 모바일 펌웨어 엔지니어로 근무하고 있다.


차례

1장 ARMv8 아키텍처 1

1.1 ARMv8 소개 4

    1.1.1 익셉션 모델 5

    1.1.2 익셉션 레벨 변경 6

    1.1.3 실행 상태 7

    1.1.4 실행 상태 변경 7

1.2 ARMv8 레지스터 8

    1.2.1 프로세서 상태 레지스터(PSTATE) 9

    1.2.2 AArch64 특수 목적 레지스터 10

    1.2.3 시스템 레지스터 12

    1.2.4 ABI의 레지스터 사용 규칙 12

1.3 AArch64 익셉션 핸들링 13

    1.3.1 익셉션 타입 14

    1.3.2 동기 및 비동기 익셉션 15

    1.3.3 익셉션 핸들링 16

    1.3.4 익셉션에 의해 변경되는 실행 상태와 익셉션 레벨 17

    1.3.5 AArch64 익셉션 벡터 테이블 19

    1.3.6 인터럽트 핸들링 20

    1.3.7 GIC 표준 인터럽트 컨트롤러 21

1.4 캐시 21

    1.4.1 캐시 구조 22

    1.4.2 캐시 컨트롤러 24

    1.4.3 캐시 정책 24

    1.4.4 캐시 일관성의 두 가지 관점 25

    1.4.5 캐시 관리 27

    1.4.6 캐시 탐색 27

1.5 MMU 28

    1.5.1 가상 주소를 물리 주소로 변환 29

    1.5.2 AArch64의 테이블 디스크립터 종류 30

    1.5.3 커널과 애플리케이션의 가상 주소 공간 분리 32

    1.5.4 변환 테이블의 cacheable과 shareable 속성 33

    1.5.5 디스크립터 메모리 속성 34

    1.5.6 시큐리티와 MMU 36

    1.5.7 컨텍스트 스위칭 36

1.6 메모리 오더링 37

    1.6.1 메모리 타입 39

    1.6.2 배리어 41

    1.6.3 메모리 속성 42

1.7 멀티코어 프로세서 44

    1.7.1 멀티프로세싱 시스템 44

    1.7.2 캐시 일관성 47

    1.7.3 클러스터 내의 멀티코어 캐시 일관성 48

    1.7.4 버스 프로토콜과 캐시 일관성 인터커넥트 51

1.8 전력 관리 52

    1.8.1 유휴 상태 관리 52

    1.8.2 소비전류 관련 인스트럭션 54

    1.8.3 PSCI 54

더보기


댓글을 달아 주세요



티스토리 툴바