유닉스쉘구현_보고서포함
본 자료는 미리보기를 지원하지 않습니다.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
해당 자료는 5페이지 까지만 미리보기를 제공합니다.
5페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

유닉스쉘구현_보고서포함에 대한 보고서 자료입니다.

목차

첫 번째 구현 요구사항
- makelist를 작성 (strtok이용하지 말것)
- makelist를 이용하여 cmd를 그룹별로 실행 ("ps ; ls-l"는 ';'로 분리되어 그룹이 2개임)

두 번째 구현 요구사항
- "cd", "exit"명령
- backgroud와 foreground처리

세 번째 구현 요구사항
- 쉘이 ^C(SIGINT), ^(SIGQUIT)에 영향을 받지 않도록 signal action을 설정하시오- backgroud와 foreground처리
- makelist가 cmd_grp을 다음과 같은 cmd_vector로 분리하도록 변경하시오
- 명령 실행시 다른 프로세스 그룹에서 실행되도록 하시오. (setpgid()이용)

네 번째 구현 요구사항
- 포그라운드 (^C)에 종료되도록 하시오.
- 백그라운드 프로세스를 기다리지 않도록 하시오.
- 좀비핸들러를 이용하여 좀비를 처리하시오.
- Pipe를 처리하시오

다섯 번째 구현 요구사항
1) redirection 확인
2) 리다이렉션과 파이프 테스트

본문내용

메인입니다.

int main() {
// 좀비 프로세스를 처리하기 위한 구조체
static struct sigaction act;

memset(&act, 0, sizeof(act));
act.sa_handler = zombie_handler;
act.sa_flags = SA_RESTART;
sigaction(SIGCHLD, &act, NULL);

signal(SIGQUIT, SIG_IGN); // SIGQUIT 시그널이 왔을 경우 무시
signal(SIGTSTP, SIG_IGN); // SIGSTP 시그널이 왔을 경우 무시
signal(SIGINT, SIG_IGN); // SIGINT 시그널이 왔을 경우 무시
signal(SIGTTOU, SIG_IGN); // SIGTTOU 시그널이 왔을 경우 무시

while(1) {
fputs(prompt, stdout);
fgets(cmd_line, BUFSIZ, stdin);
cmd_line[ strlen(cmd_line) -1] = ''; /* newline문자 null로 대치 */

execute_cmd_line(cmd_line);
}
}

키워드

유닉스,   ,   좀비,   핸들러
  • 가격2,000
  • 페이지수17페이지
  • 등록일2011.10.21
  • 저작시기2010.11
  • 파일형식압축파일(zip)
  • 자료번호#709399
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니