블로그 일시 폐쇄

from 분류없음 2008/10/30 05:26
아무래도 내년 2월까지는 죽어도 시간이 안날 거 같아요. 헤헤

가끔 들러서 글을 읽어주시는 분들은 2월까지는 들어오셔도 더이상 글을 볼 수 없어요

우리모두 이 악 물고 현재를 견뎌 냅시다!! 히히
사용자 삽입 이미지

강원도 산길들

사용자 삽입 이미지
 

차이니즈봉봉클럽
심야에 잠 안오고 심심할 때면 97.3 메가헤르츠의 KBS 1AM 을 듣는데 책들을 소개해주는 프로가 있다.
아마 정용실의 문화포커스였던 거 같은데 거기서 밤에  배고파 죽겠는데
이 책에 나오는 중국요리를 하도 맛있게 설명을 해서 어떤 책이길래 이 밤에 나를 미치게 하냐 싶어
작정하고 산 만화책이다.  내 돈 주고 만화책을 사기는 생전 처음인 거 같은데 ㅋ
이거 읽고 여기에 나온 중화요리집 다 돌아다닐 걸 생각하면 책값이 아깝다는 생각은 들지 않는다.

몇백원짜리 신문 맛집코너에 나오면 한 면이면 충분할 양인데도 나름대로 중화요리에 대한
이런저런 정보들도 있고 만화가 또 만화 그 자체로 재밌는 요소가 있다.
물론 완소는 앞 내용에서 언급된 중화요리 집에 대한 정보를 위치와 교통편까지 뒤에 첨부해 주었다는 것!

뭔가 나에 대한 선물을 줘야겠다고 생각되는 때마다 한집씩 찾아가 볼 생각이다. ㅋ

아! 쟤들은 고등학교 바둑부 애들인데 ( 중학교인지 고등학교인지는 잘 모르겠다 @_@; 애들이 말을 안해줘서..)
바둑부라는 건 유령 동아리고 사실은 식도락 동아리다. 차이니즈봉봉클럽은 그 동아리 이름이고.
뭐 몇 십년 전통의 전국 각 초.중,고 등학교에 비밀지부를 두고 있다고 하는데..
애들 경제 수준에 먹어봐야 자장 밖에 더 먹겠어 ~_~;

사용자 삽입 이미지


짤방은 그 유명한 헥토파스칼킥. 이 유명한 짤방을 모르는 사람들이 많은데
여자 아이가 날라차기를 하면서 동시에 화면 밑 자막으로 태풍 중심기압에 대한 정보가 ( 985 헥토파스칼 )
지나가는 화면이 캡쳐되어 돌아다니면서 헥토파스칼킥이라는 이름이 붙었다.
이정도는 알고 있어야 '나 개그 좀 한다'고 말하고 다닐 수 있는 것이다.
자 모두들 정보화시대에 뒤쳐지지 말자구~

여기서 이야기 하고자 하는 문제는
리눅스를 운영체제로 사용하는 노트북에서 이어폰으로는 소리가 나오지만
정작 내장스피커로는 소리가 나오지 않는 경우이다.

이어폰을 꽂았는데도 내장스피커와 이어폰에서 동시에 소리가 나오는 경우와
아니면 아예 어떤 소리도 나오지 않는 경우는
짧은 검색을 통해 그 해결책을 쉽게 찾을 수 있지만
이 글에서 언급하고자 하는 문제는 그 해결책을 찾아내기가 쉽지 않다.
(찾고 포기하고 찾기를 길게는 2년 정도 한 거 같다. @_@;;)

이 문제는 Intel onboard HDA (High Definition Audio)에서 발생하는데
sound stack (각 output의 배열)을 제대로 찾지 못해 발생하는 문제라고 한다.

일반적으로

/etc/modprobe.d/alsa-base

의 가장 아랫 줄에

options snd-hda-intel model=3stack 이나 options snd-hda-intel model=6stack

를 추가함으로써 문제를 해결할 수 있었다. 하지만 HDA 사운드카드의 경우
그 종류에 따라 이 문제의 해결에 영향을 미치는 요소가 다양하기 때문에 해결이 쉽지 않다.

우선

cat /proc/asound/card0/codec#* | grep Codec  이나  aplay -l 을 통해서 카드나 칩의 종류를
파악한다.

ex)
Codec
Codec: Realtek ALC880
Codec: Generic 11c1 Si3054

그 다음 아래 첨부된 리스트에서 해당하는 부분을 참조한다.
위에 보인 예시를 이용해 보면 ALC880을 아래 목록에서 찾고

그 다음 자기 컴퓨터에 맞는 모델이름을 사용하는 것이다. 만약 LG 노트북일 경우
( 아래 lg가 있다. )

options snd-hda-intel model=lg

를 /etc/modprobe.d/alsa-base  가장 아랫 줄에 추가해 주면 된다.
만약 작동하지 않는다면 ALC880  아래의 다른 줄의 모델 이름들을 사용해 본다.

options snd-hda-intel model=uniwill
options snd-hda-intel model=fujitsu
options snd-hda-intel model=tcl

처럼 말이다. 물론 이 과정을 되풀이 하면서 사운드설정에서 음소거가 되어 있는지
확인해 볼 필요가 있다. 물론 리부팅도.

이 글의 출처는 우분투 포럼의
http://ubuntuforums.org/showthread.php?t=616845&highlight=ALC880 이다.

이것은 우분투닷컴의 어찌보면 정식발매 솔루션이겠네요
https://help.ubuntu.com/community/HdaIntelSoundHowto

Model name Description
---------- -----------
ALC880
3stack 3-jack in back and a headphone out
3stack-digout 3-jack in back, a HP out and a SPDIF out
5stack 5-jack in back, 2-jack in front
5stack-digout 5-jack in back, 2-jack in front, a SPDIF out
6stack 6-jack in back, 2-jack in front
6stack-digout 6-jack with a SPDIF out
w810 3-jack
z71v 3-jack (HP shared SPDIF)
asus 3-jack (ASUS Mobo)
asus-w1v ASUS W1V
asus-dig ASUS with SPDIF out
asus-dig2 ASUS with SPDIF out (using GPIO2)
uniwill 3-jack
fujitsu Fujitsu Laptops (Pi1536)
F1734 2-jack
lg LG laptop (m1 express dual)
lg-lw LG LW20/LW25 laptop
tcl TCL S700
clevo Clevo laptops (m520G, m665n)
test for testing/debugging purpose, almost all controls can be
adjusted. Appearing only when compiled with
$CONFIG_SND_DEBUG=y
auto auto-config reading BIOS (default)

ALC260
hp HP machines
hp-3013 HP machines (3013-variant)
fujitsu Fujitsu S7020
acer Acer TravelMate
will Will laptops (PB V7900)
replacer Replacer 672V
basic fixed pin assignment (old default model)
auto auto-config reading BIOS (default)

ALC262
fujitsu Fujitsu Laptop
hp-bpc HP xw4400/6400/8400/9400 laptops
hp-bpc-d7000 HP BPC D7000
benq Benq ED8
benq-t31 Benq T31
hippo Hippo (ATI) with jack detection, Sony UX-90s
hippo_1 Hippo (Benq) with jack detection
sony-assamd Sony ASSAMD
basic fixed pin assignment w/o SPDIF
auto auto-config reading BIOS (default)

ALC268
3stack 3-stack model
toshiba Toshiba A205
acer Acer laptops
auto auto-config reading BIOS (default)

ALC662
3stack-dig 3-stack (2-channel) with SPDIF
3stack-6ch 3-stack (6-channel)
3stack-6ch-dig 3-stack (6-channel) with SPDIF
6stack-dig 6-stack with SPDIF
lenovo-101e Lenovo laptop
auto auto-config reading BIOS (default)

ALC882/885
3stack-dig 3-jack with SPDIF I/O
6stack-dig 6-jack digital with SPDIF I/O
arima Arima W820Di1
targa Targa T8, MSI-1049 T8
asus-a7j ASUS A7J
asus-a7m ASUS A7M
macpro MacPro support
mbp3 Macbook Pro rev3
imac24 iMac 24'' with jack detection
w2jc ASUS W2JC
auto auto-config reading BIOS (default)

ALC883/888
3stack-dig 3-jack with SPDIF I/O
6stack-dig 6-jack digital with SPDIF I/O
3stack-6ch 3-jack 6-channel
3stack-6ch-dig 3-jack 6-channel with SPDIF I/O
6stack-dig-demo 6-jack digital for Intel demo board
acer Acer laptops (Travelmate 3012WTMi, Aspire 5600, etc)
acer-aspire Acer Aspire 9810
medion Medion Laptops
medion-md2 Medion MD2
targa-dig Targa/MSI
targa-2ch-dig Targs/MSI with 2-channel
laptop-eapd 3-jack with SPDIF I/O and EAPD (Clevo M540JE, M550JE)
lenovo-101e Lenovo 101E
lenovo-nb0763 Lenovo NB0763
lenovo-ms7195-dig Lenovo MS7195
haier-w66 Haier W66
6stack-hp HP machines with 6stack (Nettle boards)
3stack-hp HP machines with 3stack (Lucknow, Samba boards)
auto auto-config reading BIOS (default)

ALC861/660
3stack 3-jack
3stack-dig 3-jack with SPDIF I/O
6stack-dig 6-jack with SPDIF I/O
3stack-660 3-jack (for ALC660)
uniwill-m31 Uniwill M31 laptop
toshiba Toshiba laptop support
asus Asus laptop support
asus-laptop ASUS F2/F3 laptops
auto auto-config reading BIOS (default)

ALC861VD/660VD
3stack 3-jack
3stack-dig 3-jack with SPDIF OUT
6stack-dig 6-jack with SPDIF OUT
3stack-660 3-jack (for ALC660VD)
3stack-660-digout 3-jack with SPDIF OUT (for ALC660VD)
lenovo Lenovo 3000 C200
dallas Dallas laptops
hp HP TX1000
auto auto-config reading BIOS (default)

CMI9880
minimal 3-jack in back
min_fp 3-jack in back, 2-jack in front
full 6-jack in back, 2-jack in front
full_dig 6-jack in back, 2-jack in front, SPDIF I/O
allout 5-jack in back, 2-jack in front, SPDIF out
auto auto-config reading BIOS (default)

AD1882
3stack 3-stack mode (default)
6stack 6-stack mode

AD1884
N/A

AD1981
basic 3-jack (default)
hp HP nx6320
thinkpad Lenovo Thinkpad T60/X60/Z60
toshiba Toshiba U205

AD1983
N/A

AD1984
basic default configuration
thinkpad Lenovo Thinkpad T61/X61

AD1986A
6stack 6-jack, separate surrounds (default)
3stack 3-stack, shared surrounds
laptop 2-channel only (FSC V2060, Samsung M50)
laptop-eapd 2-channel with EAPD (Samsung R65, ASUS A6J)
laptop-automute 2-channel with EAPD and HP-automute (Lenovo N100)
ultra 2-channel with EAPD (Samsung Ultra tablet PC)

AD1988
6stack 6-jack
6stack-dig ditto with SPDIF
3stack 3-jack
3stack-dig ditto with SPDIF
laptop 3-jack with hp-jack automute
laptop-dig ditto with SPDIF
auto auto-config reading BIOS (default)

Conexant 5045
laptop Laptop config
test for testing/debugging purpose, almost all controls
can be adjusted. Appearing only when compiled with
$CONFIG_SND_DEBUG=y

Conexant 5047
laptop Basic Laptop config
laptop-hp Laptop config for some HP models (subdevice 30A5)
laptop-eapd Laptop config with EAPD support
test for testing/debugging purpose, almost all controls
can be adjusted. Appearing only when compiled with
$CONFIG_SND_DEBUG=y

STAC9200
ref Reference board
dell-d21 Dell (unknown)
dell-d22 Dell (unknown)
dell-d23 Dell (unknown)
dell-m21 Dell Inspiron 630m, Dell Inspiron 640m
dell-m22 Dell Latitude D620, Dell Latitude D820
dell-m23 Dell XPS M1710, Dell Precision M90
dell-m24 Dell Latitude 120L
dell-m25 Dell Inspiron E1505n
dell-m26 Dell Inspiron 1501
dell-m27 Dell Inspiron E1705/9400

STAC9205/9254
ref Reference board
dell-m42 Dell (unknown)
dell-m43 Dell Precision
dell-m44 Dell Inspiron

STAC9220/9221
ref Reference board
3stack D945 3stack
5stack D945 5stack + SPDIF
intel-mac-v1 Intel Mac Type 1
intel-mac-v2 Intel Mac Type 2
intel-mac-v3 Intel Mac Type 3
intel-mac-v4 Intel Mac Type 4
intel-mac-v5 Intel Mac Type 5
macmini Intel Mac Mini (equivalent with type 3)
macbook Intel Mac Book (eq. type 5)
macbook-pro-v1 Intel Mac Book Pro 1st generation (eq. type 3)
macbook-pro Intel Mac Book Pro 2nd generation (eq. type 3)
imac-intel Intel iMac (eq. type 2)
imac-intel-20 Intel iMac (newer version) (eq. type 3)
dell-d81 Dell (unknown)
dell-d82 Dell (unknown)
dell-m81 Dell (unknown)
dell-m82 Dell XPS M1210

STAC9202/9250/9251
ref Reference board, base config
m2-2 Some Gateway MX series laptops
m6 Some Gateway NX series laptops
pa6 Gateway NX860 series

STAC9227/9228/9229/927x
ref Reference board
3stack D965 3stack
5stack D965 5stack + SPDIF
dell-3stack Dell Dimension E520

STAC9872
vaio Setup for VAIO FE550G/SZ110
vaio-ar Setup for VAIO AR

우산

from 숨막히는 아름다움 2008/05/02 00:49
사용자 삽입 이미지



거지

from 숨막히는 아름다움 2008/04/25 21:02
사용자 삽입 이미지



그래...?


나도 충고 하나만 할까?


무슨 짓을 해도 바뀌는 건 없다...
라는 충고에도 멈추지 않는 사람들이 있었기에

세상은 그나마 여기까지 오게 된거야.




생각하는 대로 살지 않으면
사는 대로 생각하게 된다.



요즘은 단행본 보다는 웹툰->인기->단행본 의 트랜드인거 같다. 트레이스도 단행본 나왔던데 아주 퀄리티가 그냥.
어찌되었든 내가 관심있게 봤던 에피소드 거지. 아 빨리 스타워즈 시리즈 봐야 되는데 ㅜ
2007년 1월 25일 목요일 구름 적당함


사용자 삽입 이미지
-  '아직도 사진 속에서 저 깊은 피사체를 볼 때마다 가슴이 두근거린다. 그때 미처 깨닫지 못한
아름다움 속에서 한 걸음 한 걸음을 걱정하던 내가 부럽다. '

 


  어젯 밤에 야영을 했던 북평초등학교에는 당직실이 있었고 불도 켜져 있었다. 허락을 받을까 말까 무진장 고민하다 결국은 배낭이 무거워서 && 괜히 늦은 밤 귀찮게 해드리고 싶지 않아서 학교 구석에 잘 짱박혀 ( 어떻게 이보다 더 리얼한 묘사가 있을 수 있단 말인가 ) 텐트를 쳤다.
  밥을 해먹고 일기 쓰고 막 자려고 침낭을 펴는데, 아니 이 당직실에 계셔야 될 선생님이 따님과 함께 마실 나가셨다가 돌아오시는 길에 내 텐트를 발견한 듯한 발소리가 들리는 것이 아닌가!!! 안절부절.... 가까워지는 발걸음에 앉아서 당하느니 당당히 맞서겠다는 (응?) 굳은 각오로 이너텐트를 열고 변명을 하는데 오히려 추운데 괜찮겠냐고 침낭은 있냐고 걱정까지 해주시는 것이 아닌가. 아..아직 대한민국은 아름다운 곳이다. ㅜㅡ
  당직선생님이 돌아가시고 남은 일들을 처리하고는 자려고 침낭에 눕는데 또 발소리가 들려왔다!. 숨죽인 채 귀를 귀울여 위급상황에 대비했다.  한 명은 체중 25kg에 여자. 신발이 끌리는 소리로 추측해 보건대 샌들에 원피스. 한 명은 70kg 정도의 호리호리한 체격에 운동화! ( 평소에는 마을 입구 같은데 텐트 쳐 놓고 이런 놀이하면서 제발 그냥 지나가길 빌고 있다. ~_~;) 이번에는 그 선생님이 따님을 데리고서 따뜻한 녹차를 담은 물통을 가지고 나타나셨다. 물통은 가지고 가라고 하시길래 괜히 미안한 마음에 사양을 했지만 여행에 다 필요한 거라고 챙겨 주시길래 챙겨 넣었다. -_-v 득템. 그 녹차는 아침에 땡땡 얼기 일보직전 숭늉을 끓이는데 쓰였지만 너무나 고마운 분이 아니신가.
 아침 일찍 떠나는 길에 당직실 앞에 감사의 쪽지를 남기면서 부디 그 따님이 건강하게 자라나기를 빌어드렸다. 분명 그런 아버지 밑에서 자라는 딸은 내 걱정이 없어도 건강하고 멋진 사람이 되겠지.

  백봉령을 넘고 나서는 날씨가 더 추워져서 아침에 출발하기 전까지가 참 힘들다. 일어나려고 하면 침낭부터 차가워서 더 돌돌 말아 구르고 싶고, 어떻게 겨우겨우 일어나 밥을 먹고 텐트를 걷을라치면 이너텐트 외부와 폴대들 사이에 붙은 얼음을 때어 내는게 또 일이다. 이렇게 저렇게 꼼지락거리다 보면 어느새 일출. 내일 부터는 서둘러야 겠다. 날씨는 점점 더 추워질테니 무작정 퍼질 수 만은 없지. 어떻게든 출발하자. 그리고 걷다보면 언젠가는 끝나겠지.



사용자 삽입 이미지

- 정선을 나와서. 기찻길. 그냥 동굴이 아니라 잘 보면 구멍이 숭숭 뚫려 있다. 뭔가 은밀한 장소.


사용자 삽입 이미지

- 여기는 강 옆 도로였는데 수면과 차이가 상당했는데도 침수가 됐다는 걸 보면 우리 루사씨와
매미님이 쌔긴 쌨나 보다. ( 침수높이가 300m,  ㄷ ㄷ ㄷ )




사용자 삽입 이미지

- '떼돈을 번다의 어원' ㅋ


사용자 삽입 이미지
 

-  " 카메라 딜레이샷 최장 딜레이는 10초. 사진 한장을 위해 난 100m를 10초에 주파한다."


사용자 삽입 이미지
 

- " 비행기재 터널 입구.  이 사진의 왼쪽으로는 소나무재선충 방지를 위한 벌목이 행해지고 있었다.
여기까지 오는 길 곳곳에서 벌목작업이 진행 중이었는데 생각보다 규모가 엄청나다. 사실 가끔 뉴스
로 이슈화될 때 말고는 이런 작업이 벌어지고 있는지도 모르고 있었는데 소리없이 뭔가 체계적이고
계획적으로 재선충 방지대책이 시행 중인 거 같다. 이래저래 많이 까이는 정부지만 까이는 이면 어딘
가에서 움직이는 사람들도 내가 보고 생각하는 것 정도는 할 수 있을테니 그 사람들을 비난할 수
만은 없다. 또 조직에 속한 이상 시스템 상의 문제가 개인의 무능함으로 비춰질 수도 있는거니까.



사용자 삽입 이미지

- 뭔가 사기당하는 기분을 지울 수 없지만 '정상' 이라는 말에 또 한번 스스로 몰핀을 놓는다.



# 일일노트

@ 나전 북평초등학교
- 당직실 당직선생님이 녹차와 물통을 주심.

@ 반점재, 설치재

@ 정선
- 부모님과 홍규에 전화
- 청옥산. 고원 600마지기 이야기
- 사람들이 나에게 길을 많이 물어옴 ;;

@ 미탄 초등학교
- 쓰레기 매립지 선정에 대한 주민 반대 현수막들 걸려 있음.




-------------------------------------------------

총 걸은 시간 : 08:00 ~ 18:00 (약 32.5Km)
누적거리 : 260.3 Km 

사용여비 : 생수1 + 김1(12개) + 빵1 + 사이다1 + 빵3 + 부탄가스1 + 라면2 + 떡 1
               + A3 건전지1 + 휴지1 + 과자2 = 41,000 + 5,550 + 2,800 = 12,450원
누적여비 : 81,510원




pxa270tku ramdisk booting

from 라이눅스 2008/04/07 01:36
hibus 사의 xhyper270tku를 ramdisk로 부팅하는 방법을 알아보자


우선 bootp와 tftp 기본 설정이 되어 있다는 가정 하에서 rootfs를 이용한 파일시스템이 아닌
ramdisk 를 이용한 파일시스템을 사용하기 위해서는 커널 컴파일을 다시 해야 한다. ~_~;;
뭐 이미 ramdisk 관련 옵션을 활성화 시켰다면 문제는 쉬워질 수 있다. 그렇다 쉬워질 수도 있다.
자 그럼 세세한 부분으로 진행하기에 앞서 기본 베이스에 대해 간략한 복습을 선행해 보자.
일단 pxa270tku 의 경우 SDRAM 128M, flashROM 32M 의 기본 리소스를 가지고 있다. 부팅 시
이 flashROM에 write 해 놨던 걸 boot loader가 주어진 메모리 멥 구성에 알맞게 SDRAM 으로
kernel이나, rootfs, ramdisk 등등을 다운로드하는 하는 것이다. 여기서 체크!
오늘 우리가 뽀개려고 하는 ramdisk.
ramdisk는 말 그대로 ram을 disk처럼 쓰겠다는 것이다. 원래 주메모리인 SDRAM은 우리가 일반 디스크
를 사용하는 방법과는 약간 다른 명령어를 써서 접근해야 하는데 이 SDRAM의 일정 부분을 mount 해서
일반디스크와 같이 사용하겠다는 것이다. 당연히 disk 보다 SDRAM에 대한 접근과 처리가 빠르므로 우리가
의도한 작업들을 보다 빨리 처리할 수 있게 된다는 이야기다. 자 잡설은 여기까지

커널컴파일 시

'make xhyper270tku_defconfig' 를 통해 우리가 타켓으로 하는 270tku 보드에 기본적으로 필요한
옵션들을 쉽게 설정할 수 있다. 이렇게 베이스를 깔아 놓고

'make menuconfig'
로 들어가서 우선 'block device' . 여기서 아래 그림과 같이 옵션을 활성화 시켜 준다. ramdisk 용량은
물론 만들고자 하는 ramdisk 이미지를 고려해야 한다.

사용자 삽입 이미지


주의!!! 하지만, 한가지 주의해야 하는데 SDRAM 이 아닌 flashROM의 경우 ramdisk 영역으로 할당된 부분이
3M인 거 같다. 이거 자세한 건 메뉴얼을 좀 봐야 하겠지만, 나의 경우는 그러했다. 그래서 나중에
ramdisk 를 만들고 gzip 으로 압축할 때 이 크기를 고려해야 한다. 뭐 flashROM에 안쓰고 SDRAM
에서만 일회용으로 돌릴거라면 크게 문제는 없다. 만약 이렇게 돌리고 싶다면 boot loader에서 ramdisk
를 'tftp ramdisk_img ramdisk'로 SDRAM에 올리고 'load kernel'을 해서 flashROM의 kernel
이미지를 다운로드하고 boot 명령을 입력해 주면 재부팅없이 부팅이 진행된다.

이렇게 옵션을 활성화했으면 (모듈이 아니라 포함시켜야 한다. 그래야 initrd 옵션이 나온다.)
이젠 kernel command 를 수정해야 한다. 메인메뉴의 두 번째

'General Setup'


사용자 삽입 이미지

맨 끝에 내려가면 설정을 바꿀 수 있는데 기본 값은

'console=ttyS0,115000 console=tty0 mem=128M root=1F02 rw'

뭐 이런 식이다. 여기서 신경써야 할 부분은 root 부분인데 root filesystem이 있는 장소를 가르키도록 설정해야 한다. 1F02이란 값은 MTD에 의해서 (여기에 관해서는 주제가 다르므로 따로 언급하지 않겠다. ) 나뉘어진 SDRAM 영역들 중 3 번째 시작주소를 지시하는 거 같다.(00,01,02) 램디스크 ( 더 자세히는 initrd 옵션) 옵션 설정없이 기본 설정으로 커널컴파일하면 SDRAM의 구조가 bootloader , kernel, rootfs 이런 식으로 구성되어 진다. 따라서 일반적인 경우 1F02이란 rootfs 의 시작주소를 가르키므로 정상적인 설정이라 할 수 있다. 하지만 우리는 ramdisk를 사용하기 위해 옵션 설정을 했기 때문에 (더 자세히는 initrd) 다시 컴파일하면 SDRAM 구조가 bootloader, kernel, initrd, user 이런 식으로 바뀌게 된다. ( initrd = initial ram disk. 참고로 initrd 옵션이 켜지면 rootfs 대신 initrd, user 영역이 생긴다.  ) - 그렇다면 당연히 'root=1F02' 값을 수정해 주어야 하는 것이다. 만약 이 값을 수정해 주지 않으면 부팅 과정 중 기껏 ram disk를 마운트 했으면서 다시 rootfs주소에 접근해 또 파일시스템을 마운트하려고 한다. 이 경우 파일시스템 마운트 에러가 발생한다. 자세한 에러 메시지는 미처 캡처하지 못했다. -
( 이 부분에서 삽질을 좀 한 사람이라면 모순을 발견할 수 있을 것이다. ~_~;; initrd 를 포함시켰을 때 SDRAM의 구조가 bootloader, kernel, initrd, user 라면 root=1F02 그냥 써도 initrd를 읽어야 하지 않느냐라고 생각할 수 있는데... 그러게나; 미처 이것저것 테스트해 볼 시간이 없어서 확실하게 답을 해주지 못하겠다. 이런 무책임한 ㅜ. 이 문단은 수정해야 한다.  )


아무튼 이 'root= ' 값을 ramdisk에 맡게 수정해 주어야 하는데 간단하게

root=/dev/ram0

라고 수정해 주면 된다. 뒤애 숫자 제로다. ( 말이 쉽지 이거 몰라 몇시간을 삽질 했는지 )
좋다. 수정했다고 하자. 만약 여기까지 하고 컴파일 후 부팅을 하다면


Warning: unable to open an initial console.
Kernel panic - not syncing: No init found. Try passing init= option to kernel.


이와 같은 에러메시지를 볼 수 있다. 참. 먹고 살긴 힘들다. -_-
대충 때려 맞춰보면 init 명령을 찾을 수 없다는 말인데 일반 데탑의 경우는 init=/sbin/init 이런 식으로
해결 가능하다고 한다. ( 리눅스에서 init는 pid 1번으로 모든 프로세스의 부모가 된다. )
하지만 나의 경우 이렇게는 안됐었고, "root=/dev/ram0"만으로는 뭔가 부족하다는 생각에 약간 추론과 검색을
통해 부가옵션을 알아냈다.
원래 데스크탑 리눅스 부트로더 LILO의 경우 램디스크로 부팅시 initrd=ramdisk_img 이런 식으로
램디스크 이미지를 지정해 주는데 지금과 같은 경우 SDRAM에 올라가 있는 상태이므로 주소와 offset을 지정해 주어야 한다.


사용자 삽입 이미지


나의 경우는 bootloader에서 ramdisk를 SDRAM에 fusing할 때 ( ' tftp ramdisk_img ramdisk ')
 그 쓰기 시작하는 주소가 0xa1000000 이었다. 그리고 쓰는 용량은 3017611 byte. 그래서
initrd=0xa1000000,3017511 과 같이 입력해 주었다. 자 그럼 최종적인 kernel command 를 살펴보자


" console=ttyS0,115000 console=tty0 mem=128M root=/dev/ram0 rw initrd=0xa1000000,3017511 keepinitrd "

사용자 삽입 이미지

keepinitrd 는 나도 잘 모르겠고, 시간 관계상 이걸 빼놓고 테스트 해보지 못했다. 그리고 kernel command를 적을 때 쉼표로 연결되는 부분에는 공백이 포함되서는 안된다. 쉼표 다음이나 이전에 공백이 포함되면 에러가 발생한다고 한다.

대충 이렇다. 그렇다 여기까지가 키트에 동봉된 메뉴얼에서 빠져있는 내용이다. 자 그럼 행운을 빈다.



제가 이 테스트에 사용한 램디스크이미지는
hybus.co.kr -> 자료실 -> BULVERDE -> Xhyper270A ramdisk
에 올라와 있는 10M 짜리입니다. 참고하세요~




사용자 삽입 이미지

사용자 삽입 이미지

사용자 삽입 이미지



아... 이 얼마나 찾아 헤매었던 게임이란 말인가.... ㅜㅡ(뚝..뚝)
초등학교 5학년 때 이후 무려 12년이나 걸렸다.

컴퓨터학원을 다니면서 5.25 인치 디스켓에 카피하고 카피해서 진짜 학교에서 쌓이는 모든 스트레스를
이 게임으로 풀었다고 해도 과언이 아니다. 무려 초등학교 5학년이!!!
친구 걸 용의 비늘의 촉감이 느껴지던 무려 5.25 인치 HDD 디스켓에 곱게 곱게 복사해서
라벨도 예쁜 걸로 각을 맞춰서 붙여 놓고는 방구차라고 제목을 적어 놓았더랬다.
하지만, 시련은 너무나 급작스럽게 찾아왔지.  그 날도 여전히 친구들과 386 컴퓨터에 5.25 인치 디스켓을 꽂고는
미친듯이 게임을 하고 있는데 원장선생님이 갑자기 다가 오시더니
가운데 그림처럼 수영복 입은 여자들 나왔다고
가위로 디스켓을 싸그리 다 잘라 버리시는게 아닌가!!!!!
"난 선정적인 건 용서 못해" <- 이 말씀 아직도 생생하다.
그 때는 원장선생님의 기세에 눌려 미처 한 장 빼돌릴 생각도 하지 못했었다.
솔직히 원장선생님이 너무 한다고 생각했었다. 그 때는 저런 그림 관심도 없었고
저 화면에서 빨리 게임 리스타트하고 싶어서 주야장천 스페이스바를 누르고 있었으니까.

정말 그 후로 이 게임 다시 해보고 싶어서 안해 본 짓이 없는데
결정적으로 게임 제목을 몰라서 지금까지 그리고만 있었다. -_-;;
그때는 영어 이름 그런 거 잘 모르니까 방구차라고만 부르고 있었는데
나중에 인터넷으로 찾아보니 이상한 게임만 나오는게 아닌가
주위 친구들도 그 날 그 자리에서 모두 디스켓이 잘림을 당했기 때문에
도저히 알아낼 재간이 없었다. 그 때는 인터넷이란 것도 생소했고 게임을 얻을 수 있는 방법이라곤
디스켓 투 디스켓이 전부였다. 바이러스 좀 많이 먹었지 ㅋ

제목을 모르니 인터넷 시대에 들어서도 찾기는 모래사장 바늘 찾기.
수백개가 넘은 에뮬을 전부 뒤져야 되는 작업에 투자할 만큼의 근성은 없었기에
오늘에 이르렀다.


아... 아무튼 뭔가 12년 묵은 소원을 푼 기분이다. 너무 즐겁다. ㅜㅡ
정말 내 인생에서 손에 꼽을 만큼 즐거운 날이다.

한 번 해봐요. MAME 롬으로 돌아다니니까. MAME 에뮬깔고 롬 받아서 실행하면 돼. ㅋ
아 행복해

제5회 IT-Festival

from 일개단편 2008/03/12 03:27
사용자 삽입 이미지


행사 끝나기 한참 전인데 이 때는 아직 무한루프에 빠지지 않았던 때였다. ㅜㅡ
도대체 몇십번을 똑같은 내용으로 발표한건지;;

이제 이거 상품처리만 하면 겨우 자유롭게 된다. ~_~;
지난 학기 연합세미나 준비 발표에 아페 선발에서부터 준비, 그 외에 떠들고 다니기 무안한
많은 일들로 골치 아팠었는데, 이제야 공부만 할 수 있게 된 거 같다. 
기쁨이란게 언제부턴가 당면한 당시에는 절반 정도 차 올랐다가
나중에 시간이 지나서 그 때의 내가 삼자처럼 느껴질 때 쯤 되면 잠자다가 웃음 짓고 길가다가 실실 웃게
만들면서 완벽하게 다가오는 것 같다.
아... 이제 다른 거 신경 좀 끄고 내 앞길이나 챙겨야지.
군대 있을 때 군인다운 완벽한 군인, 시장에 있을 때 완벽한 시장 노동자,
여행할 때 완벽한 여행자이고 싶었던 것처럼 이젠 진짜 공부하는 완벽한 학생이고 싶다. ㅜㅡ


이제 난 또 한번 자유롭게 되었다.