'Kernel'에 해당되는 글 1건

  1. 2009.03.13 커널 설정 및 생성


1. 커널 다운로드

리눅스 커널 소스코드 : http://kernel.org/


linux-2.6.26.3.tar.gz        20-Aug-2008 18:18   60M


.config : 커널 설정을 하게 되면 생성되는 결과 파일


2. 커널 업데이트

 2-1. xdownload kernel : 비정상적인 커널 다운로드
 2-2. flashdownload kernel : 커널 시스템 업데이트
 2-3. xdownload kernel : 정상적인 커널 다운로드
 2-4. 비정상적인 커널이 올라간 상태였으므로 정상적인 커널이 다운로드 되는 동시에 업데이트


3. 커널 이미지 생성

Shell 스크립트 파일 생성 (pathstart.sh)


#!/bin/bash

export PATH=/home/test/cdt_2007-07-20/bin:$PATH
export ARCH=arm
export CROSS_COMPILE=arm-linux-


PATH 설정이므로 자신의 경로에 맞게 넣어주도록 한다. ARCH라는 부분은 아키텍처를 arm용으로 하겠다고 선언하도록 하는 부분이다. 작성한 쉘 스크립트 파일을 실행하도록 한다.

Shell 스크립트 파일 실행


test@test-desktop:~$
source ./pathstart.sh


위와 같이 실행하면 ARM용으로 설정하게 된다.


4. 생성할 커널 설정

커널설정 초기화

test@test-desktop:~/linux-2.6.26.3$ make allnoconfig
 

커널설정 실행

test@test-desktop:~/linux-2.6.26.3$ make menuconfig
 

각종 config 목록 보기

test@test-desktop:~/linux-2.6.26.3$
ls arch/arm/configs


MainStone 기본설정 불러오기

test@test-desktop:~/linux-2.6.26.3$
 make mainstone_defconfig



시스템 타입 설정 - 체크사항
System Type ---> Arm System Type(arm id....) ---> PXA2xx/PXA3xx-based

장치 드라이버 설정 - 체크사항
Device drivers ---> Character Devices ---> Serial drivers ---> PXA serial port support + Console on PXA serial port

Intel 플레폼과의 차이점에 의한 설정 변경 - 설정해체
Kernel Features ---> Timer and CPU usage LEDs (설정해체) + CPU usage LED


munuconfig의 세부명령어
/ : 단어로 관련된 사항을 검색
? : 관련된 사항의 세부사항을 살펴본다.

설정이 완료되면 ARM용 환경변수를 설정하고 컴파일 하도록 한다.


test@test-desktop: export LD_LIBRARY_PATH=/home/test/cdt_2007-07-20/i686-pc-linux-gnu/arm-linux/lib:$LD_LIBRARY_PATH

test@test-desktop:~/linux-2.6.26.3$
make zImage


i386타입에서 작업을 한뒤 i686(ARM) 타입으로 작업을 하므로 처음에 쉘 스크립트에서는 LD_LIBRARY_PATH를 추가 하지 말고 컴파일하기 직전에 export로 추가하도록 한다. 환경변수 설정은 자신의 폴더에 맞게 경로 설정하여 오류가 생기지 않게 주의하도록 한다.


test@test-desktop:~/linux-2.6.26.3/arch/arm/boot$ ls
Image  Makefile  bootp  compressed  install.sh  zImage


컴파일이 완료 되면 위의 경로에 zImage 파일이 생성이 되었다면 정상적으로 컴파일 된 것이다.

Posted by 리트모스
: