티스토리 툴바


Unbuntu에서 QEMU/KVM XP 설치시 Tip

Computer/Software 2012/04/16 16:56 Posted by holycall

Ubuntu 11.10에서 qemu/kvm 위에서 windows xp 설치하고 실행할 때마다 network card 없다고 에러가 나온다. 


pci_add_option_rom: failed to find romfile "pxe-rtl8139.bin"


이것은 apt-get install kvm-pxe 로 해결 볼 수 있음. 


또, 화면 크기가 윈도 사이즈가 달라진다. 


이것은 Ctrl+Alt+U 를 하면 해결된다. 


저작자 표시 비영리 동일 조건 변경 허락
프로그램이 너무 복잡해져서 솔루션 안에 프로젝트를 여러 개로 분리하였다. 
메인 프로젝트를 제외하고 나머지를 static library로 작성하였다. 

1. header 참조

메인 프로젝트 속성에서 
Configuration Properties - C/C++  - General - Additional Include Directories
에서 각 프로젝트 디렉토리로 설정하고. 

메인 프로젝트에서 다른 프로젝트의 header 파일을 Add Existing Item 을 이용해 추가한다. 

2. library 포함

메인 프로젝트 속성에서  

Configuration Properties - Linker  - General - Additional Library Directories 
에서 해당 lib 디렉토리 추가 (솔루션 밑에 Release에 들어 있음)

Configuration Properties - Linker - Input - Additional Dependencies 
에 해당 lib 이름을 추가

3. compile 속성 일치

모든 프로젝트에서 
Configuration Properties - C/C++  - Code Generation - Runtime Library 
를 전부 일치시킴. (나는 Multi-threaded로 일치)
일치시키지 않으면 다른 library 가져다 쓰는 과정에서 LNK 2005 에러가 생긴다. 
예를 들어 msvcprt.lib 와 libcpmt.lib 가 같은 함수를 포함하기 때문에 
name conflict가 생기는 것으로 볼 수 있다. 


저작자 표시 비영리 동일 조건 변경 허락

Being fruitful in hard times

Christianity/Meditation 2012/03/06 11:08 Posted by holycall
Ex 1:12 But the more they were oppressed, the more they multiplied and spread; so the Egyptians came to dread the Israelites

Isralites were productive even when we were being oppressed. If God is with us, we can also be fruitful in our work, ministry and personal life. I should know that bad environment does not matter most. 

저작자 표시 비영리 동일 조건 변경 허락

믿을 수 있는 사람

Christianity/Meditation 2012/02/24 23:31 Posted by holycall
(창 39:2-6) 여호와께서 요셉과 함께 하시므로 그가 형통한 자가 되어 그의 주인 애굽 사람의 집에 있으니 그의 주인이 여호와께서 그와 함께 하심을 보며 또 여호와께서 그의 범사에 형통하게 하심을 보았더라 요셉이 그의 주인에게 은혜를 입어 섬기매 그가 요셉을 가정 총무로 삼고 자기의 소유를 다 그의 손에 위탁하니 그가 요셉에게 자기의 집과 그의 모든 소유물을 주관하게 한 때부터 여호와께서 요셉을 위하여 그 애굽 사람의 집에 복을 내리시므로 여호와의 복이 그의 집과 밭에 있는 모든 소유에 미친지라 주인이 그의 소유를 다 요셉의 손에 위탁하고 자기가 먹는 음식 외에는 간섭하지 아니하였더라 요셉은 용모가 빼어나고 아름다웠더라

(창 39:9) 이 집에는 나보다 큰 이가 없으며 주인이 아무것도 내게 금하지 아니하였어도 금한 것은 당신뿐이니 당신은 그의 아내임이라 그런즉 내가 어찌 이 큰 악을 행하여 하나님께 죄를 지으리이까

(창 39:21-23) 여호와께서 요셉과 함께 하시고 그에게 인자를 더하사 간수장에게 은혜를 받게 하시매 간수장이 옥중 죄수를 다 요셉의 손에 맡기므로 그 제반 사무를 요셉이 처리하고 간수장은 그의 손에 맡긴 것을 무엇이든지 살펴보지 아니하였으니 이는 여호와께서 요셉과 함께 하심이라 여호와께서 그를 범사에 형통하게 하셨더라

(창 40:4) 친위대장이 요셉에게 그들을 수종들게 하매 요셉이 그들을 섬겼더라 그들이 갇힌 지 여러 날이라

요셉은 직장 생활을 하는 사람들의 좋은 본이 되는 것 같다. 그는 본래 노예가 아니라 형들에 의해 억울하게 노예의 신분이 되었지만 그렇게 된 현실에 원망하고 자포자기한 것이아니었다. 오히려 항상 성실하고 정직한 모습을 보이기 때문에 주인에게 신뢰를 얻었다.

요셉은 자신의 행동을 하나님께서 항상 지켜보고 계시고 하나님께서 평가하신다는 사실을 알고 있었다. 그러므로 주인이 보고 있든지 그렇지 않든지 항상 하나님 앞에서 행하여 정직하게 살았다. 이 모습은 요셉이 감옥에 가서도 이후에 총리가 되어서도 마찬가지였다. 

요셉은 하나님 앞에서 늘 깨어 있었기 때문에 주인의 아내가 자신을 유혹할 때도 그 유혹에 굴복하지 않았다. 그는 사람에게 간음을 행하는 것이 사람에게 죄가 될 뿐 아니라 하나님께 죄가 된다는 사실을 알고 있었다. 나도 직장 생활을 하면서 내가 정직하게 살지 않는다면 그것이 단지 사람에게 문제를 일으킬 뿐 아니라 내가 하나님으 믿고 따른다는 사실을 알고 있는 다른 사람이 볼 때 '믿는 사람이 그런 행동을 하는가?' 라고 생각하게 하여 하나님의 이름을 욕되게 하는 죄를 짓게 되는 것이다. 

요셉은 사람들을 잘 섬기는 사람이었다. 워낙 섬김에 탁월하였기 때문에 그를 감옥에 가둔 친위대장 조차도 바로의 관원들이 감옥에 갇혔을 때 요셉이 그들을 섬기도록 할 정도였다. 

요약하면 요셉의 삶에서 배울 점들은 다음과 같다. 
- 하나님과 함께 함 
- 하나님께서 항상 함께 하심을 알고 누가 보지 않더라도 정직하고 성실하게 행함
- 죄를 짓는 것은 사람에게가 아니라 하나님께 짓는 것이라고 여기고 순결을 지킴
- 사람들을 잘 섬김 
- 고난 중에 하나님의 도우심을 바라보며 기다림

직장인으로서 이런 본을 잘 받아서 무슨 일을 하든지 하나님께 하듯 탁월하게 하는 것을 잘 배워야겠다. 




저작자 표시 비영리 동일 조건 변경 허락

섬김과 자기 영광

Christianity/Meditation 2012/01/09 16:13 Posted by holycall
예수님은 섬김을 통해서만이 제자들이 자기 영광과 자기 사랑에서 자유로워질 수 있음을 알고 계셨다. - 관계가 주는 기쁨 11장

주님께서 십자가를 지고 죽을 날을 앞두고 마지막으로 제자들에게 한 메시지인 요한복음 13장에서 섬김에 대해서 매우 강조하시는 것을 관찰할 수 있다. 주님은 자신의 뜻과 마음을 잘 이해하지 못하던 제자들을 끝까지 사랑하셨고 제자들이 이것을 보이기를 원하셨다. 이전에 제자들은 누가 높으냐 여러 번 싸워서 책망을 받았었지만 여전히 높아지고 자기 영광을 구하려 하는 태도를 가지고 있었다. 

예수님께서 요한복음 13장에서 말씀하신 이유는 섬김 자체의 중요성도 있지만 섬김을 통해서 자기가 죽음을 통하여 (요 12장 26절) 자기 영광과 자기 사랑에서 자유로워지기를 원하셨던 것이다.

마지막으로 밤을 세워 하신 요한복음 17장의 제자들을 향한 기도에서도 제자들이 하나가 되어 하나님께서 예수님께 주셨던 세계 복음화를 동일한 마음으로 이루기를 원하셨다. 여기에서 팀웍을 강조하시는 것도 같은 이유라고 볼 수 있다. 서로 다른 사람들, 여전히 죄를 지으며 살아가는 부담스러운 사람들과 팀웍을 하는 과정에 자신이 깎이고 낮아지는 것을 배울 수 있기 때문이다. 

 

저작자 표시 비영리 동일 조건 변경 허락

하나님의 징계와 긍휼

Christianity/Meditation 2011/12/27 17:43 Posted by holycall

렘 30:11 이는 여호와의 말씀이라 내가 너와 함께 있어 너를 구원할 것이라 너를 흩었던 그 모든 이방을 내가 멸망시키리라 그럴지라도 너만은 멸망시키지 아니하리라 그러나 내가 법에 따라 너를 징계할 것이요 결코 무죄한 자로만 여기지는 아니하리라.  
렘 31:18-20 에브라임이 스스로 탄식함을 내가 분명히 들었노니 주께서 나를 징벌하시매 멍에에 익숙하지 못한 송아지 같은 내가 징벌을 받았나이다 주는 나의 하나님 여호와이시니 나를 이끌어 돌이키소서 그리하시면 내가 돌아오겠나이다. 내가 돌이킨 후에 뉘우쳤고 내가 교훈을 받은 후에 내 볼기를 쳤사오니 이는 어렸을 때의 치욕을 지므로 부끄럽고 욕됨이니이다 하도다. 에브라임은 나의 사랑하는 아들 기뻐하는 자식이 아니냐 내가 그를 책망하여 말할 때마다 깊이 생각하노라 그러므로 그를 위하여 내 창자가 들끓으니 내가 반드시 그를 불쌍히 여기리라 여호와의 말씀이니라

하나님은 공의로우시므로 죄에 대해 반드시 징계하시되 법에 따라 징계(punish)하신다 (렘 30:11). 그 죄를 간과하지 않으신다. 징계 받는 사람은 분명히 회개해야 한다. 하나님께서는 하나님의 자녀가 고생하는 것을 불쌍히 여기시고 결국에는 회복시키신다. 그는 사랑하는 아들, 기뻐하는 자식이기 때문이다 (렘 31:18-20). 

신자들은 예수 그리스도의 속량(propitiation)을 통해 더 이상 하나님의 진노의 대상은 아니다. 그러나 그렇다고 해서 하나님의 징계(discipline)를 피할 수 있는 것은 아니다. 

히 12:5,6,10  또 아들들에게 권하는것 같이 너희에게 권면하신 말씀을 잊었도다 일렀으되 내 아들아 주의 징계하심을 경히 여기지 말며 그에게 꾸지람을 받을 때에 낙심하지 말라. 주께서 그 사랑하시는 자를 징계하시고 그의 받으시는 아들마다 채찍질하심이니라 하였으니. 무릇 징계가 당시에는 즐거워 보이지 않고 슬퍼 보이나 후에 그로 말미암아 연달한 자에게는 의의 평강한 열매를 맺나니

하나님의 자녀들에게는 하나님의 징계(punish)는 우리를 바로 잡기 위한 하나님의 훈련(discipline)이다. 믿는 자들도 분명 하나님의 공의에 따른 징계와 열매를 먹게 될 것이다. 믿어서 구원의 약속을 받았다고 천국에 가게 되었다고 죄를 즐기며 사는 사람들이 있다. 그 사람들이 정말 하나님의 자녀라면 분명 하나님의 엄한 징계를 받게 될 것이다. 하나님의 징계가 없다면 그들이 하나님의 자녀라고 볼 수 있을까? 그렇지 않다. 그들은 단지 믿는다고 착각할 뿐이며 결국 그들의 죄에 대한 정당한 댓가를 받게 될 것이다. 

마 7:21-23 나더러 주여 주여 하는 자마다 다 천국에 들어갈 것이 아니요 다만 하늘에 계신 내 아버지의 뜻대로 행하는 자라야 들어가리라. 그 날에 많은 사람이 나더러 이르되 주여 주여 우리가 주의 이름으로 선지자 노릇 하며 주의 이름으로 귀신을 쫓아 내며 주의 이름으로 많은 권능을 행하지 아니하였나이까 하리니. 그 때에 내가 그들에게 밝히 말하되 내가 너희를 도무지 알지 못하니 불법을 행하는 자들아 내게서 떠나가라 하리라

저작자 표시 비영리 동일 조건 변경 허락

DWORD64 n64 = 0x123456789ABCDEF;
_tprintf(TEXT("%016I64X %s\n"), n64)
그냥 printf 하면 문제가 생기므로 X 앞에 I64를 붙여 주어야 한다.

DWORD64 n64 = 0x123456789ABCDEF;
_tprintf(TEXT("%I64d %s\n"), n64)
10진수로 할 때도 마찬가지로 d 앞에 IA64를 붙인다.
저작자 표시 비영리 동일 조건 변경 허락
Assembly로 하는 코드들은 다른 데 나와 있어서 
Visual C++로 해 보았다.

	LPEXCEPTION_POINTERS except_ptr; 
__try { RaiseException(1, 0, 0, NULL); } __except (except_ptr = GetExceptionInformation(), EXCEPTION_EXECUTE_HANDLER) { CONTEXT *ctx = except_ptr->ContextRecord; if (ctx->Dr0 != 0 || ctx->Dr1 != 0 || ctx->Dr2 != 0 || ctx->Dr3 != 0 || ctx->Dr6 != 0 || ctx->Dr7 != 0) { printf("Debugger Present - Hardware Breakpoints\n"); } }

Hardware breakpoing를 저장하는 DR0 ~ DR7 register는
일반적으로 유저 모드에서 접근할 수 없지만 
SEH에서 CONTEXT에 전달된다. 

typedef struct _EXCEPTION_POINTERS {
    PEXCEPTION_RECORD ExceptionRecord;
    PCONTEXT ContextRecord;
} EXCEPTION_POINTERS, *PEXCEPTION_POINTERS;
 
구조에 채우는 매크로인 GetExceptionInformation()는
filter expression에만 쓸 수 있어서 변수에 저장하고
handler 부분에서 ContextRecord를 꺼내고
ContextRecored에서 접근할 수 있는 DR1~DR7
값을 사용하여 탐지한다.
저작자 표시 비영리 동일 조건 변경 허락
John Stott의 Basic Christianity의 5장에서 십계명의 일계명 나 외에 다른 신을 두지 말라에 나오는 인용구인데, 한글 책에서 번역이 어색하다.

a self-made man = 자수성가한 사람
his creator = 창조주

self-made와 creator의 뜻이 완전히 반대이고,
이 말은 스스로 되었다고 (자수성가했다고) 생각하는 성공한 사람이
하나님을 예배할 수 없다고 
그의 교만을 풍자하는 의미이다.

우리 말로 더 알기 쉽게 번역하자면 직역은 힘들 것 같고,

"A self-made man who worships his creator."
"스스로의 능력만 가지고 성공했다고 이야기하면서 창조주를 경배한다는 사람"

정도로 번역해야 할 것이다.

저작자 표시 비영리 동일 조건 변경 허락

영적 지도자에 대한 태도

Christianity/Meditation 2011/11/01 11:11 Posted by holycall

룻은 나오미가 성공해서 따른 것도 아니고 그의 믿음이 대단해서 따른 것도 아니다. 나오미는 룻이 하나님을 섬기기 위해 가장 적합한 대상이었기에 그를 따른 것이다.

룻이 놀라운 것은 그의 시어머니가 실패하는 것처럼 보였지만 죽을 각오를 하고 사랑과 충성의 마음으로 따랐다는 것이다. 심지어는 그가 룻에게 하나님을 버리고 집으로 돌아가 다른 신을 섬기라고 했음에도 불구하고 따랐다.

하나님께서는 꼭 위대한 리더. 성공한 리더를 통해서만 일하시지 않으신다. 부족하고 실패가 있고 연약하다 할지라도 하나님을 잘 섬기기 위해 그를 따른다면 그의 겸손과 사랑 그리고 충성을 보고 그를 놀랍게 축복하신다는 것이다.

나도 영적 리더에게 이와 같은 사랑과 충성의 태도를 가져야 하지 않겠는가? 
저작자 표시 비영리 동일 조건 변경 허락