목 차 (Contents)
- 1. 리눅스 운영체제 (The Linux operation system)
- 2. 리눅스 커널 (The Linux kernel)
- 3. 리눅스 libc 패키지 (The Linux libc package)
- 4. 시스템 호출 (System calls)
- 5. The "swiss army knief" ioctl
- 6. 리눅스 프로세스간의 통신 (Linux Interprocess Communications)
- 6.1 소개 (Instruction)
- 6.2 반-이중 유닉스 파이프 (Half-duplex UNIX Pipes)
- 6.3 이름을 가진 파이프 (Named Pipes/FIFOs-First In First Out)
- 6.4 시스템 V IPC (System V IPC)
- 6.4.1 기본적인 개념 (Fundamental Concepts)
- 6.4.2 메세지 큐 (Message Queues)
- 6.4.3 세마퍼 (Semaphores)
- 기본 개념 (Basic Concepts)
- 내부 자료 구조 (Internal Data Structures)
- 시스템 호출:semget() (SYSTEM CALL:semget())
- 시스템 호출:semop() (SYSTEM CALL:semop())
- 시스템 호출:semctl() (SYSTEM CALL:semctl())
- semtool:상호작용 세마퍼 조종자 (An interative semaphore manipulator)
- semstat:semtool 동료 프로그램 (A semtool companion program)
- 6.4.4 공유 메모리 (Shared Memory)
- 7 소리 프로그래밍 (Sound Programming)
- 8 문자단위 그래픽스 (Character Cell Graphics)
- 8.1 libc안의 I/O 함수 (I/O Function in libc)
- 8.2 Termcap 라이브러리 (The Termcap Library)
- 8.3 Ncurses - 소개 (Introduction)
- 8.4 초기화 (Initializing)
- 8.5 윈도우 (Windows)
- 8.6 출력 (Output)
- 8.7 입력 (Input)
- 8.8 선택사항 (Options)
- 8.9 윈도우와 줄 지우기 (Clear Window and Lines)
- 8.10 단말기 업데이트 (Updating the Trminal)
- 8.11 비디오 속성과 색상 (Video Attributes and Color)
- 8.12 커서와 윈도우 좌표 (Cursor and Window Coordinates)
- 8.13 스크롤 (Scrolling)
- 8.14 패드 (Pads)
- 8.15 소프트-라벨 (Soft-labels)
- 8.16 잡동사니 (Miscellaneous)
- 8.17 Low-level 접근 (Access)
- 8.18 화면 덤프 (Screen Dump)
- 8.19 Termcap Emulation
- 8.20 Terminfo 함수들(Functions)
- 8.21 디버그 함수 (Debug Function)
- 8.22 Terminfo 능력 (Capabilities)
- 8.23 [N]Curses 함수 개관 ([N]Curses Function Overview)
- 9 I/O 포트 프로그래밍 (Programming I/O ports)
- 10 리눅스에 응용프로그램 포팅하기 (Porting Applications to Linux)
- 11 알파벳 순서에 따른 시스템호출 (Systemcalls in alphabetical order)
- 12 약어 정리 (Abbreviations)
- 이 글에 대하여 (About this document)
저작권 (Copyright)
리눅스 프로그래머 가이드 ©1994, 1995 by Sven Goldt
Sven Goldt, Sachsendamm 47b, 10829 베를린, 독일
<goldt@math.tu-berlin.de>.
Chapter 8 is ©1994, 1995 by Sven van der Meer <vdmeer@cs.tu-berlin.de>.
Chapter 6 is ©1995 Scott Burkett <scottb@IntNet.net>.
Chapter 10 is ©1994, 1995 Matt Welsh <mdw@cs.cornell.edu>.
이 가이드를 감수해준 John D. Harper <jharper@uiuc.edu> 에게 특별히 감사한다.
이 문서의 전체 또는 일부의 재배포또는 복사는 다음과 같은 조건에 한한다.
- 저작권 명시부분은 훼손시키지 말아야 하며 남아있어야 한다.
- 이 문서를 상업적 용도를 쓸경우에는 저자도 일정한 몫을 나누어 가지길 원한다.
- 저자는 이 문서를 사용하는데 있어서 생길수 있는 어떠한 손해에 대해서도 책임지지 않는다.
머리말 (Preface)
이 글은 완벽하지 않습니다. 첫판은 1994년 9월에 Version 0.1로 부터 시작됐으며 그 내용은 인력과 정보의 부족으로 시스템 호출에 집중되었습니다. 네트워킹, 사운드, 그래픽스와 비동기적 I/O와 같은 중요한 부분은 물론이고 라이브러리 함수와 주요 커널 교환에 대한 내용의 보충이 계획되어 있습니다. 아마도 유용한 툴킷에 대한 포인터와 공유 라이브러리(Shared libraries)를 어떻게 만드는가에 대한 몇가지 힌트들도 차후에 추가될 것입니다.
소 개 (Introduction)
과거에 나는 시스템 관리자에 대해 공부하기 위해 PC에 리눅스를 인스톨 했었다. Slip Server를 인스톨하려고 했지만 Shadow와 mgetty를 가지고 동작이 되지 않아 Sliplogin을 패치해야만 했다. 새 리눅스 1.1이 나오기까지 그렇게 작업했었다. 아무도 내게 무슨일이 일어났는지 알려주지 않았고 Russ Nelson의 커널 교환 요약집을 제외하고는 커널 0.99 가 나온 이후의 변화에 대한 아무런 문서도 없었다. 그 요약집은 내가 문제를 해결하는데 그다지 큰 도움이 되지 못했다.
리눅스 프로그래머를 위한 가이드는 그 이름이 함축하고 있는 일을 할 것이다. - 리눅스 프로그래머가 리눅스의 특성을 이해하는 것을 도울 것이다. 또 당연하지만, 다른 운영체제에서 리눅스로 프로그램을 포팅할 경우에도 유용하게 쓰일 것이다. 따라서 이 글은 시리얼 I/O와 네트워킹에 영향을 미치는 주요 커널 교환과 시스템 호출에 대하여 설명할 것이다.
이전:리눅스 프로그래머를 위한 가이드 다음:1.리눅스 운영체제
Copyright (c) 1996,1997 by Euibeom.Hwang & SangEun.Oh All Rights Reserved Email To:Webmaster , Another address
LAST UPDATE Dec 22,1997
Created Nov 7,1997
'UNIX_LINUX_C_C++' 카테고리의 다른 글
Programming from the Ground Up (0) | 2011.10.16 |
---|---|
file 접근,수정 시간을 현재 시간으로 변경한다. (0) | 2011.10.16 |
file 정보(stat) 와 종류 알아내기 (0) | 2011.10.16 |
[c언어] 러시아 페인트공 알고리즘 (0) | 2011.10.16 |
리눅스에서 MP3 사운드 화일을 인코딩하고 재생 (0) | 2011.10.16 |