우분투에서 노트북 CPU 전압조절



우와 며칠을 삽질한건가
드디어 CPU 전압을 낮춰서 쓸 수 있게 되었다

http://sakuragis.egloos.com/3565899

주로 여기를 참고 했는데 아직 리눅스 지식이 얕아 그냥 따라만하다가 많이 헤매게 된것같다
다음에 또 삽질 안하고 혹시라도 위 페이지가 지워질 것을 대비해서 간단히 정리하보련다
내 노트북은 후지쯔 라이프북 6240 이고 팬티엄 1.6 소노마

아마도 이 방법은 커널에서 전압 관련된 부분을 컴파일 해서 다시 덮어씌우는 것인듯 하다



먼저~
컴파일을 하려니 당연히 커널 소스가 필요하다

sudo apt-get source linux-image-x.x.x-x-generic

버전은 계속 변하니까 x로 표시했다(링크 페이지에는 옛날 버전이어서 한참 삽질했다)
현재는(7.10) 아래 버전으로 받는다
나도 링크 페이지 내용처럼 /usr/src/ 폴더에 받았다

sudo apt-get source linux-image-2.6.22-14-generic

이렇게 하면 소스가 받아지고 자동으로 폴더가 생성이 된다

다음 파일을 아무데나 받는다
phc_feisty.tar.gz
터미널에서 다운 받은 폴더로 가서

sudo tar zxvf phc_feisty.tar.gz -C /usr/src/linux-source-x.x.x-x.x.x/arch/i386/kernel/cpu/cpufreq/

버전 조심하라는 의미에서 다시 x로 표시했다
내가 쓴 명령은 이거다

sudo tar zxvf phc_feisty.tar.gz -C /usr/src/linux-source-2.6.22-2.6.22/arch/i386/kernel/cpu/cpufreq/

전압을 변경하기 위해서는
speedstep-centrino.c 라는 파일을 수정해야한다. 얼핏 보기에도 전압관련된 놈처럼 보인다

sudo gedit /usr/src/linux-source-2.6.22-2.6.22/arch/i386/kernel/cpu/cpufreq/speedstep-centrino.c

그럼 창 하나가 뜨는데 거기서 전압 설정 부분을 고쳐줘야된다
자기 노트북에 맞는애를 찾아아 한다. 나는 아래와 같이 고쳤다

/* Intel Pentium M processor 730 / 1.60 GHz (Sonoma) */
static struct cpufreq_frequency_table sonoma_1596[] =
{
OPEX( 798, 133, 700, 988, 988, 988),
OPEX(1064, 133, 780, 1080, 1068, 1056),
OPEX(1197, 133, 828, 1172, 1132, 1124),
OPEX(1330, 133, 876, 1172, 1132, 1124),
OPEX(1463, 133, 924, 1264, 1196, 1192),
OPEX(1596, 133, 972, 1264, 1196, 1192),
{ .frequency = CPUFREQ_TABLE_END }
};

첫번째와 세번째 인자만 신경쓰면 된다(첫번째는 클럭, 세번째는 전압)
저장을 하고 빠져나온다

이제 슬슬 커널 컴파일을 준비한다
먼저 기존의 설정이 저장된 애를 복사한다

sudo cp /boot/config-x.x.x-x-generic /usr/src/linux-source-x.x.x-x.x.x/.config

나의 경우는
sudo cp /boot/config-2.6.22-14-generic /usr/src/linux-source-2.6.22-2.6.22/.config

그 다음
/usr/src/linux-source-2.6.22-2.6.22
여기로 가서 컴파일을 시작한다
총 4개의 컴파일 단계가 있는데 각각이 뭔지는 잘 모르겠다

sudo make oldconfig
sudo make prepare
sudo make scripts
sudo make M=./arch/i386/kernel/cpu/cpufreq

뭔가 물어보면 귀하신분 성질 건드리지 말고 Y 라고 쳐준다
에러없이 잘 됐으면 컴파일된 모듈을 복사한다

sudo cp arch/i386/kernel/cpu/cpufreq/speedstep-centrino.ko /lib/modules/2.6.22-14-generic/kernel/arch/i386/kernel/cpu/cpufreq

이제 완료다!!! 재부팅해주면 된다
제대로 됐는지 알고 싶다면 패널에 'CPU 클럭 스케일링 정보' 를 추가하고 터미널에서

sudo chmod +s /usr/bin/cpufreq-selector

라고 쳐준다.
원래 기본 설정되어있는 것은 단계수가 4,5 개 정도로 적은데
앞에서 설정한 만큼 단계수가 보인다면 제대로 된 것이다
그래도 의심이 가면 터미널에서 다음과 같이 입력해본다

cat /sys/devices/system/cpu/cpu0/cpufreq/op_points_table

설정한대로 정보가 나오면 제대로 된 것이고 파일을 못찾거나 입력한거와 다르면 문제가 있는 것이다



by umayloveme | 2007/11/03 16:17 | 트랙백 | 덧글(1)
트랙백 주소 : http://umayloveme.egloos.com/tb/950113
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Commented by 조제리 at 2008/02/19 11:43
좋은 글 감사합니다 ^^
아는 사이트에 스크랩 해갈게요 :) 링크는 물론 ^^

:         :

:

비공개 덧글

◀ 이전 페이지 다음 페이지 ▶


하이
by umayloveme
메모장
행복은 개꼬리
카테고리
전체

나에게
세상
자바

일기
사진
미분류
최근 등록된 덧글
우연히..읽게되..
by 공대생 at 09/16
저는 공감합니다. ..
by mamam at 02/23
'우리가 너는 이런..
by baltak at 02/13
문제의 본질을 전혀..
by 지나가다 at 02/13
신해철이 사교육에..
by 거시기 at 02/13
그런 뜻이 아니라..
by 그건 at 02/13
요즘 뭐하고 살아?
by FnWinter at 09/23
저 기준으로 보면 ..
by namsangboy at 09/07
에구에구, 스크롤..
by namsangboy at 09/07
고맙습니다. 잘 새..
by 안녕 at 04/03
메뉴릿
rss

skin by teatime