- 차례
- 1. 소개
- 1.1. 프로그래밍의 세계로
- 1.2. 사용하는 도구
- 1.1. 프로그래밍의 세계로
- 2. 컴퓨터 구조
- 2.1. 컴퓨터의 메모리 구조
- 2.2. CPU
- 2.3. 몇 가지 용어들
- 2.4. interpreting Memory
- 2.5. 데이터 접근 방법
- 2.2. CPU
- 2.1. 컴퓨터의 메모리 구조
- 3. 첫번째 프로그램 만들기
- 3.1. Entering in the Program
- 3.2. 어셈블리 프로그램의 개요
- 3.3. Planning the Program
- 3.4. 최대 숫자 찾기
- 3.5. Addressing mode
- 3.2. 어셈블리 프로그램의 개요
- 3.1. Entering in the Program
- 4. 함수에 대해서 다루기
- 4.1. 복잡한 프로그램 다루기
- 4.2. 함수 만들기
- 4.3. C calling convention을 이용한 어셈블리어 함수설명
- 4.4. 함수 예제
- 4.5. 재귀 함수
- 4.2. 함수 만들기
- 4.1. 복잡한 프로그램 다루기
- 5. 파일 다루기
- 5.1. 유닉스 파일 소개
- 5.2. 버퍼와 .bss
- 5.3. 표준파일과 특수 파일들
- 5.4. 프로그램에서 파일의 이용
- 5.5. 복습
- 5.2. 버퍼와 .bss
- 5.1. 유닉스 파일 소개
- 6. 레코드 단위의 읽기와 쓰기
- 7. 견고한 프로그램 작성하기
- 7.1. 왜 시간이 지연되는가 ?
- 7.2. 견고한 프로그램을 만들기 위한 몇가지 팁
- 7.3. 에러 핸들링의 기본
- 7.3.1. 모든 것은 에러코드를 가진다.
- 7.4. 견고한 프로그램으로 만들기
- 7.1. 왜 시간이 지연되는가 ?
- 8. 라이브러리를 통한 함수 공유
- 8.1. 공유 라이브러리의 이용
- 9. 메모리에 대하여
- 9.1. 컴퓨터는 메모리를 어떻게 바라보는가
- 9.2. Instruction Pointer
- 9.3. 리눅스 프로그램에서의 메모리 구조
- 9.4. Every Memory Address is Lie
- 9.5. Getting More Memory
- 9.6. 메모리 관리
- 9.7. 변수와 상수들
- 9.8. allocate_init 함수
- 9.9. allocate 함수
- 9.10. deallocate 함수
- 9.11. 성능 및 다른 몇가지 문제들
- 9.12. Allocator 사용하기
- 9.13. 더 많은 정보들
- 9.14. 복습
- 9.2. Instruction Pointer
- 9.1. 컴퓨터는 메모리를 어떻게 바라보는가
- 10. 최적화
- 10.1. 최적화가 필요한 시점
- 10.2. 어디를 최적화 할 것인가
- 10.3. 지역 최적화 방안
- 10.4. 전역 최적화 방안
- 10.5. 복습
- 10.2. 어디를 최적화 할 것인가
- 10.1. 최적화가 필요한 시점
- 11. Appendix A. GUI 프로그래밍
- 11.1. GNOME 라이브러리
- 11.2. 다양한 언어를 이용한 간단한 GNOME 프로그램 작성
- 11.1. GNOME 라이브러리
- 12. Appendix B. Common x86 Instructions
- 12.1. Data Transfer Instructions
- 12.2. Integer Instructions
- 12.1. Data Transfer Instructions
- 13. Appendix C. 주요 시스템 콜들
- 14. Appendix D. ASCII 코드 표
'UNIX_LINUX_C_C++' 카테고리의 다른 글
한글을 판단하는 아주아주 단순한 로직? (1) | 2011.10.16 |
---|---|
[공유메모리] 목차 (0) | 2011.10.16 |
file 접근,수정 시간을 현재 시간으로 변경한다. (0) | 2011.10.16 |
리눅스 프로그래머를 위한 가이드 (0) | 2011.10.16 |
file 정보(stat) 와 종류 알아내기 (0) | 2011.10.16 |