제I부 리눅스의 구조
제1장 리눅스 프로그래밍 시작하기 ........ 3
1.1 책의 개요 4
1.2 프로그래밍 환경 준비 8
1.3 gcc를 사용한 빌드(1 10
1.4 gcc를 사용한 빌드(2 13
1.5 커맨드라인 인자 16
1.6 개발 환경 이야기 20
1.7 정보를 얻는 방법 22
제2장 리눅스 커널의 세계 ........ 24
2.1 운영체제 25
2.2 라이브러리 30
제3장 리눅스의 세 가지 중요 개념 ........ 33
3.1 파일 시스템 34
3.2 프로세스 39
3.3 스트림 41
3.4 리눅스의 세 가지 중요 개념 정리 45
제4장 리눅스와 사용자 ........ 46
4.1 사용자와 그룹 47
4.2 셸과 단말 55
제II부 리눅스 프로그래밍의 근간
제5장 스트림 관련 시스템 콜 ........ 63
5.1 이번 장에서 다루는 내용 64
5.2 파일 디스크립터 65
5.3 표준 입력, 표준 출력, 표준 에러 출력 66
5.4 스트림 읽기 및 쓰기 69
5.5 파일 열기 72
5.6 cat 명령어 만들기 75
5.7 기타 시스템 콜 83
5.8 연습문제 87
제6장 스트림 관련 라이브러리 함수 ........ 88
6.1 stdio 89
6.2 바이트 단위 입출력 93
6.3 stdio로 cat 명령어 만들기 96
6.4 문자열 입출력 98
6.5 고정 길이 입출력 105
6.6 파일 오프셋 작업 107
6.7 파일 디스크립터와 FILE 타입 109
6.8 버퍼링 작업 111
6.9 EOF와 에러 112
6.10 stdio의 동작 확인하기 114
6.11 연습문제 117
리눅스의 구조와 함께 배우는 gcc 프로그래밍의 왕도
리눅스에서 많이 사용하는 명령어들을 C 언어로 만들어보는 예제를 통해 리눅스와 C 언어를 동시에 익히며 쉽고 빠르게 진도를 낼 수 있다. 또한 리눅스라는 거대한 시스템을 파일 시스템, 프로세스, 스트림이라는 세 개의 키워드로 일관되게 설명하고 있어서 이제 막 리눅스에 입문하는 초보자에게는 이만한 책이 또 없을 것이다. 책을 읽고 난 후에는 리눅스와 C 언어에 대해서는 어느 정도 자신감을 가지고 네트워크 관련 프로그램까지도 만들 수 있게 될 것이다.
개발자 관점에서 배우는 알기 쉬운 리눅스 입문서!
이 책은 리눅스 구조를 쉽게 배울 수 있는, 그리고 리눅스 gcc 프로그래밍의 입문 서적으로 호평받은 1판에서 최신 상황을 반영하고 전체적으로 내용을 업데이트하였다. 개발자 관점에서 리눅스 구조를 해설하고, 리눅스를 구성하는 개념과 리눅스 프로그래밍의 표준 기법을 설명하며, Hello World!에서 HTTP 서버 구축까지 다룬다.
리눅스 입문서인 이 책은 리눅스에서 사용할 수 있는 간단한 프로그램 개발을 통해 OS의 기본적인 역할과 구조를 이해할 수 있으며, 리눅스용 프로그램 개발에 무엇이 필요한지 독자 스스로 판단할 수 있도록 도와준다.
이 책의 대상 독자
- 프로그래밍을 통해 리눅스 구조를 파악하고 싶은 분
- C 언어 입문을 마치고 리눅스 프로그래밍을 익히고 싶은 분
- 리눅스나 유닉스 프로그래밍 관련 다른 책들이 읽기 어려웠던 분
- 윈도우에서 C나 C++을 다뤄봤으나 리눅스에서의 프로그래밍은 처음인 분