본문 바로가기

프로그래밍/UNIX 고급 프로그래밍6

제9장 프로세스 관계 9.1 소개 모든 프로세스에는 부모프로세스가 있다. 자식이 종료되면 그 사실이 부모에게 통지되며, 부모는 자식의 종료 상태를 회수할 수 있다. 이번 장에서는 프로세스 그룹과 POSIX.1에서 도입된 세션(session)을 소개한다. 9.2 터미널 로그인 터미널을 이용해서 유닉스 시스템에 로그인하는 데 쓰이는 절차를 설명한다. BSD터미널 로그인 시스템 관리자는 터미널 장치당 한 줄씩으로 이루어진 파일을 생성한다. (/etc/ttys) 파일의 각 줄에는 장치 이름과 getty 프로그램에 전달할 기타 매개변수들이 지정되어 있다. 시스템이 시동(booting)될 때 커널은 프로세스 ID가 1인 init 프로세스를 생성 init 프로세스는 /etc/ttys 파일을 읽어서 로그인을 허용하는 각각의 터미널 장치마다.. 2019. 12. 2.
제8장 프로세스 제어 2017/11/02 - [프로그래밍/UNIX 고급 프로그래밍] - 제7장 프로세스 환경 8.1 소개 프로세스 제어에는 새 프로세스의 생성, 프로그램의 실행, 프로세스의 종료가 포함된다. 8.2 프로세스 식별자 각 프로세스는 고유한 프로세스 ID가 있다. 시스템에는 특별한 프로세스들이 존재하나, 그 세부사항은 구현마다 다르다. 일반적으로 프로세스 ID 0은 흔히 스와퍼(swapper)라고 부르는 스케줄러 프로세스에 배정된다. 이 프로세스는 커널의 일부인 시스템 프로세스이다. 프로세스 ID 1은 일반적으로 init 프로세스인데, 시스템 시동 과정의 끝에서 커널이 실행한다. Mac OX X 10.4에서 init프로세스는 launchd 프로세스로 대체되었다. launchd 프로세스는 init과 같은 종류의 과제.. 2019. 11. 18.
제7장 프로세스 환경 2017/10/24 - [프로그래밍/UNIX 고급 프로그래밍] - 제6장 시스템 자료 파일과 시스템 정보 7.1 소개 다음 장에서 프로세스 제어를 위한 기본 수단들을 살펴보기 전에, 먼저 하나의 프로세스가 실행되는 환경을 파악할 필요가 있다. 7.2 main 함수 하나의 C프로그램의 실행은 main이라는 함수의 호출로부터 시작된다. main함수의 원형(proto-type)은 다음과 같다. int main(int argc, char *argv[]); 여기서 argc는 명령줄 인수(command-line argument)들의 개수이고 argv는 그 인수들을 가리키는 포인터들의 배열이다. C 프로그램을 커널이 exec류 함수들 중 하나를 이용해서 실행할 때, main함수가 호출되기 전에 특별한 시동 루틴(st.. 2017. 11. 2.
제6장 시스템 자료 파일과 시스템 정보 2017/10/18 - [프로그래밍/UNIX 고급 프로그래밍] - 제5장 표준 입출력 라이브러리 6.1 소개 유닉스 시스템의 통상적인 운영에는 여럭 가지 파일이 요구된다. 이런 자료 파일들에 대한 이식성 잇는 인터페이스가 이번 장의 주제이다. 또한 이번 장에서는 시스템 식별 함수들과 시간 및 날짜 함수들도 살펴본다. 6.2 패스워드 파일 POSIX.1에서는 사용자 데이터베이스라고 부르는 UNIX 시스템의 패스워드 파일에는 도해 6.1과 같은 필드들이 들어 있다. 이 필드들은 에 정의된 passwd 구조체의 필드들에 대응된다. 도해 6.1 /etc/passwd 파일의 필드들설명 해당 passwd구조체 멤버 POSIX.1 FreeBSD8.0 Linux 3.2.0 Mac OS X10.6.8 Solaris10 .. 2017. 10. 24.
제5장 표준 입출력 라이브러리 표준 입ㅇ러ㅣㅏㅇㄹ4.18 기호 링크의 생성과 읽기 기호 링크는 symlink 함수나 symlinkat 함수로 생성할 수 있다.링크 자체를 열어서 링크 안의 이름을 읽으려면 readlink 함수와 readlinkat 함수를 사용하면 출처: http://ohdumak.tistory.com/category/프로그래밍/UNIX 고급 프로그래밍 [오두막]4.18 기호 링크의 생성과 읽기 기호 링크는 symlink 함수나 symlinkat 함수로 생성할 수 있다. 출처: http://ohdumak.tistory.com/category/프로그래밍/UNIX 고급 프로그래밍 [오두막]4.18 기호 링크의 생성과 읽기 기호 링크는 symlink 함수나 symlinkat 함수로 생성할 수 있다. 출처: http://ohd.. 2017. 10. 18.
제4장 파일과 디렉터리 UNIX 고급 프로그래밍국내도서저자 : 리처드 스티븐스,스티븐 레이고 / 류광역출판 : 퍼스트북 2014.08.28상세보기 4.17 기호링크 도해 4.17 여러 함수들의 기호 링크 처리 방식함수 기호 링크를 따라가지 않음 기호 링크를 따라감 access O chdir O chmod O creat O exec O lchown O link O lstat O open O opendir O pathconf O readlink O remove O rename O stat O truncate O unlink O 예외 O_CREAT와 O_EXCL을 모두 설정해서 open 함수를 호출했을 때, 만일 지정된 경로이름이 기호 링크이면 open 호출이 실패하고 errno가 EEXIST로 설정된다. 보안구멍을 막기 위해서! .. 2017. 9. 20.