10 likes | 362 Views
과제 3: 리눅스 커널 프로그래밍 ( 5 월 31 일까지 ). 중간 시험 문제 정답 풀이 교재 ( 리눅스 매니아를 위한 커널 프로그래밍 , 조유근 , 최종무 , 홍지만 저 , ㈜ 교학사 , 2002) 의 1,2,3,4 장 내용 숙독 교재 ( 리눅스 매니아를 위한 커널 프로그래밍 , 조유근 , 최종무 , 홍지만 저 , ㈜ 교학사 , 2002) 의 p70~74 구조체를 이용한 인자 전달 ( 실습 2) 체험
E N D
과제 3: 리눅스커널 프로그래밍 (5월 31일까지) • 중간 시험 문제 정답 풀이 • 교재 (리눅스 매니아를 위한 커널 프로그래밍, 조유근, 최종무, 홍지만 저, ㈜교학사, 2002)의 1,2,3,4장 내용 숙독 • 교재 (리눅스 매니아를 위한 커널 프로그래밍, 조유근, 최종무, 홍지만 저, ㈜교학사, 2002)의 p70~74 구조체를 이용한 인자 전달 (실습 2) 체험 • 교재 (리눅스 매니아를 위한 커널 프로그래밍, 조유근, 최종무, 홍지만 저, ㈜교학사, 2002)의 p75 연습문제 1과 2 풀이 (통합 소스) 제출 • Shell 구현 소스 파일 (예, myshell.c) 간단한 shell을 구현해 보자.shell은 사용자가 키보드 등의 입력 장치를 통해 입력한 특정 명령어나 프로그램을 수행할 수 있게 해주는 기본적인 인터페이스 역할을 하는 프로그램이다. Shell은 shell 자체적으로 제공하는 내부 명령어나 별도로 컴파일 되어 디스크에 존재하는 다른 프로그램들을 수행할 수 있게 해준다. 이를 위해서는 사용자 입력을 분석하는 부분이 필요하며 내부 명령어를 위한 코드와 프로그램을 수행시키기 위한 코드가 필요하고 일단 외부 프로그램이 실행될 경우 shell 은 외부 프로그램이 종료되기를 기다려야 한다. 또한 shell은 여러 프로그램 간에 입출력을 공유하게 해주는 pipe 기능을제공하여야 한다. • 시스템 호출 구현 소스 파일 (예, getstat.c) 텍스트에서 소개한 getstat 시스템 호출을 확장하여 현재 시스템에서 수행중인 태스크들의 정보를 출력하는 내부 명령어를 1. 에서 작성한 shell에 추가해 보자. 이 명령어의 인자로서 pid나 pgrp 또는 state 인자를 넘기면 해당하는 태스크들만의 정보를 출력하고 인자가 없을 경우는 모든 태스크의 정보를 출력하도록 한다. 제출 방법: Electronic version과 Printout version 모두 제출 • Electronic version: 지정 호스트 211.119.245.68 의디렉토리(~mysung/2004os/class?/자기학번)에 소스파일과 실행파일 복사 • Printout version: 편집 결과 및 프로그램의 소스와 실행 결과를 출력하여 제출 2000 운영체제