unix system programming
- 최초 등록일
- 2008.06.11
- 최종 저작일
- 2006.04
- 9페이지/ 한컴오피스
- 가격 1,000원
소개글
UNIX System programming과 Polymorphism (다형성)에 관해 조사한 내용의 보고서입니다.
목차
1. 「Polymorphism (다형성)」
2. 「UNIX System programming」
2.1 프로세스 개념의 복습
2.2 프로세스의 생성
2.2.1 fork 시스템 호출
2.3 exec을 이용하여 새 프로그램을 수행
2.4 exec과 fork를 함께 사용
2.5 상속된 자료와 파일 기술자
2.5.1 fork, 파일과 자료
2.5.2 exec과 개방된 파일
2.6 exit 시스템 호출로 프로세스 끝내기
2.7 프로세스 동기
2.7.1 wait 시스템 호출
2.7.2 특정 자식을 기다리기 : waitpid
2.8 좀비와 너무 이른 퇴장
2.9 smallsh : 명령 처리기
2.10 프로세스 속성
2.10.1 프로세스 식별번호
2.10.2 프로세스 그룹과 프로세스 그룹 식별번호
2.10.3 프로세스 그룹의 변경
2.10.4 세션과 세션 식별번호
2.10.5 환경
2.10.6 현재 작업 디렉토리
2.10.7 현재 루트 디렉토리
2.10.8 사용자 식별번호와 그룹 식별번호
2.10.9 파일 크기의 제한 : ulimit
2.10.10 프로세스의 우선 순위 : nice
본문내용
1. 「Polymorphism (다형성)」
C++은 다형(Polymorphism) -상속관계 내의 다른 클래스들의 객체들이 같은 멤버 함수 호출에 대해 다르게 반응하는 기능-을 가능하게 한다. 예를 들어, 만일 클래스 Rectangle이 클래스 Quadrilateral에서 파생되었다면, Rectangle 객체는 Quadrilateral 객체의 보다 특수한 버전이다. 클래스 Rectangle의 객체에도 적용될 수 있다. 다형은 가상 함수를 통해 구현된다. 기저 클래스 포인터(참조)를 통해서 가상 함수를 사용하는 요청이 되면, C++는 그 객체와 관련된 적절한 파생 클래스의 재정의 된 함수를 선택한다.
가상 함수와 다형을 사용해서, 프로그래머는 포괄적으로 다루고 실행시간의 상황에서 개별적 특수성이 다루어지게 할 수 있다. 프로그래머는 각 객체의 형에 대한 지식이 없는 때에라도 다양한 종류의 객체들이 자신들에게 적절한 행동을 하도록 할 수 있다.다형은 확장성을 증진시킨다. 다형적 행동을 호출하도록 작성된 소프트웨어는 메시지가 보내질 객체의 형에 무관하게 작성될 수 있다. 따라서, 기존의 메시지에 반응할 수 있는 새로운 객체의 형이 기본 시스템의 변경 없이 추가될 수 있다. 새로운 객체를 생성하는 고객 코드 외에는 프로그램이 다시 컴파일 될 필요가 없다. 추상적 클래스는 클래스 계층의 다양한 멤버를 위한 접속을 정의 한다. 추상적 클래스는 파생 클래스에서 정의될 순수 가상 함수를 포함한다. 다형을 통해서 계층 내의 모든 함수들이 이러한 같은 접속을 사용할 수 있다.
다형은 계층적 구조를 갖는 소프트웨어를 구현하는 데 특히 효과적이다. 예를 들어 운영체제에 있어서 각각의 물리적 장치들은 각각 상당히 다르게 동작할 수 있다. 그렇에도 불구하고, 장치로부터 읽거나 쓰는 명령은 어떤 공통성을 가질 수 있다. 장치 구동자 객체에게 보내진 쓰기 메시지는 어떤 장치 구동자가 특정형의 장치를 어떻게 조작하는가의 문맥에 따라서 특수하게 해석도리 필요가 있다.
참고 자료
없음