개소리 왈왈2009. 2. 28. 00:07
써글넘의 uP(마이크로프로세서/마이콤) 땜시 오늘 뜬금없는 용량 싸움을 해댔다.
이전에 사용하던 것은 16KB 인데, 재고는 8K 짜리뿐 ㄱ-

프로그램은 12KB 이고, 줄여야 할 용량은 4K 이다.

1K = 1024Byte인데.. 하아..
머가 이리도 줄이기 어려운지 ㅠ.ㅠ

Keil 에서 size optimization해도 꼴랑 50byte 줄어 들고 ㄱ- 아놔 장난해? 맞을래열?
그래서 결국에는 함수를 줄이기로 결정 -ㅁ-!
게다가 쓸데 없이 늘어난 각종 switch 문 정렬!
결국에는 우여곡절끝에 4KB를 줄이고 8KB에 간당간당하게 넣었는데..

젠장 기능 하나가 작동을 안한다 ㄱ-


일단 흔히 쓰는 printf나 sprintf를 include 하게 되면(그러니까 stdio.h 라던가)
300byte가 늘어 난다. 어떻게 보면 sprintf나 printf의 막강한 기능에 비하면 상당히 작은 용량이지만
내장 플래시 용량 8K에 300byte는 참으로 크다..

  


결론 : 내가 짠건 아니지만, 이전에 짠 프로그래머 찾아서 뼈와 살을 발라 버리고 싶다.
Posted by 구차니
개소리 왈왈2009. 2. 27. 10:06
데니즈T님은 중학생이시다.
개띠 띠동갑인데 내 나이가 얼마 안되니 2띠는 아니고 1띠 동갑인가 보다.

내가 몇살이었떠라 =ㅁ=

아무튼!
내가 처음 인터넷이란것을 접한때는 98년 포항제철(현 포스코)에서
internet expo를 시민들에게 맛보게 하기 위해서 포항 종합 운동장에 컴퓨터와 인터넷을 설치 했을 때였다.
그 때는 Internet Explorer 따위는 웹브라우저도 아닌 정말
MS에서 번들로 끼워 넣은 브라우저에 불과 했었는데, 지금은 Netscape Navigator는 사라지고
후속 프로젝트로 Mozila 재단에서 FireFox로 다시 브라우저 시장의 제왕을 노리는 것을 보면 참 세상이 재미 있기만 하다.



98년도에는 고등학교 2학년이었던가..

물론 그 이전, 중학교 때에도 인터넷은 존재했고 접속은 힘들지만 천리안을 통해서 SLIP로 접속했었다.
덕분에 집에서 전화비 매달 10만원나왔었고 죽도록 혼났었다. 엄마는 전화기 들면 들려 오는 소음에 놀랐고
다른 사람들은 전화가 안된다고 어디에 맨날 그렇게 통화중이냐고 그랬었으니 말이다.

그 때는 Windows3.1에 Winsock을 설치해서 netscape로 인터넷을 했었는데, 이 넘의 winsock이 불안정한데다가
windows3.1의 환상적인 메모리 관리 능력으로 인해 허구한날 메모리 부족을 뱉어 냈었던 때라서 인터넷도 힘들었다.

나중에 천리안이 Win95용 접속 프로그램으로 유니텔을 따라서 웹 환경으로 전환하고,
그러면서 매우 편하게 인터넷질을 하게 되었으니, 전화비의 악몽은 계속 되었다.

그렇게 힘들게 56K로 인터넷 하다가 T1급(1.5Mbps)이 설치된 internet expo 에서 초고속 접속을 느끼는 쾌감이란!
56k 모뎀으로는 1메가 받는데 4KB/s 의 속도로 대략 256초 즉 5분 가량 걸렸었다. 그 이전에 28.8K 모뎀은 10분이었으니
요즘의 고화질 사진에 못미치는 jpg를 보려고 하면 한참을 기다려야 했다.

그런데 T1을 연결해놨으니 팍팍팍! 오노~ 이것은 천지개벽이며, 놀라운 신세계였다.
그렇게 알게 모르게 Internet expo는 지나갔고 2000년이 오면서 ADSL / Cable Modem의 싸움은 시작이 되었다.
아파트 단지를 중심으로 시작된 싸움은 사용자에게 저렴한 가격으로 고속 인터넷을 제공하였고,
2001년 까지도 모뎀을 쓰다가 군대를 갔다온 2004년에서야 케이블 모뎀을 설치했다.

아무튼 이야기가 많이 샜지만.. ㄱ-
모뎀이라는 환경에서 자란 세대와, 초고속 인터넷이 기본 환경으로 자란세대
그리고 척박한 대지 위에 자라난 잡초같이
나보다 더 어린 새싹들이 강인하게 자라났으면 하는 바램이 든다.

그래도 지금은 그 때 보다는
조금 더 정보가 구하기 쉬우니 말이다..


결론 : IT강국이 되려면 애들이 소모성 게임 좀 못하게(응?)

[IE 역사 : http://www.microsoft.com/windows/ie/community/columns/historyofie.mspx]

'개소리 왈왈' 카테고리의 다른 글

간만에 MD를 꺼내 봤습니다.  (2) 2009.03.04
8K의 행복  (6) 2009.02.28
200개 글 돌파 기념 그런거 없음!  (2) 2009.02.24
소시쥐 뒤질래? ㅡㅡ^  (0) 2009.02.23
연필의 느낌이 그립다.  (5) 2009.02.22
Posted by 구차니
Microsoft/Office2009. 2. 26. 22:01
parental control 이라는 아랍문장이라도 생각이 된다(아마도? ㅋ)
아무튼 이녀석을 내가 만든 조합기로 출력을 했더니 엑셀과는 다르게 나왔다.
그런데 이거 먼가 이상하다!!!

클릭만 했을 때

F2를 눌러 문자열 편집을 눌렀을 때

아니 도대체 왜 편집모드랑 보기 모드랑 다른거야!!! 라고 외치고 있었는데, 폰트가 '맑은 고딕' 으로 되어 있었다.
그래서 혹시나 하는 마음에 아랍어 폰트가 내장 되어 있는 다른 폰트로 교체 했다.
참고로 위의 폰트는 Arial 에 포함되어 있는 글자체다.

젠장 제대로 나오잖아!!!

MS는 역시 마소라서 사람말을 제대로 이해 못했나보다
Posted by 구차니
CollabNet Subversion Server and Client v1.5.5 (for Windows) 를 다운로드 하려면 가입이 필요하다.

설치 화면은 간단한데 svnserve와 apache용 MOD_DAV_SVN을 옵션으로 고를 수 있다.

svn 서버 설정화면으로 포트와 repository를 정해주면 된다.

설치를 완료 하면 자동으로 c:\svn_repository 가 생성된다.
하지만 내용이 하나도 없어서 svn이 접근을 하지 못한다는 에러가 발생한다.

그리고 "Install svnserve to run as Windows service" 일뿐, service가 실행되지는 않는다.
물론 리부팅하면 자동으로 시작이 되긴하겠지만, 설치 직후 안된다면 service가 실행시켜 주면 된다.


authorization failed가 뜨면 아래의 링크를 참조하여 해결하면 된다.

5) Configure permissions for the repository

  • Open with notepad the repository configuration C:\SVNREPOSITORY\conf\svnserve.conf
    and paste just the following lines (remove everything else):
    [general]
    anon-access = none
    auth-access = write
    password-db = passwd.conf
    authz-db = authz.conf
    #realm = My First Repository

    Please note that I renamed "passwd" to "passwd.conf" and "authz" to "authz.conf" both
    in the config file here, and in the filesystem too, so I can just associate the conf extension with notepad and make my life easier.

    Note also that when a realm is not specified, it will be assumed to be the repository guid (created when you created repository). Realms should be unique among different repositories, unless you want to share the same permissions among them.
  • Rename authz to authz.conf
  • Rename passwd to passwd.conf
  • Open passwd.conf with notepad and put some users/passwords by pasting the following lines (remove everything else):
    [users]
    admin = qwerty147
    ricardo = pwd123
    marcelo = pwd456
    joao = pwd789
  • Now open authz.conf with notepad and paste just the following lines (remove everything else):
    # guests will have read permission in all repository
    # writers must include all non-admin users who must have write
    #    permission on some folder (read permission on root is needed for that)
    [groups]
    admins = admin, ricardo
    writers = marcelo
    guests = joao
    project1 = marcelo

    [/]
    @admins = rw
    @writers = r
    @guests = r
    * =

    # please note that permissons (ex: admins group) don't propagate from root to subprojects
    [/Project1]
    @project1 = rw
    @admins = rw
    * =
  • Now you can try again mkdir:
    C:\>svn mkdir svn://localhost/Products
    Authentication realm: e9852c7c-f11f-1946-b4a8-49fa8b53a267
    Password for 'Ricardo': ******


    Please note that it will by default assume your username is the same as your windows login. If it is not, just put any password, and it will ask you for your correct username.
  • If everything went ok you will get a message like "Committed revision 1"

    Congratulations! You have made your first change to the repository.

    Now let's create another folder: C:\> svn mkdir svn://localhost/Projects
    The password won't be asked this time, because it's cached for your user (Documents and settings\username\Application Data\Subversion\auth\)

[출처 : http://www.smarter-technologies.com/smarter/Default.aspx?tabid=128&EntryID=12]

svn_repository의 내부 구조 & conf 내용물들

svnserve.conf의 기본 내용. 전부 주석처리다 ㄱ-

passwd는 사용하는 계정에 대한 아이디/암호를 저장한다.

이녀석은.. 아무튼 인증파일이다. 특정 리파지터리에 특정 유저의 권한을 설정한다.



심심해서 해본 뻘짓

[다운로드 : http://www.collab.net/downloads/subversion/] <- 가입필요
[다운로드 : http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91]

'프로그램 사용 > Version Control' 카테고리의 다른 글

CVS / SVN 차이점?  (2) 2009.03.06
SVN 사용기  (0) 2009.03.05
TortoiseSVN 사용하기  (2) 2009.02.26
TortoiseSVN - Svnserve Based Server  (5) 2009.02.26
cvs 서버 설치 / 복원  (2) 2009.01.22
Posted by 구차니
CVS의 경우는 CVSNT 와 TortoiseCVS로 서버 및 클라이언트 환경을 구축할 수 있다.
하지만 SVN의 경우는 TortoiseSVN만으로도 서버를 구축 할 수 있다.
물론 svn:// 으로 접속은 하지 못할지라도 말이다(아직 설정법을 모르니 혹시 모름)

ToroiseSVN을 설치 하면 다음과 같은 context-menu가 생긴다(현재 빵집/CVS/SVN/WinMerge가 설치되어 있다)

CVS에서도 그러했 듯, SVN에서도 repository는 있어야 한다.
아무것도 없는 빈 폴더를 하나 만들고, 그 안에서 Create repository here를 눌러준다.

아래의 파일들이 생성되며 repository가 생성되었다는 메시지가 뜬다.
d:\svn_repo 라는 경로로 생성했다.

일단은 SVN에 저장할 파일을 찾아본다. 원하는 폴더를 클릭해서 Import 한다.

Import 에서는 저장할 repository의 경로를 넣어준다.
위에서 d:\svn_repo에 저장소를 생성했으므로 file://d:/svn_repo가 URL이 된다.

import가 완료되었다.
(repository에 파일이 Add 되었다)

저장소에 넣었으니(import) 이제 저장소에서 꺼내오자(checkout)
경로는 저장한 경로와 동일하게 넣어 주고, 받아와서 저장할 경로를 지정해 준다.
아까는 경로를 지정해 주지 않았으므로 받을 곳에 디렉토리를 하나 추가해준다.

checkout 장소에 파일이 Add 되었다.

SVN 클라이언트가 있으면 체크가 생긴다. 녹색은 서버와 동일하다는 의미이다.
빨간색은 서버와 동일하지 않은 내용이 담겨 있다는 의미이다.

TortoiseSVN의 가장 강력한 점은 바로 Repositoty Broswer가 아닐까 생각이 된다.
원래 file://d:\svn_repo에 존재하던 po 파일들을, Create Folder를 사용하여 po를 만들고
단순하게 드래그 해서 po로 넣었더니 간단하게 이동이 되었다.
CVS는 경로이동이 불가능 한 단점이 있는데 SVN은 이렇게 편하게 이동 할 수 있다.

TortoiseSVN에 내장된 Merge 툴이다.

Checkout 창에서 Show Log를 누르면 뜨는 창
revision은 cvs는 파일별로 생겼지만, svn은 전체 저장소에 대해서 생성이 된다.
어떻게 보면 더욱 좋은것이, 태그의 확장 판으로 어떠한 행동을 했었는지 추적이 가능하고
그 때 이후의 버전을 세부적으로 받아 올수 있다. 이러한 작업은 CVS에서는 매번 tag를 해야만 가능하다.

위의 창에서 통계를 누른 모습이다. cvs에서는 역시 볼 수 없었던 기능이다.


예전부터 설치만 해 놓고 쓰지 않던 svn을 끄집어 내서 한번 서버 설치를 해보려니 결국은 또 실패로 돌아 갔다.
하지만 이렇게 클라이언트/ 개인용 서버로 사용하는 법이라도 알았으니 위안으로 삼고,
다음번 문서에 svnserve로 공용 서버 만드는 법만 추가 하면 될 듯하다.
Posted by 구차니
프로그램 사용/poEdit2009. 2. 26. 00:23
어우 깜놀~! 심심해서 SVN 언어팩 설치 하다가 많이 보던 녀석이 눈에 띄었다.
생각해보니 Poedit 이라는 GNU 다국어지원 프로그램으로 생성되는 확장자이다.
po 라는 text 기반 파일이 컴파일 되어 mo 파일이 생성이 된다.

SVN 언어팩 설치 하면서 생긴 폴더들과 파일

Poedit을 실행한 화면, 예제는 번역중인 UFO:AI의 영문파일이다.

번역중인 UFO:AI의 po 소스 파일 디렉토리이다. pot는 po template로 파워포인트 서식 파일이 아니다.
이 파일을 기반으로 po를 생성해주며, 이파일을 컴파일 하면 mo가 된다.

[공식 : http://www.poedit.net/]

'프로그램 사용 > poEdit' 카테고리의 다른 글

poEdit의 TM을 이용한 자동번역  (0) 2011.12.23
poedit - Translate memory 도움말 번역  (0) 2011.12.21
L10N / I18N  (0) 2009.04.08
gettext - multi language support  (2) 2009.03.09
Posted by 구차니
솔찍히 내가 TortoiseCVS Client for Windows에 쩔어 있어서
콘솔에서 명령어로 체크아웃 할지도 모르고, SVN에는 손이 가지 않는다.

SVN의 장점으로는 디렉토리 이동 등이 있다는 것도 알고,
CVS에서 SVN으로 이전도 그리 어렵지는 않다고 하지만,

가장 큰 문제는, 나 혼자 사용하는 SVN 서버가 아닌
다른 사람들도 접속할 수 있는 SVN 서버를 만드는 법을 모른다는 것이다.

아무튼! 용기를 내서 한번 문서를 뒤적이다가 발견했는데..
TortoiseSVN Client for Windows help에 있었다.. OTL 역시 등불밑이 가장 어두운 것인가..


키워드는 svnserve 이다.

Running svnserve

Now that svnserve is installed, you need it running on your server. The simplest approach is to run the following from a DOS shell or create a windows shortcut:

svnserve.exe --daemon

svnserve will now start waiting for incoming requests on port 3690. The --daemon switch tells svnserve to run as a daemon process, so it will always exist until it is manually terminated.

If you have not yet created a repository, follow the instructions given with the Apache server setup the section called “Configuration”.

To test that svnserve is working, use TortoiseSVNRepo-Browser to view a repository.

Assuming your repository is located in c:\repos\TestRepo, and your server is called localhost, enter:

svn://localhost/repos/TestRepo

when prompted by the repo browser.

You can also increase security and save time entering URLs with svnserve by using the --root switch to set the root location and restrict access to a specified directory on the server:

svnserve.exe --daemon --root drive:\path\to\repository\root

Using the previous test as a guide, svnserve would now run as:

svnserve.exe --daemon --root c:\repos

And in TortoiseSVN our repo-browser URL is now shortened to:

svn://localhost/TestRepo

Note that the --root switch is also needed if your repository is located on a different partition or drive than the location of svnserve on your server.

Svnserve will service any number of repositories. Just locate them somewhere below the root folder you just defined, and access them using a URL relative to that root.


Run svnserve as a Service

Running svnserve as a user is usually not the best way. It means always having a user logged in on your server, and remembering to restart it after a reboot. A better way is to run svnserve as a windows service. Starting with Subversion 1.4, svnserve can be installed as a native windows service.

To install svnserve as a native windows service, execute the following command all on one line to create a service which is automatically started when windows starts.

sc create svnserve binpath= "c:\svnserve\svnserve.exe --service 
--root c:\repos" displayname= "Subversion" depend= tcpip
start= auto

If any of the paths include spaces, you have to use (escaped) quotes around the path, like this:

sc create svnserve binpath= "
\"C:\Program Files\Subversion\bin\svnserve.exe\"
--service --root c:\repos" displayname= "Subversion"
depend= tcpip start= auto

You can also add a description after creating the service. This will show up in the Windows Services Manager.

sc description svnserve "Subversion server (svnserve)"

Note the rather unusual command line format used by sc. In the key= value pairs there must be no space between the key and the = but there must be a space before the value.




[출처 : http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-serversetup-svnserve.html]
Posted by 구차니
프로그램 사용2009. 2. 25. 10:58
그러고 보니.. 스킨을 항상 기본 스킨으로 만 사용을 했었다. 귀찮은것도 있고, 익숙하니까.
아무튼, 간만에 스킨이라는 녀석을 사용하기 위해서 Winamp lite 버전에서 Full버전으로 까지 업그레이드를
단행할정도로 심하게 뽐뿌질이 왔다.


대충 그려 만든 듯한 스킨인데 꽤나 마음에 든다.
근데.. 이퀄라이저는 정말 처음에는 어떻게 써야 하나 고심을 ^^;

[링크 : http://www.winamp.com/skins/details/144550]
Posted by 구차니
바빠야 딴생각이 안드니까
일부러 점점 더 빠르고 바쁘게 세상을 만들어 가는 게 아닐까 생각이 들었다.

누가?

아마도 무언가를 숨기고 싶은 그 누군가겠지..
Posted by 구차니
분류가 모호한 글2009. 2. 24. 14:13
일반적으로 많이 사용하는 포맷을 사용하여 비교해 봅시다~!


24bit 9478 byte / GIF 1971 byte

   jpeg 1508 byte / PNG 4270 byte

그림이 작아서 티가 안나는군요 -ㅁ-
그래도 자세히 보면 GIF는 색상이 깨져서 보기가 싫습니다.

그럼 16배 확대를 해보도록 하겠습니다
(웹 브라우저 자체 기능으로 늘렸기에 브라우저 마다 차이가 있을 수도 있습니다.)



24bit 9478 byte / GIF 1971 byte


   jpeg 1508 byte / PNG 4270 byte


원본 사이즈 가로 50px 를 가로 4배 확대하여 총 16x 한 이미지 입니다.
bmp의 경우 아마도 티스토리에서 업로드 시 bmp면 자동으로 jpeg으로 변환하기 때문에
이미지가 jpeg 처럼 일그러 지는 현상이 발생을 합니다.
jpg의 경우 경계가 심하게 뭉게지며, GIF는 컬러 부분이 디더링으로 인해 보기가 싫어집니다.
가장 무난한 선택은 png로 보이며 TIFF의 경우 티스토리에서 지원하지 않아 제외 되었습니다.

jpg의 경우 일반적인 사진(글씨가 없는)에 적합하며
GIF는 움직이고 투명하게 할 수 있다는 점을 제외하면 특별한 장점이 없습니다

저의 경우에는 사진들 보다는 컴퓨터 자체의 이미지를 사용하기 때문에
jpg는 적합하지 않기 때문에(라인이 뭉개져서 글씨의 경우 알아 보기 힘듦)
png 를 주로 사용하여 업로드하고 있습니다.


추가적으로 IE와 FireFox 에서의 차이점을 보여 드리자면 다음과 같습니다.
FireFox는 후처리를 통해서 약간은 뿌연듯한 느낌이 듭니다.
 

FF에서 출력한 것을 PNG로 저장 / IE에서 출력한 것을 PNG로 저장

'분류가 모호한 글' 카테고리의 다른 글

확장자 sgm  (2) 2009.04.03
mp3 ID3 tag  (0) 2009.04.02
MD(Mini Disc) / UMD(Univeral Media Disc)  (0) 2009.03.03
gray code  (0) 2008.12.22
불 대수(Boolean Algebra)  (4) 2008.12.19
Posted by 구차니