책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > OS/Networking > 리눅스
· ISBN : 9788984688438
· 쪽수 : 238쪽
· 출판일 : 2019-08-20
책 소개
목차
1장 개 요
1.1 컴퓨터 시스템 동작 원리
1.2 리눅스 커널
1.2.1 파일 관리 서브시스템
1.2.2 프로세스 관리 서브시스템
1.2.3 시스템 호출 인터페이스
1.2.4 입출력 장치 인터페이스
1.3 커널 진입점
1.3.1 시스템 호출
1.3.2 인터럽트
1.3.3 예외현상
1.4 리눅스 시스템 프로그래밍
1.4.1 소스 프로그램 작성 : vi
1.4.2 컴파일링 : gcc
1.4.3 프로그램 실행
2장 파 일
2.1 파일 개요
2.1.1 가상 파일 시스템
2.1.2 Ext2 파일 시스템
2.1.3 커널 자료구조
2.2 파일 입출력
2.2.1 open() : 파일 열기 및 생성
2.2.2 close() : 파일 닫기
2.2.3 read() : 파일 읽기
2.2.4 write() : 파일 쓰기
2.2.5 creat() : 파일 생성
2.2.6 dup(), dup2() : 파일 디스크립터 복사
2.2.7 lseek():파일 읽기/쓰기 위치 지정
2.3 파일 관리
2.3.1 stat(), fstat() : 파일 상태 정보 조회
2.3.2 access():접근 권한 검사
2.3.3 chmod(), fchmod():접근 권한 변경
2.3.4 utime() : 접근 및 수정 시간 변경
2.3.5 chown(), fchown() : 소유자 및 그룹 변경
2.4 디렉토리 관리
2.4.1 mkdir(), rmdir() : 디렉토리 생성과 삭제
2.4.2 opendir(), readdir(), closedir() : 디렉토리 내용 조회
2.4.3 getcwd() : 작업 디렉토리
2.4.4 chdir() : 작업 디렉토리 변경
2.5 링크
2.5.1 link(), unlink() : 하드 링크 생성과 삭제
2.5.2 symlink() : 심볼릭 링크 생성
2.5.3 readlink() : 심볼릭 링크 파일 읽기
2.5.4 lstat() : 심볼릭 링크 파일 상태 정보 조회
3장 프로세스
3.1 프로세스 개요
3.1.1 프로세스 상태
3.1.2 프로세스 구조체
3.1.3 프로세스 주소공간
3.2 프로세스 관리
3.2.1 fork() : 프로세스 생성
3.2.2 getpid(), getppid() : 프로세스 ID
3.2.3 getuid(), geteuid() : 프로세스 사용자
3.2.4 exit(), wait(), waitpid() : 프로세스 종료 및 기다림
3.3 프로그램 실행
3.3.1 getenv() : 프로세스 환경변수
3.3.2 exec() 계열 : 프로세스 이미지 교체
3.4 동적 메모리
3.4.1 malloc() : 동적 메모리 할당
3.4.2 free() : 동적 메모리 해제
4장 스래드
4.1 스래드 개요
4.1.1 스래드 정의
4.1.2 다중 스래드
4.2 스래드 관리
4.2.1 pthread_create() : 스래드 생성
4.2.2 pthread_create() : 스래드 인수전달
4.2.3 pthread_join() : 스래드 종료 기다림
4.2.4 pthread_join() : 스래드 반환 값
4.3 스래드 동기화
4.3.1 pthread_mutex() : 뮤텍스
4.3.2 sem_wait(), sem_post() : 세마포어
5장 IPC
5.1 IPC 개요
5.2 파이프
5.2.1 pipe() : 이름 없는 파이프
5.2.2 mkfifo() : 이름 있는 파이프
5.3 메시지 큐
5.3.1 msgget() : 메시지 큐 생성
5.3.2 msgsnd(), msgrcv() : 메시지 송수신
5.3.3 msgctl() : 메시지 큐 제어
5.4 공유 메모리
5.4.1 shmget() : 공유 메모리 생성
5.4.2 shmat(), shmdt() : 공유 메모리 연결 및 분리
5.4.3 shmctl() : 공유 메모리 제어
5.5 세마포어
5.5.1 semget() : 세마포어 생성
5.5.2 semop() : 세마포어 연산
5.5.3 semctl() : 세마포어 제어
6장 시그널
6.1 시그널 개요
6.2 시그널 처리
6.2.1 signal() : 시그널 처리(1)
6.2.2 sigaction() : 시그널 처리(2)
6.3 시그널 대기 및 전송
6.3.1 pause() : 시그널 대기
6.3.2 kill(), raise() : 시그널 전송
7장 소켓
7.1 소켓 개요
7.1.1 TCP/IP
7.1.2 소켓 주소
7.2 시스템 호출
7.2.1 socket(), close() : 소켓 생성과 제거
7.2.2 bind() : IP 및 포트번호 설정
7.2.3 listen() : 연결 요청 기다림
7.2.4 accept() : 연결 요청 수신
7.2.5 connect() : 연결 요청
7.2.6 send() : 데이터 송신
7.2.7 recv() : 데이터 수신
7.3 예제 프로그램
7.3.1 서버
7.3.2 클라이언트
8장 모듈
8.1 모듈 개요
8.1.1 모듈 프로그램
8.1.2 모듈 생성
8.1.3 모듈 삽입 및 제거
8.1.4 실행 확인
8.2 디바이스 드라이버
8.2.1 디바이스 드라이버 프로그램
8.2.2 디바이스 드라이버 생성
8.2.3 디바이스 드라이버 삽입 및 제거
8.3 디바이스 드라이버 테스트
8.3.1 디바이스 파일 생성
8.3.2 테스트 프로그램
8.3.3 컴파일 및 실행