블로그 이미지

하얀현자의 Sweet Whisper!

하양이가 하고 있는, 살고 있는- 소소한 하루의 여정。 by 하얀현자


'2010/01'에 해당되는 글 3건

  1. 2010.01.26 달팽이, 저 넓고 거치른 바다4
  2. 2010.01.13 독서 취향 테스트?1
  3. 2010.01.08 MMAP을 사용해보자!3

달팽이, 저 넓고 거치른 바다


"집에 오는 길은 때론 너무 길어"서 노래를 들으면서 온다.
여느때와 다름없이 테이의 노래. 평소같으면 그냥 넘겼을 노래지만 귀찮다는 생각에 그냥 계속 듣고 오던 '달팽이' 라는 노래가 흘러 나오고 있었다.
도대체 이 달팽이란 노래를 왜 리메이크까지 하면서 불렀을까 가만히 노래를 들어보았다.


좁은 욕조속에 몸을 뉘었을때, 작은 달팽이 한마리가
내게로 다가와 작은 목소리로 속삭여줬어.

언젠가, 먼훗날에 저 넓고 거치른 세상 끝 바다로 갈거라고.
아무도 못봤지만 기억속 어딘가 들리는 파도소리 따라서
나는 영원히 갈래.
내 모든 걸 바쳤지만, 이젠 모두 푸른 연기처럼 산산이 흩어지고
내게 남아있는 작은 힘을 다해 마지막 꿈속에서
모두 잊게, 모두 잊게, 해줄 바다를 건널거야.


그 작은 달팽이가 '바다' 를 어떻게 알게 되었을까.
왜 하필이면 지치고 지쳐있어서 욕조에 몸을 뉘었을때 그 달팽이가 나에게 그런 말을 해주었을까.

과연 내가 생각하는 '바다' 는 마지막 꿈속에서 그 힘든 것들을 모두 잊게해줄 만한 그런 바다인가.

Top

독서 취향 테스트?

 

따뜻하고 건조한 여름, 선선하고 비가 많이 내리는 겨울. 너무 춥지도 않고 너무 덥지도 않음. 지중해성 기후는 쨍하고 맑은 날씨와 일년 내내 푸근한 기온이 특징. 겨울에 한정되긴 하지만 충분한 강우량으로 목가적인 초목이 자라며, 수많은 향기 가득한 허브와 과일, 농작물들이 풍성하게 자란다.

극단적이지도, 어렵지도 않은, 언제나 맑고 밝고 풍족한. 이 기후는 당신의 책 취향을 대변해 줍니다.

  • 목가적 친밀함:
    올리브 나무 자라는 드넓은 평원마냥 낙관적이고 선량한, 가슴 따뜻한 내용 선호. 전인류 보편적인 인간애와 감성주의, 편안함과 친밀함을 좋아함.
  • 지속적, 안정적:
    비논리적, 비과학적인 내용에 관대하며, 뻔하고 단순한 내용에 쉽게 질리지 않음. 좋아하는 것에 매우 오랜 세월 애착을 갖는 편. 오랜 세월, 대중들의 검증을 받은 책 선호. 남들이 사보는, 유명한 책들만 본다는 편견이 있을 수 있음.

  • 극단적인 기후에 울컥:
    까다로움, 복잡함, 과도한 두뇌 게임에 반감. 독선적 냉소, 끝도 없는 불평 불만, 지적인 교만에 혐오감. 반사회적이고 극단적 내용에 불쾌감.

출판업계의 관점에서 볼때 당신은 시장의 절대다수를 차지하는 취향입니다. 불황기에도 꾸준히 책을 사서 보는 우직한 소비자 층이며, 출판 시장의 판도를 좌우하는 침묵하는 다수이자, 베스트셀러를 만드는 가장 굳건한 지지자들이죠.

당신의 취향으로부터 많은 지지를 받은 작가들에는 다음과 같은 이들이 있습니다.

에쿠니 가오리
"피렌체의 두오모에, 너랑 오르고 싶어. 그때 나는 평소에 없는 용기를 끌어모아 말했다. 나로서는 태어나서 처음 하는 사랑의 고백이었으므로. 피렌체의 두오모에는 꼭 이사람과 같이 오르고 싶다고 생각했던 것이다...우리의 인생은 다른 곳에서 시작됐지만, 반드시 같은 장소에서 끝날 것이라고."
- 냉정과 열정 사이 中

정이현
"010-97X-5X1.....8."
마지막 숫자를 슬쩍 다르게 댈까 하다가 그만두었다. 그렇게까지 비겁하고 싶지는 않다. 그는 버튼을 꼭꼭 눌러가며 내 번호를 휴대폰에 저장했다. 내 전화벨이 울린다. 당황해서 가방을 여는 순간 벨소리가 뚝 그친다. 액정에 부재중전화 1통, 표시가 떠 있다.
"제 번호 찍어놨어요."
나는 천치처럼 고개만 끄덕였다.
- 달콤한 나의 도시 中

 

 

오오... 왠지 이런건 해볼 때 마다 맞는 듯 하다 +_+
해보고 싶은 사람은 http://book.idsolution.co.kr/?mode=home

 

Top

MMAP을 사용해보자!

MMAP

What is MMAP?

  • MMAP is Memory Mapped IO, It enables accessing file like memory read or write.
    • MMAP은 Memory Mapped IO 로써, 파일에 대한 접근을 메모리에 접근하는 것과 같이 만들어 준다.
  • Therefore it has benefit in IO throughput which has huge overload of each access.
    • 따라서, 이는 각각의 Access 마다 가지고 있는 큰 Overload를 지닌 IO Throughput 에 있어서 이익을 얻을 수 있다.

Implementation of MMAP

Environment under Windows

  • Windows support MMAP form of function CreateFileMapping. This is quite different from UNIX implementation.
    • Windows 에서는 MMAP을 CreateFileMapping 이라는 함수로써 지원한다. 이는 UNIX에의 구현과 다소 상이한 점이다.
  • But, basically it’s same with UNIX one.
    • 하지만, 기본적으로는 UNIX의 그것과 일맥상통한다.

Simple Source Code

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
void main(){
 
	// Simple Source Code Using MMAP in Win32 Environment
	// 2008.01.08 Written by snowsage
 
	HANDLE hFile = CreateFile(TEXT("\\tmp.txt"), GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_READONLY, NULL);
	if(hFile == NULL){ printf("<ERROR> CreateFile\n"); return; }
 
	HANDLE fd = CreateFileMapping( hFile, NULL, PAGE_READONLY, 0, 0, NULL );
	if(fd == NULL){ printf("<ERROR> CreateFileMapping\n"); return; }
 
	char* mapFile = (char*)MapViewOfFile(fd, FILE_MAP_READ, 0, 0, 0);
	printf("%s", mapFile);
}

Explanation of Source Code

  1. windows.h has definitions of function which is related to MMAP. So we have to include the file.
    • windows.h 파일이 MMAP과 관련한 함수들을 정의하고 있으므로 이 파일을 Include 해주어야 한다.
  2. First, Create file handler to your file(CreateFile). You have to carefull with access options! It has to equivalent with using in CreateFileMapping function.
    • 먼저 파일에 대한 Handler를 얻어온다(CreateFile). 이때 Access 권한을 설정을 주의하여야한다. 이것은 CreateFileMapping Function 에서 사용 되는 것과 같은 값이어야한다.
  3. Create mapping handle using opened file handler(hFile). Actually, It is real step to map file.
    • Mapping handle 을 file handler(hFile)로 부터 생성한다. 사실 이 과정이 실제 파일로 매핑을 하는 과정이다.
  4. Get pointer from mapped handle(fd). MapViewOfFile function will be return VOID pointer, so we need to type cast VOID to CHAR pointer.
    • Mapping된 handle로부터 포인터값을 얻어온다. MapViewOfFile 함수는 void 포인터로 반환하기 때문에 이에 대해 char*로 TypeCast가 필요하다.

- 원본 글 위치: http://kweb.korea.ac.kr/doku.php?id=kdj-mmap

Top

prev 1 next