임베디드 소프트웨어 연습문제 풀이
- 최초 등록일
- 2010.02.20
- 최종 저작일
- 2009.09
- 36페이지/ 한컴오피스
- 가격 3,500원
소개글
임베디드 리눅스 소프트웨어 연습문제 풀이입니다.
코딩부터 캡춰까지 직접 수행했습니다.
내용은 목차와 같습니다.
타겟보드는 EMPOS-2를 이용하였습니다.
목차
● 연습문제 4장
1. 커널퓨징절차
2. make menuconfig 설정 목록 변경
3. CD-ROM 삽입 시 커널의 동선
● 추가 문제
4. diff와 patch 실습 및 설명
5. LINUX_LOGO.H 변경 하기
6. 커널이 올라온 후 프롬프트에 이름 표시하기
7. 커널의 makefile 분석
8. 쉘 프롬프트 까지의 부팅 절차
본문내용
1. 커널을 퓨징하는 절차를 순차적으로 나열하고 그에 대한 명령어와 설명을 적어보자.
가. 리눅스 커널 소스 구하기 및 압축 해제
리눅스 커널 소스는 인터넷을 통해 다운로드 받거나 EMPOS_CD에서 찾을 수 있다.
위의 웹 사이트에는 현재 Linux Kernel 2.4.37까지 업로드 되어 있다. 본 레포트에서는 tar로
압축되어 있는 파일을 사용한다.
다운로드가 완료되면 다음과 같이 tar 명령을 이용하여 압축을 해제한다.
# tar xvfz linux-2.4.19.tar.gz
- tar 명령에 대한 자세한 소개는 Report-1에 소개되어 있음.
tar 명령을 이용하여 압축을 해제하면 위의 [그림2]와 같이 압축 해제된 디렉토리를 확인할 수
있다.
나. ARM Patch 적용
위의 FTP 사이트에서 ARM Patch 파일을 다운로드 받았다면 다음과 같이 zcat 명령과 patch
명령을 이용하여 ARM Patch를 수행한다. Patch 파일은 퓨징 할 Kernel 디렉토리 내부에 있어야
한다.
zcat 명령
zcat 명령의 목적은 압축 파일을 표준 출력으로 확장하는 것이다. zcat 명령을 사용하여 사용자는
파일을 압축 해제하지 않은 상태로 압축된 파일을 펼치고 열람할 수 있다. zcat 명령은 확장된
파일의 이름을 바꾸지 않거나, .Z 확장자를 제거한다. zcat 명령은 확장된 출력을 표준 출력에
기록한다.
zcat 명령의 사용 형식은 다음과 같다.
# zcat [옵션] [파일명]
zcat의 옵션으로는 다음 두가지가 존재한다.
-n : 압축된 파일에서 압축된 파일 헤더를 생략한다.
-v : 현재 버전을 기록하고 옵션을 표준 오류로 컴파일한다.
zcat 파일의 종료 상태는 0과 >0 이 있으며, 0은 성공적으로 완료했음을, >0은 오류가 발생
했음을 의미한다. 오류가 발생 했을때는 다음과 같은 이벤트가 발생할 수 있다.
입력 파일이 compress 명령에 의해 생성되지 않았다.
입력 파일을 읽을 수 없거나 출력 파일을 기록할 수 없다.
파이프를 이용하여 patch 명령으로 Patch를 수행한다. 옵션인 -p1은 패치 파일이 같은 디렉토리
경로에 존재함을 의미한다.
※ patch 명령은 4번 문제에서 자세히 소개함.
patch를 수행하면 위와 같이 Patch가 되는 모습을 확인할 수 있다.
다. Xscale Patch 적용
위의 절차를 따라 ARM Patch를 수행했다면 다음은 Xscale CPU를 사용하기 위해 Xscale 코어
패치를 수행하여야 한다.
Patch 파일 또한 인터넷에서 다운로드 받을 수 있다.
위의 FTP 사이트에서 Xscale Patch 파일을 다운로드 받았다면 위의 ARM Patch를 했던 방식과
동일한 방식으로 Xscale Patch를 수행한다.
위의 명령을 수행하면 Xscale이 Patch 되는 화면을 확인할 수 있다.
라. EMPOS-2 보드 Patch 적용
참고 자료
없음