휴학기간 2년...
복학 후 1년 반...
대학원으로 진학한지 6개월...

거의 4년의 기간동안 긴 기간의 여행을 다녀본 기억이 거의 없었다.

매일 매일 바쁜 일상, 숨도 돌릴수 없는 일정에

긴 휴식같은 건 꿈같은 얘기였다.



대학원 첫 여름 방학과 함께 일주일의 휴가기간이 생긴 후

정말 조용히 일주일을 보내고 싶었다.

나를 찾을 사람이 없을 정도로 조용한 곳으로...



고민 끝에 생각해낸 해외여행...

근데 생각보다 만만치 않았다.

병역 의무가 남아있어 병무청에 허가를 구해야 했고

준비 시간이 너무 짧다보니 항공권을 구하기도 만만치 않았다...

게다가... 떠나기 전에 해야 할 일들이 산적해 있다보니

전날 밤까지 일을 하다가 밤을 꼬박 새고 다음날 새벽 출국을 하게 된다.

이렇게 엉성하게 내 첫 해외 여행이 시작된다.

사용자 삽입 이미지

'여행 > [2008] Bangkok' 카테고리의 다른 글

[2008 Bangkok] Second Day (2008/06/29)  (0) 2008.08.03
[2008 Bangkok] First Day (2008/06/28)  (0) 2008.07.08
[2008 Bangkok] Prologue  (0) 2008.07.08

[서문]

Trac은 잘 알려진 Project Management 툴이며,
위키, Sub Versioin 등과 연동하여 프로젝트 일정, 상세 내역, 형상 관리 등...
프로젝트를 진행할 때 이거 하나면 프로젝트 관리에 있어서는 더 이상의 부족함이 없을 듯한...

다만 Trac을 사용하기에 가장 치명적인 단점은 설치가 어렵다는 점
나 역시 각종 세팅이나 인스톨이리면 머리를 자연스럽게 흔들게 되는 사람이라...
자연히 좋다는 점을 알면서도 Trac의 설치를 해본 적이 없다.

큰맘 먹고 Trac을 설치해보려고 검색을 시도하다가 TOW(Trac on Windows) 라는 프로그램을 확인하게 되고, 압축만 풀면 바로 돌아가게 할 수 있다는게, 무척이나 제작자에게 고맙게 느껴젔다.

[설치과정]

1. TOW 다운로드

다음의 사이트에서 TOW를 다운받는다.

http://sourceforge.net/project/showfiles.php?group_id=192688&package_id=254120&release_id=579291
(2008년 05월 29일 현재 TOW-0.2.2a 한글 버전을 다운로드 받을 수 있다.)

한글판이며, Base와 Standard 두 종류가 있다.
Base는 필수적인 요소만을 포함한다고 생각하면 된다.
Standard는 기본적인 Trac 요소 외에 이클립스와의 연동, WYSIWYG 에디터, Web Admin 등의 모듈을 포함한다.

오피스 설치 때도 어김없이 전체 설치를 눌러버리는 개인적인 성향상, Standard를 다운받았다.


2. 설치(?)

TOW 개발자 분의 노고로 인해... 설치는 설명하기 조차 민망하다.
그냥, 압축을 풀어주면 된다.
경로가 그나마 중요하다. C:\TOW\에 압축을 풀어주면 된다.


압축을 풀면 대충 감이 온다.

- SvnRepo : SVN 저장소
- TracRepo : Trac 저장소

그리고, 명령어를 수행하기 위한 배치 파일들이 있다.


3. TOW 시작

시작을 위해 start-tow.bat 파일을 실행한다.

정상적으로 수행 된다.

※ 문제점 1

다음과 같은 메시지가 보일 경우가 있다.

[TOW] 테스트용 Trac은 http://localhost:8080/projects/HelloTOW 로 접속하세요.
[TOW] 테스트용 Subversion은 http://localhost:8080/svn/HelloTOW 로 접속하세요.
httpd: Syntax error on line 493 of C:/TOW/Apache/conf/httpd.conf: Cannot load C:
/TOW/Apache/modules/mod_python.so into server: \xc1\xf6\xc1\xa4\xb5\xc8 \xb8\xf0
\xb5\xe2\xc0\xbb \xc3\xa3\xc0\xbb \xbc\xf6 \xbe\xf8\xbd\xc0\xb4\xcf\xb4\xd9.

이같은 메시지는 msvcr71.dll 파일이 없어서 발생하는 문제이다.
다음 사이트에서 msvcr71.dll 파일을 다운로드 하여 C:\WINDOWS\system32 디렉토리에 복사한다.

http://www.dll-files.com/dllindex/dll-files.shtml?msvcr71

※ 문제점 2

기존에 SVN이나 아파치 등이 설치되어 있을 경우 각종 충돌이 일어날 수 있다.
나의 경우는 귀차니즘 때문에 포멧을 할 때까지 설치를 미뤘다.

4. TOW 수행 명령을 서비스로 만들기

TOW 수행 명령어를 사용하면 간단하게 프로그램을 수행할 수 있다.
하지만, 이런 식으로 명령어를 수행하는 방식이라면, 서버 부팅시마다 매번 사용자 로그인을 해서 명령어를 수행해 주어야 한다.
귀찮은 건 둘째치고, 원래 이런 프로그램은 서비스 혹은 데몬으로 돌아가야 한다.

프로그램을 서비스로 등록하기 위해 흔히 사용하는 명령어 중 sc 라는 명령어가 있다.
하지만, 나의 경우에는 sc로 등록하는 방법은 실패했다.

인터넷에서 해결책을 찾아 돌아다니다 Window Server 2003 Resource Kit Tools 라는 프로그램으로 해결했다는 글을 찾게 되었다.

1 ) 먼저 다음 사이트에서 프로그램을 받아 설치한다.

http://www.microsoft.com/downloads/details.aspx?FamilyID=9D467A69-57FF-4AE7-96EE-B18C4790CFFD&displaylang=en


2 ) 설치가 되면 설치된 디렉토리(C:\Program Files\Windows Resource Kits\Tools)에서 instsrv.exe, srvany.exe 를 C:\WINDOWS\system32 디렉토리에 복사한다.



3 ) 다음의 형식으로 명령어를 수행

C:\>instsrv [서비스이름] C:\WINDOWS\system32\srvany.exe



4 ) regedit를 실행하여 해당 서비스의 레지스트리를 찾는다.
레지스트리의 위치는 다음과 같다.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\[서비스명]



5 ) 해당 서비스 이름 레지스트리에 "새로만들기 > 키" 를 선택한다.
키의 이름은 Parameters 로 한다. (정확하게 입력해야 한다 -_-;;; Parameter로 넣었다가 개고생 했다...)

※ 현재 그림에서 Parameter 가 Parameters로 수정되어야 한다 !!



6 ) 이번엔 생성된 Parameters에서 "새로만들기 > 문자열 값" 을 선택한다.
선택하자마자 이름을 변경할 수 있으며 (이후엔 변경이 불가능하다.) 이름을 Application으로 한다.
만들어진 값을 더블클릭한 후, 값 데이터에 TOW의 실행 배치 파일 경로(C:\TOW\start-tow.bat)를 입력한다.

(참고: bat 파일 내부에서 수행되는 bat 파일이 있을시 path 환경 변수에 설정되지 않았다면, 실행되지 않을 수 있다. 이때는 AppDirectory 라는 문자열 값을 Parameters에 추가하여, 실행될 배치파일이 존재하는 경로를 추가해준다. (e.g. AppDirectory=C:TOW))



7 ) "시작 > 관리도구 > 서비스" 로 이동하면 아까 1) 과정에서 입력했던 서비스 명으로 서비스가 생겼을 것이다.



8 ) 서비스를 더블 클릭하고, 시작 유형을 "자동" 으로 설정하고 "적용"한다.
서비스가 시작되지 않았으면 "시작" 버튼을 눌러 서비스를 수행한다.


[정리]

앞에서도 말했지만 개발자분의 노고로 인해 설치 과정은 정말 쉽다.
다만, 서비스를 생성하는 과정이 약간 귀찮을지도 모르겠다.


[문제점]

사용해보다가 나름 문제점이 있긴 하다.
서비스로 TOW 중지를 시키지 못한다. -_-;
정확히 말하자면, 중지를 시킬 수는 있지만, 서비스가 멈추는 건 아니다.
배치파일이다 보니 한번 수행을 하면 다른 실행파일을 수행하고 정지하므로...

딱히 필요한 기능은 아니다. 보통은 계속 켜져 있는 것을 원할테니...
하지만... 딱히 방법이 있으려나?



[수정사항]

- 2008/06/01
난 역시 삽질의 대가인가 보다...
문서화할 때 분명 Parameter를 Parameters로 고쳐야 한다고 강조하고서
문서화 하는 과정에서 레지스트리 만드는 걸 다시 보여주다가 그만
Parameter라고 써버렸다...

- 2011/03/20
댓글의 제보가 들어와 다음의 내용을 추가합니다.
start-tow.bat 파일을 수정해야 합니다.
1 에디터로 start-tow.bat 파일을 열어서
2 제일 상단에 cd c:\tow 추가하고 저장

- 2013/04/13
다음 링크에서 추가 레지스트리 등록에 관해 언급한 내용을 추가하였습니다.



'공부 > Issue Tracking System' 카테고리의 다른 글

개인용 Java 기반 프로젝트 환경 설치 - (3) BitNami Redmine 설치  (0) 2013.04.14
Redmine 개요  (0) 2013.04.07
SVN Update  (0) 2008.10.02
SVN Commit  (0) 2008.10.02
SVN Client 초기 설정  (2) 2008.10.02
TOW(Trac on Windows) 설치하기  (3) 2008.05.29
  1. 김상욱 2010.02.19 17:27

    정말 유용하게 잘썼습니다.

    감사합니다.

  2. 감사합니다 2011.03.18 14:15

    도움이 되었습니다. 감사합니다.

    옥의 티를 찾아서 알려드립니다.
    1. 중간에 instsrc는 instsrv로 고쳐져야 할 듯 합니다.
    2. start-tow.bat 파일을 수정해야 합니다.
    2.1 에디터로 start-tow.bat 파일을 열어서
    2.2 제일 상단에 cd c:\tow 추가하고 저장

    • 피의화요일 2011.03.20 01:30 신고

      아... 너무 오랜만에 방문하는지라 댓글을 지금에야 봤네요
      부족한 블로그 방문해주셔서 감사합니다.
      말씀하신 내용은 수정해놓도록 하겠습니다.

UML

상당히 잘 설명된 페이지...

읽고 숙지하자...

http://geniusduck.tistory.com/entry/UML-%EA%B8%B0%EB%B3%B8%ED%8E%B8-%EA%B8%B0%EB%B3%B8-%ED%91%9C%EA%B8%B0-%ED%98%95%EC%8B%9D-%EB%B0%8F-%EA%B4%80%EA%B3%84%ED%91%9C%ED%98%84%EB%B2%95

'공부 > UML' 카테고리의 다른 글

dependancy, association, aggregation, composition 등의 차이점  (0) 2008.04.16


720만 화소, 광학 3배줌
180’ Rotating Mode Change LCD
3.0인치(7.62cm) Touch Screen
7 멀티 컨버젼스 기능(디카, PMP, MP3 등)
고압축 MPEG4, 고해상도(800 X 592)동영상
세계 여행 정보 Contents 수록
고감도 ISO 1600
손떨림 방지 ASR기능

=================================================================================

동생 덕분에 시세보다 대략 3만원정도 싸게 산 디카...

디카라곤 관심도 없었고, 사진을 찍는 취미도 찍히는 취미도 없다보니

사고 나서도 상당히 난감한 상황에 이르게 되었다.


그렇다고 도로 팔고 싶은건 절대~~ 아니구...

매번 사용하면서 내가 참 사진을 못 찍는다는 생각이 들어...


아... 디카 사진은...

디카로 디카를 찍을 방법이 별로 없는 것 같아 일단 포기...

'리뷰 > Electronics' 카테고리의 다른 글

삼성 Vluu i7  (0) 2008.02.21
삼성 R70-W203 노트북 리뷰  (0) 2007.10.19
http://news.naver.com/photo/read.php?mode=LTD&office_id=028&article_id=0000223956&section_id=102&view=all


사진 멋지다... 어떻게 나 학교 다닐때랑 똑같냐... ㅋㅋ


기억을 한번 되새겨보면...


* 이사장 횡령 사건

아마도... 내가 고2때 정도에 일어났던걸로 기억하고 있다...

대략... 2000년도 경이였겠군...

뉴스데스크? 거기서 뉴스를 보고 있었을 때였던거 같어...

충암 고등학교 이사장이 난방 시설 설치 예산을 꿀꺽 했다... 뭐 그런 정도?
 
그 때 느꼈던 건... 아... 그래서 우리 학교가 추웠던 거구나...


* 화장실

정확하게 기억은 안나지만...

2학년 건물에 화장실은 한곳... 그것도 지하...

화장실 한번 내려갔다 올라오면 다시 마렵다...

제일 불쌍한 아이들은 뭐니뭐니해도 제일 윗층을 쓰던 문과반 아이들...

2학년 생활동안 나는 소변 참았다 한번에 배출하는 능력을 배웠다...


뭐 그래도 몇몇 선생님들 중에선 존경할 만한 선생님도 있었고...

물론 선생님이란 호칭이 아까운 쓰레기들도 있었지만...

거기다 이런 저런 비리, 소문들... 수도 없지만...

뭐 지금와서 떠들어봤자... 고등학교 졸업한지 오래라... ㅋㅋ

'일상' 카테고리의 다른 글

우리집 냉장고에는.…  (0) 2010.03.12
수면용 눈가리개  (0) 2008.11.28
충암고 메스컴 타다...  (0) 2007.12.16

1. 슈퍼 블록의 구조체와, file 구조체, inode 구조체에 대한 정보를 얻어내었다.

2. 시스템 콜 레퍼런스를 구해서 구현 가능할 만한 파일이 있는지 확인해보았다.



결론을 내렸을 때,
시스템 콜이나 라이브러리로는 i-node 번호만으로 접근이 불가능하다.

뭐 내가 잘 모르는 것일 수도 있지만, 시스템 콜이나 라이브러리 상의 파일 컨트롤 함수들은

어디까지나 해당 파일이 존재할 때 사용하는 함수들이다.

대부분의 파일 컨트롤 함수들은 filepath를 문자열로 받거나, file descriptor를 인자로 받는다.

file descriptor를 받기 위해서는 open, 또는 creat 함수를 사용하는데, 이 때 사용하는 인자가

filepath 문자열이므로. 결국
파일 컨트롤 함수들의 시작은 파일의 경로를 입력하여 해당 파일을

읽어들이는 것이다.



3. 인터넷을 서핑하던 중, 재미있는 자료를 찾았다.

http://www.pyrasis.com/main/Ext2FileSystem

Ex2 파일 시스템에 대해 해설하면서, 파티션의 구조를 분석하는 것으로

이 문서가 아무래도 이번 프로젝트에 필요한 기술을 나열하고 있는 것으로 생각된다.


물리적 하드 디스크의 내용을 쓰는 과정은 이미 한번 해본 적이 있어서

비교적 테스트 파일을 만드는 과정이 쉬웠으며,

수행 결과는 다음과 같았다.

사용자 삽입 이미지

하드 디스크 읽기 테스트


확대해서 보면 마지막 지점에 아래에서 2번째 줄의 맨 끝에 2Byte가 55aa로 되어있는 것을 확인 할 수 있다.
한 줄에 16개의 byte를 나열하고 있고, 16번째 줄이므로, 해당 지점의 주소는

0x1fd ~ 0x1fe (55aa)

여기서 55aa는 MBR의 마지막 지점에 붙는 것으로
Boot Record Signature라고 부른다.

(Boot Record Signature 관련 설명은
http://www.cpqlinux.com/mbr.html 를 참조)


결국 이렇게 해서 하드 디스크에서 MBR을 찾아내는 과정을 완료하였다.

현재까지 알아낸 정보를 종합하여 프로그램의 수행 과정에 대해 적어보면


* rm 파일 복원 프로그램 - 전체적인 프로그램의 수행 순서

(1) 사용자로부터 복원 대상 하드 디스크를 선택받는다.
(2) 해당 디스크의 i-node 테이블들을 확인하면서 Link가 0인 inode를 찾는다.
(3) 찾아낸 inode들의 정보를 보여주면서 복원할 파일을 선택받는다.
(4) 해당 파일을 복구

'공부 > [2007] 유닉스 프로그래밍' 카테고리의 다른 글

2007/10/19 작업 내용  (0) 2007.10.19
2007/10/15 작업 내용  (0) 2007.10.15
삼성 R70-W203

사용자 삽입 이미지
* 기본 사양

CPU : T7250 (2.0GHz Dual Core, Intel)
RAM : 1G
HDD : 120G
ODD : DVD RW
VGA : GForce 8400M GS (128Mb)

※ 모델에 따라 차이가 있을 수 있음

* 리뷰

 사진 같은 것 찍어서 추가해 볼까 했지만, 역시나 디카도 없고, 핸드폰 카메라로 찍어봤자 얼마나 잘 나올까 싶어서 포기했음
 
 최근 산타로사 플랫폼의 제품들이 출시되면서, 여러 회사에서 경쟁적으로 제품을 선보이고 있으며, 삼성에서도 여러가지 제품이 나오고 있었다. 여러 업체를 비교해 봤으나, 국내 기업들의 제품의 가격이 많이 다운된 편이라 구지 외국 제품으로 구입하지 않아도 문제가 없을 듯 했다.

 나는 노트북을 데스크탑 대용으로 이용하는 편이다. 일단 생활이 학교에서 상주하는 편인데다, 여러가지 아르바이트나 프로젝트를 진행하기도 하는 편이라 이쪽 저쪽 이동하는 경우가 자주 있어서 노트북 사용을 선호한다.

 난 개인적으로 작은 노트북을 선호하지 않는 편이다. 보통 이동성을 고려하여 사람들이 생각하는 무게의 Limit가 2Kg이다. 가끔 여자분의 노트북 추천엔 이 이하의 노트북을 추천하긴 하나, 그런 경우를 제외하고 대부분 LCD가 14인치 이상인 제품을 추천한다.

 사실 노트북 무게라는 거, 노트북 자체의 무게가 1Kg 정도 차이 나는 건 그리 큰 차이가 나지 않는다. 노트북 들고 다닐 때 함께 들고 다니는 마우스, 어뎁터 등을 포함하면 일반적으로 노트북 들고 다니는데 3Kg 이상은 감당해야 한다. 적어도 노트북을 파우치에 넣고 다닌다든지, 버스나 길거리에 앉아 노트북으로 작업을 해야 하거나 하지 않는다면 난 보통 무게보다는 성능에 초점을 맞추어 노트북을 추천하곤 한다.

 저번까지 쓰던 노트북은 HP nx6120이였다. 15인치에 해상도가 1450 * 1050 까지 올라가는 고해상도 제품이였다. 예전부터 모니터는 최고 해상도에서 넓은 화면을 사용하는데 익숙한 터라 고해상도 노트북이 필요했었다.

 삼성 R70-W203의 장점은 다른 것보다는 일단 LCD 해상도이다. 1680 * 1050을 지원하는 WSVGA패널을 사용하여 넓은 화면을 지원한다.

 삼성이 한달마다 새로운 제품을 출시하다 보니, 제품의 사양이 정확히 기록된 사이트가 많지 않았다. 내가 노트북 구입할 때 가장 초점을 맞추었던 것이 해상도이다 보니 다른 쪽은 신경을 못 썻었다. 혹시 구입하실 분들을 위해 착오할 수 있는 부분에 대해 간단히 설명해 보겠다.


1 ) 해상도

1680 * 1050 (WSVGA) 지원 됨

2 ) 메모리

내가 구입한 제품의 경우 1G 메모리가 1개 꽂혀있었음
설명에는 512Mb가 두개 꽂혀있다 해서 삼성 노트북 램을 2개 구입하여 바꾸어 꽂았고
듀얼체널로 자동으로 구성됨

참고로 요즘 노트북 메모리 값이 점점 하락하고 있음.
내가 구입할 때 1G 당 25,000에 구입했었음

3 ) 산타로사 플랫폼 ?

사실, 내가 정확히 산타로사 플랫폼에 대해 파악한 게 아니라 정확하지 않은 정보가 섞일수도 있지만 한번 간단히 적어보겠다.

산타로사 플랫폼은, 일종의 노트북 하드웨어 구성 자체를 의미하는 것으로

일단, CPU의 FSB(800MHz), L2캐쉬 증가(4M)
터보메모리, Hybrid HDD, 무선랜 802.11n 등등
(터보메모리나 Hybrid HDD의 경우 필수요소는 아니라고 알고 있음)

무선랜 802.11n 없는 것으로 알고 있다.
터보메모리... 장착되지 않은 것으로 알고있고
Hybrid HDD... 아닌 것으로 알고있다.
단적으로 말해서 R70-W203은 산타로사 플랫폼이 아닌 듯 하다.
CPU의 규격만 산타로사를 따른다고 해서 완벽한 산타로사라고 말하기에는 좀 힘들기 때문에...

터보메모리나 Hybrid HDD 를 사용하고 싶은 분들께 참고로 조언 하나 드리자면
위 두개의 기술은 현재 Windows Vista에서 지원하는 기술으로, XP를 사용하실 경우 사용이 불가능하다.
XP에서 위 기술들을 차후에라도 사용하게 될 수 있을지는 장담 못하겠다.

현재 Vista는 별로 쓸만한 운영체제가 아니라는 게 일반적이다.
노트북이 처음 왔을 때, Vista의 작업 관리자를 띄워서 점유 메모리를 확인해 봤는데
(그러니까... 아무 프로그램도 깔지 않고 기본적인 삼성 제공 소프트웨어와 운영체제만 설치되었을때)
800Mb에 가까운 메모리를 점유한다.

참고로 내가 현재 지금 이 글을 쓰면서

1. 익스플로러 3개를 띄우고
2. 멜론 플레이어에 음악을 재생
3. 구글 데스크탑이 띄워져있음
4. 네이트온 메신져 로그인
5. V3 2004 동작 중

일때의 점유 메모리 양이 650Mb 정도이다.

나처럼 "Vista를 절대 쓰고싶지 않다" 라고 생각한다면, 노트북을 살 때 적어도 Hybrid HDD나 터보 메모리는 없는 기종으로 구입해도 무방할 듯 싶다. 물론 나중에라도 생각이 바뀔때를 생각한다면 모르겠지만...

※ 혹시 이 글에 대해 잘못된 것이나, 제품에 대해 궁금한 점이 있으면 댓글 부탁드립니다. 제가 아는 선에서 최대한 도와드리겠습니다.

'리뷰 > Electronics' 카테고리의 다른 글

삼성 Vluu i7  (0) 2008.02.21
삼성 R70-W203 노트북 리뷰  (0) 2007.10.19

1. 프레젠테이션 작성 시작

역시나, 시작이 반이라는 기분으로 프레젠테이션 작성 시작


2. 삭제된 파일을 i-node로 직접 접근 가능한지 테스트

테스트 방법은 다음과 같이

1. 내용이 있는 파일을 생성
2. 파일의 i-node를 stat 명령을 이용하여 확인
3. read( int filedes, char* buf, size_t nbyte ) 함수의 filedes 인자에 직접 i-node를 넣어봄
4. 버퍼의 내용을 출력

결과는... 택도 없다...

애초에 접근 방법부터 잘못됬다.

read 함수의 첫번째 인자는 file descriptor 이므로, i-node를 넣으면 안된다.


* 오늘 작업 결과

애초에 택도 없는 삽질을 했다.
책을 조금이라도 읽어보고 시작했다면 삽질을 줄일 수 있었을테지만...
책이 원서라 -_-;;;;

공부하는 셈 치고 책을 좀 읽어야겠다는 생각이 든다.

오늘 얻은 성과는 -_-;;; 프레젠테이션을 작성하기 시작했다... 정도? -_-;;;


* 다음 진행 작업

일단은 함수의 존재 유무 또는 함수의 사용방법을 익혀야 한다.

찾아야 하는 함수는...

1. 파일 시스템에서 i-node table 을 읽어오는 함수
2. 읽어온 i-node의 정보를 확인하거나 구조체로 읽어오는 함수
3. 파일 시스템에서 원하는 위치의 block을 읽을수 있는 함수
4. i-node의 정보를 변경할 수 있는 함수

일단은... 이정도?

coreutils에서 stat이라는 함수를 찾아보면 어느 정도 실마리가 보일 듯 하다.

'공부 > [2007] 유닉스 프로그래밍' 카테고리의 다른 글

2007/10/19 작업 내용  (0) 2007.10.19
2007/10/15 작업 내용  (0) 2007.10.15

+ Recent posts