'kernel'에 해당되는 글 7건
- 2009.09.27 커널 업뎃(2.6.31) 후 글픽기능 향상.
- 2008.03.11 ctags 설정 4
- 2007.04.22 본체 전원키로 시스템 off 시키기 4
- 2007.04.06 운영체제 없이 화면에 A를 찍어보아요... 6
- 2007.02.12 USB 스토리지 마운트 하기(SD,MMC카드,USB메모리) 6
커널 업뎃(2.6.31) 후 글픽기능 향상.
Linux/내부설정 2009. 9. 27. 14:09
그냥 잠수 블로그로 남겨두느니 뻘글이라도 쓰는게 나을거 같어서 걍 쓰빈다..
이번에 커널 2.6.31로 업뎃한후로 부터, 그래픽 카드 기능이 꽤 많이 향상된거 같은 느낌이 들어요
1 일단 뭐 어떻게 바꿨는진 모르겠지만 메모리 점유율이 상당히 많이 줄었습니다..
처음 부팅했을때는 옛날에 데탑에 리눅스 깔아 쓰는거 처러 100mb 도 안나옴 ㅋㅋ
2 xf86-video-intel-legacy 드라이버는 더이상 지원이 안되는거 같습니다.. 이거 깔면 저인경우 아예 X가 안뜨던..
(기냥 xf86-video-intel 깔아야....)
3 glxgears 하면 프레임수는 얼마 안나옵니다
(개인적으로 glxgears못 믿겠어요! - fps 차이는 3배라도 성능차는 체감 못함) 한 600프레임 가까이 나오네요
4 리눅이에서 3D겜 지원이 그나마 좀더 나아 보이는거 같습니다 몇몇 안돌아가는게 있었는데 잘 돌아가는듯..
5 mplayer로 1280x720급 HD(?) 동영상이 CPU가 저번보다냐는 상당히 적게 먹는거 같은 느낌이 듭니다..
이제는 XV로 재생해도 잘 돌아가요 ㅋㅋ(근데 이상하게 스샷이 찍히네여? 가속이 안되는건가..??)
기분상인진 몰라도, 좀더 빨라진거 같은 느낌도 들고...
6 xcompmgr과 그 검은 그림자 and 화면 짤리기 스킬 시전이 이제 멈추게 되었습니다 ㅋㅋ 플빡 문제가 아니라,
그래픽 카드 문제였군여 이것도,,(이거 해결된게 젤 맘에 듬,,)
7 3ddek는 여전이 작동안함...
8 UXA모드?(xorg.conf) 이거 최신 글픽카드(?)에서 좋다길래 함 해봤는데.. 되긴되는데 체감 변화는 제로
9 spring-ba에서 "loading ruarules" 에서 프로그램이 멈춰버리네여 그렇다고 이 옵션 끄자니 지형이 색깔이 안나오는;
그래서 걍 게임은 접었음;;
이제야 슬슬 "X3100 글픽카드" 도 리눅스에서 쓸만해지는 건가요 아... 드디어,..
이번에 커널 2.6.31로 업뎃한후로 부터, 그래픽 카드 기능이 꽤 많이 향상된거 같은 느낌이 들어요
1 일단 뭐 어떻게 바꿨는진 모르겠지만 메모리 점유율이 상당히 많이 줄었습니다..
처음 부팅했을때는 옛날에 데탑에 리눅스 깔아 쓰는거 처러 100mb 도 안나옴 ㅋㅋ
2 xf86-video-intel-legacy 드라이버는 더이상 지원이 안되는거 같습니다.. 이거 깔면 저인경우 아예 X가 안뜨던..
(기냥 xf86-video-intel 깔아야....)
3 glxgears 하면 프레임수는 얼마 안나옵니다
(개인적으로 glxgears못 믿겠어요! - fps 차이는 3배라도 성능차는 체감 못함) 한 600프레임 가까이 나오네요
4 리눅이에서 3D겜 지원이 그나마 좀더 나아 보이는거 같습니다 몇몇 안돌아가는게 있었는데 잘 돌아가는듯..
5 mplayer로 1280x720급 HD(?) 동영상이 CPU가 저번보다냐는 상당히 적게 먹는거 같은 느낌이 듭니다..
이제는 XV로 재생해도 잘 돌아가요 ㅋㅋ(근데 이상하게 스샷이 찍히네여? 가속이 안되는건가..??)
기분상인진 몰라도, 좀더 빨라진거 같은 느낌도 들고...
6 xcompmgr과 그 검은 그림자 and 화면 짤리기 스킬 시전이 이제 멈추게 되었습니다 ㅋㅋ 플빡 문제가 아니라,
그래픽 카드 문제였군여 이것도,,(이거 해결된게 젤 맘에 듬,,)
7 3ddek는 여전이 작동안함...
8 UXA모드?(xorg.conf) 이거 최신 글픽카드(?)에서 좋다길래 함 해봤는데.. 되긴되는데 체감 변화는 제로
9 spring-ba에서 "loading ruarules" 에서 프로그램이 멈춰버리네여 그렇다고 이 옵션 끄자니 지형이 색깔이 안나오는;
그래서 걍 게임은 접었음;;
이제야 슬슬 "X3100 글픽카드" 도 리눅스에서 쓸만해지는 건가요 아... 드디어,..
'Linux > 내부설정' 카테고리의 다른 글
[시간알람] 시간.. 시간이 문제로다. (15) | 2009.09.27 |
---|---|
자동 마운트 설정 (2) | 2009.09.27 |
자신의 의지되로 안되면 환경을 바꾸자 (6) | 2009.09.04 |
모..몰라 써버려! Wicd (7) | 2009.08.15 |
오픈오피스 처음이라 좀 불편 (5) | 2009.06.19 |
ctags 설정
Programming/Kernel 2008. 3. 11. 23:23
<어라 새로운 플긴이네요...... 몰랐네....... 이거함 적용 ㅋ>
리눅스 커널 프로그래밍이란 책을 보고 있습니다
커널책중에 이게 젤 만만해 보이더군요 ( 쉽다는 말이 아니라 그중에서............)
뭐 암튼.;; 근데 앞부분에 ctags를 설정하는 부분이 있길래(csope,tlist는 사용하지만 이건 처음) 122 page..........
따라서 해봤는데 제대로 안되네여..
일단 커널소스있는데서
ctags -R
을 한뒤에 검색...
일단 tags 가 있는데서
vim -t task_struct
하면 잘되는데 그안(vim)에서
:ta mm_struct 하면 안되는겨 -_- 그래서 구글도 찾아보고 하니까 답이 나오네...
~/.vimrc에다가
set tags=./tags,tag파일이있는작업디렉토리/tags,.............. "여기 set tags를 아예 안적으면 ctags가 제대로 작동 X
라는 식으로 tags파일을 "절대경로" 로 정해줘야 하네요.. 직접 저 태그파일의 경로를 말이에요..
그러니까 control + ] 도 잘 동작하네요 ㅋ
<대충 요약> 자세한건 :help tags (이겟죠뭐)
control + ] => 현제 커서위치에 해당하는 자료구조로 이동
control + t => 좀전의 위치로 이동
:ta XXX => tag파일에서 XXX 검색
:ta /XXX => tag파일에서 XXX 포함하는것도 검색
:tj XXX => 2개이상이면 ls처럼 list 출력
:tn,:tp => (tag)next,prev
tags => History list
아나 설정파일 같은거 할때 책에 이런거좀 적어주지 칫.,. 데뱡이나 펫호라아님 무시하는 건가효??
우리 아치는 머셈??
내가 만드는 호좁한 기껏해야 천줄안팍인 프로그램은 이딴거 별 필요 없었는데....... 확실히 커널크기가 크니까
이런것도 필요한듯하네요
음......글구 스터디할분이랑 같이 수요일날부터 하기로 했는데 같이할님이랑 못만나겠네요......
일단 혼자서라도 해야...............
.......................학과 공부 대충하고 이거 해도 되려나........
덧> tags파일이 자주 수정된다면 걍 crontab에 등록시켜 버려도 될거 같다 알아서 갱신하게 ㅋ
학교땜에 바빠서 제대로 건들일수가 없네여 ㅜㅜ
'Programming > Kernel' 카테고리의 다른 글
리눅스와 윈도우의 fat 파일쓰기 차이??? (8) | 2008.06.27 |
---|---|
확실히 다르잖아!! (4) | 2008.04.15 |
본체 전원키로 시스템 off 시키기 (4) | 2007.04.22 |
운영체제 없이 화면에 A를 찍어보아요... (6) | 2007.04.06 |
KernelProgramming-printk (5) | 2006.07.24 |
본체 전원키로 시스템 off 시키기
Programming/Kernel 2007. 4. 22. 11:22
원래 내가 쓰고 있는 리눅스에서는 전원버튼 눌르는거만으로는 시스템이 안꺼졌다 ...;
사실 별 필요 없는 기능 (.............) 이기때문에..
(왜냐햐면 단축키로 컴퓨터를 끄는게 더 빠르기 때문..
control+window_key+alt+delete라는 극악(?)의 조합으로 종료 시킴 -_- )
뭐 모르고 리눅스를 들어오는 가족들한테는 좀 도움이 될까.. (걍 전원버튼 누르면 꺼져여~ 하면 되니..)
뭐 암튼간에 커널에서 저어어 부분을 모듈 체크 하고 rc.conf에서 모듈을 잘 올려주면 문제없이 잘 작동했다
꼭 모듈로 올려야 하는것 같다 커널자체에 넣어버리면 동작이 안되네...
그리고
"여기여"
를 보고 파일을 수정(추가) 해주면 된다
원래 아치 리눅스 배포판에서는 아마 기본적으로 모듈올려주고 할거 같으니까
아마 저 링크타고 수정만 좀 해주면 될거 같다
데비안같은경우에는 저럴필요도 없고 그냥 패키지 설치하면 된다고 하는데 아치도 그냥
간단하지만 패키지하나 만들어 주면 좋겠다 (귀찮으니까............)
'Programming > Kernel' 카테고리의 다른 글
확실히 다르잖아!! (4) | 2008.04.15 |
---|---|
ctags 설정 (4) | 2008.03.11 |
운영체제 없이 화면에 A를 찍어보아요... (6) | 2007.04.06 |
KernelProgramming-printk (5) | 2006.07.24 |
Kernel Panic! (2) | 2006.07.21 |
운영체제 없이 화면에 A를 찍어보아요...
Programming/Kernel 2007. 4. 6. 14:14
말하기 앞서서
일단 세그먼트/오프셋이 뭔지 알고 있다고 가정하고 내용을 작성하였습니다.
그것만 알고 계시다면 다음 이야기를 읽는데는 지장이 없을듯하네요
뭐 틀린내용이 있을수도 있으니 100%다 믿진 마시고요;
혹시 틀린게 있으면 지적 부탁합니다
덧> vmware,nasm,vi 정도는 다 아신다고 가정
0 preview
[org 0x07C0]:처음 시작 주소를 여기부터 시작한대여..바이오스가 이주소를 제일 먼저 읽는다고 함
(왜 거기냐? 라고 묻지마세요 저도 모릅니다 찾아도 도저히 못찾겠더라고요..혹시 아시는 분 있으면 댓글 부탁;)
mov :데이터 치환 (nasm에선 mov ax,0x07 하면 ax=0x07과 같다고 보면 된다)
byte[es:di]:es레지스터에서 di의 오프셋의 위치의 데이터에서 byte(1byte)만큼 데이터를 읽는다
1우리가 알아야 하는것
1)0x7C0라는 주소(세그먼트) 에 프로그램을 위치시켜야한다(org []라는게 이말이다)
2)비디오 메모리(화면에 출력하기 위한) 의 세그먼트는 0xB800이다
3)비디오 메모리 세그먼트가 가리키는 위치에 (오프셋대로)순서대로 값을 집어 넣는다
==>offset 에 관해서.. 첫번짜 byte는 문자 두번째 바이트는 색깔을 잡어 넣는다
ex> 0x07이라면.... 0검정 7하양(0x 0 7)
이상하네... 바로 메모리 접근이 안되나보다.세그먼트 레지스터를 이용해서 접근해보자
es세그먼트(사용자세그먼트 레지스터)레지스터에다가 0xB800를 (컬러 비디오 메모리 주소)
복사한다음 그 값을 복사한 범용레지스터를 다시 세그먼트 레지스터에 복사해 넣는다
대충 다름과 같은 예가 되겠지...
ax=0x07
es=ax
암튼....그리하여 ax,로 넘긴다음 ... es를 설정해준다
이리하면 잘아알 실행됨.. 화면에 당당히 A출력,바탕은 검정,글색깔은 흰색
ds 레지스터를 이용하여 좀더 간단하게
일단 좀더 폼 잡어서 약간더 추가하면..
추가:jmp $란 현재주소에서 현재주소로(?) jump!하기다 즉,제자리 뛰기
현재상태를 유지하기 위해서다 (프로그램이 끝나면 안되므로..그래도 때에 따라서 돌아가는덴 지장 없을때도)
아놔 이거 하나 안다고 정말 뻘짓한 시간 생각하면 크윽..;;
어셈블리 생판 모르는 상태애서 이거 이해한다고 어려워 죽는줄(?) 알았어영 ㅜㅜ
저같이 삽질을 하시는 분을 조금이라도 줄이기 위해서 이글을 바칩니다 ㅜㅜ 어흑...
일단 세그먼트/오프셋이 뭔지 알고 있다고 가정하고 내용을 작성하였습니다.
그것만 알고 계시다면 다음 이야기를 읽는데는 지장이 없을듯하네요
뭐 틀린내용이 있을수도 있으니 100%다 믿진 마시고요;
혹시 틀린게 있으면 지적 부탁합니다
덧> vmware,nasm,vi 정도는 다 아신다고 가정
0 preview
[org 0x07C0]:처음 시작 주소를 여기부터 시작한대여..바이오스가 이주소를 제일 먼저 읽는다고 함
(왜 거기냐? 라고 묻지마세요 저도 모릅니다 찾아도 도저히 못찾겠더라고요..혹시 아시는 분 있으면 댓글 부탁;)
mov :데이터 치환 (nasm에선 mov ax,0x07 하면 ax=0x07과 같다고 보면 된다)
byte[es:di]:es레지스터에서 di의 오프셋의 위치의 데이터에서 byte(1byte)만큼 데이터를 읽는다
C랑 비교한다면
char buf[3]; 이 있다고 할때
char는 byte,buf 는 es, []안의 숫자는 di로 보면 되겠다...(이게 더 복잡한가?)
=>plus! 그리고 byte[di] 같이 쓰는것은 ds레지스터를 생략해서 쓴것뿐이다
(ds세그먼트의 di 오프셋)
즉 byte[ds:di] == byte[di]랑 같다는 얘기!!
char buf[3]; 이 있다고 할때
char는 byte,buf 는 es, []안의 숫자는 di로 보면 되겠다...(이게 더 복잡한가?)
=>plus! 그리고 byte[di] 같이 쓰는것은 ds레지스터를 생략해서 쓴것뿐이다
(ds세그먼트의 di 오프셋)
즉 byte[ds:di] == byte[di]랑 같다는 얘기!!
1우리가 알아야 하는것
1)0x7C0라는 주소(세그먼트) 에 프로그램을 위치시켜야한다(org []라는게 이말이다)
2)비디오 메모리(화면에 출력하기 위한) 의 세그먼트는 0xB800이다
3)비디오 메모리 세그먼트가 가리키는 위치에 (오프셋대로)순서대로 값을 집어 넣는다
==>offset 에 관해서.. 첫번짜 byte는 문자 두번째 바이트는 색깔을 잡어 넣는다
ex> 0x07이라면.... 0검정 7하양(0x 0 7)
1 [org 0x07C0]
2
3 mov byte[0xB800:0x0000],'A'
4 mov byte[0xB800:0x0001],0x07
2
3 mov byte[0xB800:0x0000],'A'
4 mov byte[0xB800:0x0001],0x07
이상하네... 바로 메모리 접근이 안되나보다.세그먼트 레지스터를 이용해서 접근해보자
es세그먼트(사용자세그먼트 레지스터)레지스터에다가 0xB800를 (컬러 비디오 메모리 주소)
복사한다음 그 값을 복사한 범용레지스터를 다시 세그먼트 레지스터에 복사해 넣는다
대충 다름과 같은 예가 되겠지...
ax=0x07
es=ax
암튼....그리하여 ax,로 넘긴다음 ... es를 설정해준다
1 [org 0x07C0]
2
3 mov ax,0xB800
4 mov es,ax
5
6 mov byte[es:0],'A'
7 mov byte[es:1],0x07
2
3 mov ax,0xB800
4 mov es,ax
5
6 mov byte[es:0],'A'
7 mov byte[es:1],0x07
이리하면 잘아알 실행됨.. 화면에 당당히 A출력,바탕은 검정,글색깔은 흰색
ds 레지스터를 이용하여 좀더 간단하게
1 [org 0x07C0]
2
3 mov ax,0xB800
4 mov ds,ax
5
6 mov byte[0],'A' ;[ds:0]
7 mov byte[1],0x07;[ds:1]
2
3 mov ax,0xB800
4 mov ds,ax
5
6 mov byte[0],'A' ;[ds:0]
7 mov byte[1],0x07;[ds:1]
일단 좀더 폼 잡어서 약간더 추가하면..
1 [org 0x07C0]
2
3 start:
4 mov ax,0xB800
5 mov es,ax
6 mov di,0
7
8 mov byte[es:di],'A'
9 inc di ;c로 치면 di++
10 mov byte[es:di],0x07
11
12 jmp $
2
3 start:
4 mov ax,0xB800
5 mov es,ax
6 mov di,0
7
8 mov byte[es:di],'A'
9 inc di ;c로 치면 di++
10 mov byte[es:di],0x07
11
12 jmp $
추가:jmp $란 현재주소에서 현재주소로(?) jump!하기다 즉,제자리 뛰기
현재상태를 유지하기 위해서다 (프로그램이 끝나면 안되므로..그래도 때에 따라서 돌아가는덴 지장 없을때도)
아놔 이거 하나 안다고 정말 뻘짓한 시간 생각하면 크윽..;;
어셈블리 생판 모르는 상태애서 이거 이해한다고 어려워 죽는줄(?) 알았어영 ㅜㅜ
저같이 삽질을 하시는 분을 조금이라도 줄이기 위해서 이글을 바칩니다 ㅜㅜ 어흑...
'Programming > Kernel' 카테고리의 다른 글
확실히 다르잖아!! (4) | 2008.04.15 |
---|---|
ctags 설정 (4) | 2008.03.11 |
본체 전원키로 시스템 off 시키기 (4) | 2007.04.22 |
KernelProgramming-printk (5) | 2006.07.24 |
Kernel Panic! (2) | 2006.07.21 |
USB 스토리지 마운트 하기(SD,MMC카드,USB메모리)
Linux/내부설정 2007. 2. 12. 21:17
linux2.6.20애서 USB 메모리를 잡을려고 모듈 올린 부분..(usb마우스랑 기타 겹치는게 있음.. 중요한건 저 스토리지랑 SCSI
현재 들어와 있는 모듈
usb_storage 31620 1
usbhid 13060 0
rtc 9776 0
ohci1394 28592 0
ieee1394 75444 1 ohci1394
ohci_hcd 16388 0
ehci_hcd 23820 0
radeon 109216 2
drm 101400 3 radeon
nvidia_agp 6172 1
agpgart 23752 2 drm,nvidia_agp
snd_intel8x0 26396 3
snd_ac97_codec 85156 1 snd_intel8x0
ac97_bus 2304 1 snd_ac97_codec
snd_pcm 59908 3 snd_intel8x0,snd_ac97_codec
snd_timer 16260 2 snd_pcm
snd 33912 8 snd_intel8x0,snd_ac97_codec,snd_pcm,snd_timer
soundcore 5728 1 snd
snd_page_alloc 7304 2 snd_intel8x0,snd_pcm
마운트 하기
mount /dev/sdX /mnt/fl
아 그리고 뭐 charset 몿찾겠다면서 거품물때가 있는데 (dmesg | tail 쓰라고 애러 날때중 하나)
디바이스 설정중 로케일을 다음과 같이 넣으면됨
'Linux > 내부설정' 카테고리의 다른 글
단축키가 부족해!!! (2) | 2007.03.28 |
---|---|
USB 부팅 리눅스는 GG (2) | 2007.02.14 |
usb마운트 (2) | 2007.02.11 |
Amarok 스크립트로 터미널에서 가사보기 (6) | 2007.01.08 |
[linux] 랜덤으로 바탕화면 바꾸기. (2) | 2006.12.24 |