책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > C++
· ISBN : 9791161752051
· 쪽수 : 600쪽
· 출판일 : 2018-09-28
책 소개
목차
1장. SkyOS 프로젝트
__예비지식
__SkyOS 콘셉트
__준비물
____비주얼 스튜디오 2017
____WinImage
____QEMU
____SkyOS 소스코드
__프로젝트 빌드
____프로젝트 구성
____프로젝트 빌드
____커널의 실행
__정리
2장. 운영체제 이론
__프로세스
__스레드
__스택
__호출 규약
__네임 맹글링
__정리
3장. 커널 로딩
__GRUB
____부팅
____설치
____실행
____GRUB이 전달하는 파라미터
____커널 엔트리 찾기
____제약사항
____글로벌 객체의 초기화
__환경 설정
____RTTI 기능 제거
____예외 기능 사용하지 않기
____기타 옵션
__정리
4장. 하드웨어 초기화
__CPU
____메모리 레이아웃
____GDT
____IDT
____정리
__PIC
__PIT
__실습
__FPU
__인터럽트 핸들러
____예외 인터럽트의 종류
____실습
__정리
5장. 메모리 가상화
__가상주소공간
__페이징
____주소 변환 과정
____세그멘테이션
____페이징
__정리
6장. 메모리 매니저
__물리 메모리 매니저
__가상 메모리 매니저
____페이징 구현
____가상주소와 물리주소 매핑
__정리
7장. 힙의 구현
__커널 힙 알고리즘
__할당과 해제 로직
____할당
____해제
__힙 인터페이스
__실습
__정리
8장. C++
__new, delete 연산자 구현
__예외 처리
____순수 가상함수 호출
____힙 손상
__클래스 상속
__C+ +11
____람다 함수
____constexpr
__실습
__정리
9장. 공통 라이브러리
__C 런타임 라이브러리 제작
__STL
____string
____vector
____맵
____리스트
____덱
____cout
__비표준 자료구조
____이중 연결 리스트
____큐
____스택
__정리
10장. 디바이스 구현
__키보드
____키보드 핸들러의 구현
__플로피 디스크
____플로피 디스크 초기화
__하드 디스크
____하드 디스크 초기화
____하드 디스크 읽기 / 쓰기
__정리
11장. VFS
__파일시스템
__StorageManager 클래스
__표준 입출력 함수와의 연계
__MINT64 램디스크
__메모리 리소스 디스크
__실습
__정리
12장. 디버깅
__맵 파일 익스플로러
__PDB
__WinDBG
__널 포인터 접근
__try / catch
__로그
__정리
13장. 커널 코어 구현
__프로세스 매니저
____프로세스의 생성
____파일로부터 프로세스 생성
____정리
__콘솔시스템
____시스템 프로세스의 생성
____콘솔 프로세스
____WatchDog
____Process Remover
__멀티태스킹
____태스크 스위칭 세부 구현
____정리
__실습
14장. 애플리케이션
__응용프로그램의 시스템 API 호출 원리
__EntryPoint 함수 구현
__SkyOS 시스템 API 호출
____유저 API
____커널 API
____시스템 API의 추가
__응용프로그램
____Hello World
____Sort
____Math
__정리
15장. 그래픽 시스템
__그래픽 모드 초기화
____RME
____GRUB을 활용한 GUI 전환
__GUI 환경구축
____GUI 콘솔
____SkyGUI
____SVGA 라이브러리
__정리
16장. 써드파티
__루아
__json 라이브러리
__easyzlib
__정리
17장. 동적 라이브러리
__DLL 로드
__SampleDll
__정리
18장. Advanced Debugging
__커널 디버깅은 원래 가능
__VirtualBox를 이용한 디버깅
__동적 라이브러리를 활용한 디버깅
____콜스택 출력
____심벌엔진
__정리
19장. SkyOS64
__32비트 부트 로더
__64비트 커널
__ELF 포맷
__주의사항
__정리
20장. Final
__개발사항
__GUI 콘솔 실습
__SVGA 라이브러리
__모듈 개발하기
__남은 과제
부록
__PE 파일
__덤프 테스트 모듈
____DumpTest Module
__주소 재배치
__동기화
____스레드와 동기화 객체
____멀티 스레드를 사용하는 이유
____동기화 객체 종류
____Recursive Lock
____SkyOS에서의 동기화
__어셈블러
__스크래치로부터 커널 부팅
____디스크에 부트섹터 쓰기
__USB에 GRUB 2.02 설치