[UNIX] 리눅스 커널 만들기(시스템콜 추가)
- 최초 등록일
- 2016.11.09
- 최종 저작일
- 2012.03
- 12페이지/ 한컴오피스
- 가격 2,500원
목차
1. 개발환경
2. 프로젝트 설명
3. 팀원 역할
4. 고찰
5. 참고문헌
본문내용
시스템콜을 추가하기 위해서는 커널을 새로 컴파일 할 필요가 있다. 리눅스 운영체제의 핵심이라고 불리우는 ‘커널’은 부팅 및 시스템의 전반적인 운영을 책임지고 있다. 덧붙이면 우분투 등 리눅스 설치 시 자동으로 깔리게 되는 커널은 범용적 용도로서 수 만가지 다양한 기종의 컴퓨터에서 잘 돌아가게 하기위해 수많은 장치와 기능을 지원하도록 설계되어 있다. 그러므로 자신에게는 필요도 없고, 앞으로도 쓸 일도 없는 기능이 들어가 있을 수 있다. 그래서 커널 컴파일의 필요성이 생기게 된다. 필요 없는 기능은 빼어내고, 지금의 시스템콜 추가와 같이 보탤 것은 보태어 자신의 컴퓨터 시스템에 최적화된 커널을 만들 수 있다. 그러면 커널의 덩치도 줄고, 불필요한 메모리의 낭비가 줄고 부팅 시간이 단축되며, 시스템 속도도 빨라지는 등 다양한 효과가 발생된다.
<중 략>
커널 설정 초기화(make mrproper)- make mrproper 명령은 커널 소스를 원 상태로 초기화시킬 때 사용하는 명령으로, 이미 설정된 커널의 설정값을 모두 초기화 시키고 컴파일된 오브젝트(obejct, .ko 확장자를 가진 파일, 이를 커널에서는 모듈이라 한다)파일을 모두 제거하여 커널 상태를 원래의 소스 상태로 되돌려 놓는 초기화 명령) 즉, 기존에 설정되어 있던 의존성을 제거한다.
<중 략>
실제로 시스템 콜을 추가하고 커널을 컴파일 해 봄으로써 리눅스 시스템의 원리와 활용에 대해 더 심도 있게 공부 할 수 있는 계기가 되었다. 커널은 하드웨어와 셸 둘 사이에 통신을 할 수 있도록 도와주는 역할을 하는 것이고 모듈은 커널이 하드웨어를 인식할 수 있도록 도와주는 역할을 하는 것이며 커널과 모듈 이 둘이 실질적인 리눅스 시스템의 핵심이며 그 나머지 셸, 응용프로그램 등은 부가적인 것이다. 이렇게 커널의 전반적인 이해를 기반으로 시스템 콜 추가를 시도 하였다. 시스템 콜을 추가하는 부분은 크게 어렵지 않았으나 새롭게 추가한 시스템 콜을 사용 할 수 있도록 커널을 다시 컴파일 하는 과정에서 수많은 시행착오가 있었다.
참고 자료
숙신의 프로그래밍 이야기 http://btd86.tistory.com/86
취업스토리 http://cafe.naver.com/jobstory00/8318동영상
뽕다르의 현대생활백서2.0 http://techjun.com/504