언젠가는 이 주제에 대해서 글을 좀 쓸까 벼르고 있었는데, 얼마 전에 이것 때문에 제대로 빡치는 일이 발생하여 드디어 글로 옮기게 되었다.

우리나라의 육상 교통수단 중에 승차권 발권의 정보화/전산화가 압도적으로 가장 잘 되어 있는 곳은 단연 철도이다.
그 다음은 고속버스이다.
그리고 가장 열악한 곳은 시외버스이다.

물론 이는 어찌 보면 당연한 결과인지도 모른다. 전국의 모든 길을 정부 기관 내지 국가 공기업이 일률적으로 장악해 있는 철도하고, 일개 사기업들 나부랭이로 이루어진 버스 회사와는 인프라의 비교 자체가 공정하지 않을 것이기 때문이다.

철도는 일찌감치 승차권의 중앙 집권 전산 발매가 시작되었으며 회원 관리와 포인트 적립, 인터넷을 통한 예매, 홈티켓, SMS 티켓 등 별별 시스템이 다 있었다. 예매를 장려하기 위해 역마다 무인 승차권 발권기를 잔뜩 비치했으며, 사실은 심지어 일부 여행사를 통해 승차권 대리 발권조차도 되었다.

특히 철도청 시절의 바로타 사이트는 신용카드가 없는 학생도 얼마든지 계정을 만들어서 좌석을 찜한 후, 실제 발권과 결제는 무려 며칠 뒤에 역에 가서 현금으로 해도 되었다. 요즘처럼 예매하자마자 바로 결제해야 하는 구조가 아니라, 유예 기간도 굉장히 관대했던 것이다. (지금은 매점매석 같은 부작용 때문에 많이 엄격해졌지만)

요즘은 카드만 있으면 열차 탈 때 종이 승차권을 발권할 필요 자체가 없다. 한두 ActiveX 컨트롤만 설치한 뒤 카드 번호와 카드 비번, 주민 등록 번호 뒷자리를 입력하면 결제가 되며, SMS 티켓 발권만 하면 완전히 끝이다. 이보다 편할 수가 없으며 본인도 열차 탈 때 이 서비스를 적극 잘 활용하고 있다.

고속버스도 꽤 오래 전부터 신용카드를 이용한 예매 정도는 지원하기 시작했다. 비록 철도만치 대인배스러운 시스템은 아니지만, 최소한의 기능은 갖췄다.
ActiveX 몇 개 깔아 준 뒤 카드 번호와 유효 기간, 주민 등록 번호 같은 필수 정보를 입력하면 별 어려움 없이 예매가 가능하다. 특히 고속버스는 예매할 때 자리를 직접 고를 수 있다는 아주 큰 장점이 있다.

다만, 카드로 승차권을 샀더라도 실제 발권을 위해서는, 그 카드를 지참하여 터미널 창구로 가야 하는 불편이 여전히 있었다. 그래서 철도에서는 진작에 도입됐던 홈티켓 발권 시스템을 고속버스도 비교적 뒤늦게 도입한 모양이다. 그리고 강남 고속버스 터미널에 가 보면 제한적이지만 예매 승차권 무인 발권기도 있다.

하지만 시스템이 제일 안습인 건 시외버스.
불과 몇 년 전까지만 해도 카드 결제 자체가 안 됐다! 그것도 지방 영세 터미널도 아니고 엄연한 서울의 관문인 동서울 터미널에서도 말이다. 이런... -_-;;

상경했다가 고향으로 돌아가시는 부모님의 차표를 마련해 드려야 할 일이 있었다. 부모님은 강남 고속버스 터미널보다 동서울 터미널을 훨씬 더 선호하셨다. 미로 같이 너무 복잡한 전자보다--강남 고속 터미널의 지하 상가는 얼마나 복잡한가!-- 후자가 지하철 역에서 가기가 훨씬 더 편하고, 버스의 운임도 더 쌌기 때문이다.

본인은 지금까지 시외버스는 인터넷 예매라는 개념이 없는 걸로 알고 있었고, 시외버스를 나중에 타야 할 일이 있으면 터미널을 직접 방문하여 표를 사 오곤 했다. 21세기 IT 강국 대한민국 땅에서 아직도 그런 원시적인 만행이 저질러진 것이다.

그런데 동서울 터미널 사이트를 보니까 예매도 되는 것 같아서 예매를 시도했지만... 포기하고 말았다.
아무리 ActiveX를 깔아도 뒤로 넘어가질 않고, 맞는 카드 번호를 입력해도 다음 화면으로 넘어가질 않고... 아니, 카드 번호를 입력하기 전에 카드 종류를 고르라는 화면은 철도나 고속버스 예매 때는 전혀 접하지 못한 듣보잡 인터페이스였다. 휴대전화 인증에, 카드 뒷면에 있는 인증 숫자 3자리를 입력하라는 말도 완전 처음 봤다. 이뭐병...;;

결국 포기하고 고속버스를 시도했다. 고속버스는 승차권 결제는 별다른 문제 없이 바로 OK. 그런데 기왕이면 그렇잖아도 복잡한 고속버스 터미널에 갔는데, 차만 바로 타면 되게 집 프린터로 홈티켓을 발권하고 싶었는데... 여기서 막혔다.

홈티켓을 출력하는 ActiveX 클라이언트는 무슨 이유인지 64비트 OS를 지원하지 않는다며 동작을 배째라 거부했다. 32비트 OS인 노트북에서 PDF 출력을 시도하니 가상 프린터 드라이버라고 또 거부.. ㅆㅂㄹㅁ;;
아놔 도대체 32비트랑 64비트의 차이가 뭡니까.. -_-;;

하긴, ActiveX만 잔뜩 깔아 놓으려고 윈도우 XP를 가상 머신으로 돌려 놓아도 각종 보안 솔루션들이 아예 가상 머신을 감지하고 거기서는 안 돌아간다고 하니 그것도 낭패이다.

철도처럼 버스도 간단하게 결제 후 SMS 티켓으로 끝이라면 얼마나 좋을까?
그러면 버스 출발 직전에 검표하는 아저씨는 승차권 반쪽을 쭉 뜯어서 회수하는 게 아니라, 승객들의 휴대전화 화면을 검사하기만 하면 될 것이다.

어휴, 그래도 시외버스는 시스템이 열악한 대신, 운임이 말도 안 되게 싸니까 용서된다.
경주-서울을 아직까지 2만원이 채 안 되는 저렴한 운임으로 4시간대에 그것도 우등 좌석으로 주파 가능한 실속 있는 교통수단은 시외버스가 유일하니 말이다.

사실, 시외버스와 우등 고속버스와 새마을호 열차의 운임은 거의 등차수열 관계이다. 편리한 시스템이 갖춰진 대신 운임도 정말 차이가 난다는 사실을 알 필요가 있다.

덧.
1. 요즘은 전국 방방곡곡에 고속도로가 워낙 거미줄처럼 많이 깔려서 시외버스와 고속버스의 구분 자체가 많이 무의미해져 있긴 하다. 요즘은 터미널도 두 버스 시스템을 모두 취급하는 통합 터미널로 건설하는 게 유행이다.

2. 비행기는 일단 탑승객의 신원을 신분증으로 무조건 파악하면서 다니는 교통수단이다 보니, 철도처럼 별도의 회원 가입 시스템을 안 만들어도 주민 등록 번호 자체가 회원 ID 같은 역할을 한다.
그래서 명목상으로는 홈티켓 같은 게 있지만, 탑승권을 구입한 후 국내선의 경우 신분증, 그리고 국제선의 경우 여권 하나만 달랑 들고 가도 공항에 가면 조회가 다 된다. 다만, 마일리지 적립 같은 개념이 아주 철저하게 존재하기 때문에 회원 제도가 불필요한 건 아님. 비행기는 갈 때는 이 항공사, 올 때는 저 항공사로 이용하기가 꽤 곤란한 교통수단이다. 철도의 각종 복잡한 회원 제도 자체가 사실은 상당수가 항공에서 모티브를 딴 것이다.

Posted by 사무엘

2010/05/12 09:03 2010/05/12 09:03
, , ,
Response
No Trackback , 4 Comments
RSS :
http://moogi.new21.org/tc/rss/response/266

인스톨쉴드 싫어

오늘은 설치 프로그램이라는 주제로 이야기 보따리를 풀어 보겠다.

과거 도스+윈도우 3.1 공존 시절에는
도스용 프로그램들은 어떤 소프트웨어의 설치 프로그램의 이름은 대개 install이었던 반면,
윈도우용 프로그램들은 어찌 된 영문인지 다들 setup이었다.
그리고 그 시절에 윈도우용 설치 프로그램들은 전체 화면으로 파랑-검정 그러데이션이 배경으로 쫙 깔리는 게 유행이었다. 그러면서 화면 좌측 상단엔 큼직한 흰색 글씨로 "무슨무슨 프로그램 설치/Setup"이 떴지. (짤방은 귀찮아서 생략-_-)
이걸 기억한다면 당신은 진정한 old timer.

그러다가 윈도우 95가 보편화하면서 전체 화면 배경은 그냥 옥색(cyan) solid로 바뀌었다.
MS 오피스 97과 아래아한글 97의 설치 프로그램이 그런 모양이었다.

그러나 그때와 지금의 근본적인 차이는.. 이제 설치 프로그램은 더는 전체 화면을 점유하는 형태로 실행되지 않는다는 것이다. 유행이 확 바뀌었다. 그냥 간단한 마법사 대화상자 하나만 달랑 뜨는 형태로 극도로 간소화됐다. 소프트웨어 설치가 무슨 게임 실행도 아니고... 그 정도로 유세 부릴 프로세스는 아니게 되었다는 의미.

MS 제품의 경우 Windows Installer 기술이 최초로 도입된 오피스 2000부터 설치 프로그램 UI가 싹 바뀌었으며, 아래아한글 역시 2002부터는 설치 프로그램이 마법사 대화상자 하나만 달랑 나올 뿐 전체 화면으로 뜨지 않는다.

사실 소프트웨어의 규모가 복잡해지고 한 제품도 온갖 버전 구분이 존재하게 되면서,
제대로 된 설치 프로그램을 만드는 것도 굉장히 골치 아프고 까다로운 일이 돼 있다.
단순히 파일을 복사했다가 지우는 것 이상이다. 예를 좀 들자면,

- 동일 제품의 여러 버전이 공존하고 이들이 다 한데 공유하는 파일이 있는데 이 파일은 언제 제거해야 하나? 그런 거 체크 리스트를 어떤 자료구조로 구축해야 하나?
- 그런 자료구조가 깨졌을 때 최대한 복구는 어떻게 하면 좋을까? 그리고 확장자 연결 복구는?
(사용자는 1.0과 2.0 중 어느 걸 먼저 설치할 수도 있고, 그 후 2.0과 1.0 중 어느 걸 먼저 제거할 수도 있다. 프로그램 설치/제거는 획일화된 스택이나 큐 구조가 아님. ㅋㅋ)
- 지금이 이전에 설치를 진행하다가 중단된 상태였는지 판단은?
- 지금 당장 건드릴 수 없는 파일을 건드려야 돼서 그걸 다음 재부팅 때 하도록 예약해 놓은 게 있나?

글 쓰면서 당장 떠오르는 복잡도만 생각해도 저 정도이다.
특히 재부팅 때 건드릴 파일을 예약하는 기법이나, 지금 실행돼 있는 프로그램 목록을 얻는 방법은.. 설치/제거 프로그램을 만들 때 반드시 필요한 동작임에도 불구하고 과거에 윈도우 9x과 NT 계열이 테크닉이 서로 완전히 달랐다. 유니코드 지원 여부 같은 차이도 존재하고.. 그러니 짜증 두 배.. -_-

예전에도 글을 쓴 적이 있지만, uninstall 프로그램을 만들 때 필요한 것이, 바로 자기 자신을 제거하는 기법이다. 윈도우 운영체제는 그 특성상 실행 중인 EXE/DLL은 운영체제가 memory-mapped file로 대응시켜 잡고 있기 때문에, 자신을 제거할 수 없다.
하지만 배치(일괄 처리 bat) 파일은 DEL 명령으로 자신을 제거할 수 있다. 그래서 EXE를 제거한 뒤 자기 자신을 제거하는 비밀 배치 파일을 만들어 실행하는 기법으로 자신을 제거하곤 한다. 리눅스나 맥은 사정이 어떤지 모르겠다.

이런 저런 사항도 있고, 아무튼 프로그램 설치/제거 및 버전 관리 기법은 어느 소프트웨어에서나 공통적으로 쓰이는 개념/테크닉만 뽑아내서 운영체제 차원에서 책임을 져 준다거나 어느 잘 만들어진 미들웨어를 쓰는 게 효율적이다.
그래서 진작부터 프로그램 설치/제거 솔루션이 나와 있었다. 가장 역사가 긴 녀석은 역시 InstallShield이다. 지금은 비록 위상이 옛날 만하지는 않고 Windows Installer의 단순 wrapper 수준처럼 된 것도 있지만.. 그래도 대형 상업용 소프트웨어에서 이게 여전히 쓰이고 있기도 하다.

InstallWise도 아마 윈도우 3.x 시절부터 건재했던 외산 솔루션이고, 국산 프로그램인 InstallFactory는 <날개셋> 한글 입력기의 2.0~2.4 시절에 잠시 도입된 적이 있다.
DeployMaster라는 제품도 있고, 아.. 그나저나 요즘 전세계적으로 가장 널리 쓰이는 솔루션은 역시 Nullsoft의 NSIS인 것 같다.
소프트웨어의 설치 프로세스라는 건 단순 파일/복사나 버전 체크 같은 아주 공통적이고 범용적인 동작도 있지만, 또 각 소프트웨어가 필요로 하는 customize 수준도 천차만별이라는 특성도 존재한다. 그러니 그런 것도 잘 살려 줘야 하면서도 최대한 배우기 쉽고 구조가 간단해야 한다.

<날개셋> 한글 입력기는 2.5 이후 버전부터 지금까지는 그냥 비주얼 스튜디오가 기본 제공하는 msi 생성 프로젝트를 이용하여 배포 패키지를 만들고 있다. AppLocale 버그(이건 뭐 MS가 만든 프로그램들끼리 충돌하는 문제-_-)도 있고, 다국어 UI도 지원 안 되는 등 좀 마음에 안 드는 면모가 없는 건 아니나, 일단 7년에 가까운 세월 동안 설치/제거 자체가 딱히 큰 트러블 없이 되는 게 검증이 되어 왔기 때문에 쓴다. 민감한 부위인 외부 모듈까지도 말이다.

또한 MSI 런타임 2.0은 윈도우 95/NT4에서도 무난하게 잘 동작한다는 점도 큰 이점이다.
사실 Application Data 같은 일부 known 디렉터리는 IE4 이전의 윈도우 95 초창기에는 없던 개념인데, MSI 런타임 2.0은 설치 과정에서 그런 디렉터리에 대한 정보도 레지스트리에다 넣어 준다. (<날개셋> 한글 입력기의 동작에 필요)

다만, 본인도 InstallShield와 Windows Installer에 대해서 그렇게 좋은 인상을 갖고 있지 않다는 점을 밝히며 글을 맺는다.
99%까지 게이지가 금세 꽉 찬 뒤, 그 뒤로 몇 분째 꼼짝도 안 하는 훼이크성 대화상자에 짜증 게이지가 확 치솟아서이다. ㅆㅂ.. 도대체 설치도 아니고 설치 준비 작업이 뭐 이렇게 오래 걸리나 모르겠다.

개발툴인 비주얼 스튜디오 2005도 2003보다 제품의 완성도는 올라갔다지만, 설치에 관한 한 정말 답이 안 나오는 제품이다.
서비스 팩 1 설치하는 시간이 2005 자체를 첫 설치하는 시간보다 더 길면 길지, 절대로 더 짧지 않다. 도대체 그 시간 동안 뭘 하는지 모르겠다.
거기에다가 윈도우 비스타 내지 7에서 쓰려면 SP1에다가 또 운영체제 패치도 설치해야 한다. 이거 뭐 해처리 → 레어 → 하이브로 올리는 정도의 시간이 걸린다.

비스타/7부터는 그냥 닥치고 2008 이상을 쓰라는 소리. 비주얼 스튜디오 2008이 나오자마자 바로 갈아탔다.
사용자에게 좋은 첫인상을 주는 설치 프로그램을 만드는 것도 중요하다.

Posted by 사무엘

2010/05/11 08:14 2010/05/11 08:14
,
Response
No Trackback , 8 Comments
RSS :
http://moogi.new21.org/tc/rss/response/265

북한 뉴스 앵커

TV 뉴스나 <남북의 창>· <통일 전망대> 같은 프로를 통해, 북한 중앙 방송의 뉴스 앵커 멘트를 듣는 경우가 가끔 있다. 왜 있잖은가,
solid color에 가까운 무미건조한 스튜디오 배경으로, 뚱하게 생긴 중년의 앵커 아줌마가 곱게 한복을 차려입고 정말 강렬한 악센트가 가미된 웅변· 연설조로 뉴스를 읊조리는 것 말이다.
정말 옥구슬 꾀꼬리 목소리를 내는 성우 중에 무려 50대 중후반 여성도 많이 있다지만, 북한 앵커의 목소리에는 모에 할 구석은 전혀 없다.  ^^;;

사용자 삽입 이미지
비록 한복 차림은 아니지만 이 분위기를 묘사하는 가장 훌륭한 짤방임이 틀림없다. ㅋㅋ
저기 나온 천하의 개쌍놈이 누군지는 기억 안 나는 분을 위해 설명 드리자면, 한 5년쯤 전에 생방송 도중에 바지 내리고 성기 노출 병크를 터뜨린 모 밴드 멤버이다.

방송 샘플을 좀 채취해 왔으니 들어 보자. 탈북자나 여타 북한 사람들이 말하는 걸 들어 보면 그래도 평범한 한국어처럼 들리는데 유독 TV 방송에서는... 누가 저런 악센트와 화법을 최초로 만들어 냈을까? 한국어를 어떻게 저런 예술의 경지로 재창조했는지 경이로울 뿐이다. =_=;; 북한의 뉴스 앵커는 거의 연기자 수준이 아닌가 싶다.


(위에 media player 컴포넌트가 떠야 함.)

본인도 어디 가서 성대 모사 못 한다는 소리는 안 듣고 지낸다만, 문장 끝부분에서 "-하셨습니(네)다" 할 때의 그 얍삽하고 사악한 악센트는... 정말 따라하고 싶어도 못 하겠다. 중국이나 러시아어 억양일까? 아니면 평안도 쪽 사투리를 응용?? 북한 애들의 매스게임 카드 섹션도 대단하지만, 저것도 얼마나 직싸게 연습해서 나온 말투일까 하는 생각이 든다.

'김 정일'을 발음할 때면 가히 '킴 정일' 수준으로 말투가 거세어진다. 쟤네들은 한글 코드에 '김/일/성', '김/정/일' 여섯 글자가 별개의 영역으로 따로 등록돼 있고, 그걸 유니코드 표준안으로 제출까지 한 적도 있는 집단이다. -_-;;; (물론 그 제안은 외국의 학자들로부터 완전히 '이뭐병' 취급 받으면서 즉시 퇴짜 맞았지만.)

우리나라도 옛날에는 일명 땡전 뉴스--9시 땡~~ 전 두환 대통령은 오늘 어쩌구저쩌구-- 같은 불공정 보도 흑역사가 있었다지만, 최소한 말투는 정상(?)적인 말투였다.
정말 아무리 같은 뿌리에 같은 언어와 문자를 쓰는 동족이라 해도 어떤 이념을 따르냐에 따라서 문화는 저 정도까지 달라진다는 걸 다시 한 번 느낀다.

끝으로, 북한 하니까 또 중국이 생각나서 한 마디.
CCTV는 폐쇄 회로 텔레비전(=유선 텔레비전)의 약자이기도 하지만,
China Central Television, 즉 중국의 KBS뻘 되는 중국 국영 중앙 방송의 이니셜이기도 하다.
그런데 폐쇄 회로는 뭐가 폐쇄됐다는 말인지 잘 모르겠다. 반대말인 개방 회로는 있는지? -_-;;

Posted by 사무엘

2010/05/10 08:40 2010/05/10 08:40
Response
No Trackback , 10 Comments
RSS :
http://moogi.new21.org/tc/rss/response/264

‘-n거리’ 로 끝나는 지하철 역

광명사거리(7),
단대오거리(8),
미아삼거리(4),
신대방삼거리(7),
신정네거리(2)

2호선 지선의 ‘신정네거리’만이 숫자가 한자어가 아닌 순우리말이다.
은근히 헷갈린다. ^^

Posted by 사무엘

2010/05/08 18:28 2010/05/08 18:28
,
Response
No Trackback , a comment
RSS :
http://moogi.new21.org/tc/rss/response/263

여러 가지 잡설

1. 요즘은 회사나 학교도 아니고 내가 사는 집안의 무선 인터넷이, 10년 전 학교의 고정 IP 유선 인터넷보다 더 빠르다.
그때는 1초에 1MB가 넘는 속도로 파일이 네트워크로 전송되는 걸 보고 ‘세상에!’ 하면서 깜짝 놀랐었는데 이제는 무선 인터넷으로 FTP 파일 전송이 초당 3~5MB씩인 것도 본다. 유선은 당연히 10MB급 이상이 된 지 오래이고...;;;

대학교 때 처음으로 무선 인터넷이란 걸 봤다. 불안정하고 자주 끊어지고 전송 속도도 300~500KB대로 지금의 10분의 1 수준이었다. 그랬으나 지금 무선 인터넷 인프라의 수준은? ㄲㄲ 격세지감이다.
본인의 초대 노트북은 모뎀만 있지 랜 카드라는 게 전혀 없었고, 2기 노트북은 유선 랜만 있어서 무선 랜 카드는 따로 달아야 했다. 3기 노트북부터는 유선· 무선 랜을 모두 구비해 있고 무선 인터넷은 이제 노트북의 필수 요소가 돼 있다.

물론 유선도 개선이 이루어져, 2004년 7월 22일부터는 그 전까지 연구실만 100Mbps(바이트가 아니라 bit)이던 네트워크 속도가 드디어 기숙사 전체까지 10Mbps에서 100Mbps로 승격됐다. 정확한 날짜가 적혀 있는 일기 짱.
하긴, 내가 딱 졸업한 뒤부터 대전에 지하철도 생기고, 학교는 기숙사 방에 에어컨도 장착되고, 재수강비가 폭등하고.. 좋든 싫든 변화가 엄청 많이 생기긴 했다.

2. 파워포인트를 잘 다루는 사람의 슬라이드를 보면, 이미 있는 디자인 템플릿을 쓴 게 아니라 정말 참신한 디자인에다가 플래시를 방불케 하는 현란한 애니메이션까지 보는 사람을 정말 놀라게 만든다.
본인이야 MS 오피스 제품은 10년도 더 전부터, 거의 97 시절부터 써 왔으며, 사실 그런 제품을 다루는 스킬은 프로그래머나 전산학 전공자에게는 자기 소개서에 쓸 거리조차 못 되는 기본적인 스킬이다.

그런데 기본 스킬이라고 해서 만만하게만 봐서는 큰코다치겠다. 제아무리 2007 버전부터 각종 현란한 이펙트가 추가되었다 하더라도, 이미 다 만들어져 있는 디자인 템플릿과 진짜 프로가 만든 나만의 디자인은 차이가 나는 법. 주변에도 정말 멋진 문서, 멋진 프레젠테이션을 적지않게 봤다.
본인도 10년 전부터 이런 제품을 썼다고 하지만 10년 전이나 지금이나 해당 제품에 대한 활용도나 이해도는 별 차이가 없다. 워드/파워포인트 실무 책도 만만하게만 보지 말고 고급 기능을 위주로 공부할 필요도 좀 있지 않나 싶다. 또한 단순 디자인 테크닉뿐만 아니라 매크로 언어 같은 것도 말이다.

참고로 육군 훈련소에 있을 때 각종 시청각 CBT 교육 자료들은 파워포인트로 만들 법도 한데 그건 진짜로 플래시로 만들어져 있었다. 뭘 근거로 플래시라고 판단했는지는 지금 기억이 안 나지만, 어쨌든 플래시였다.

3. 배불뚝이 뽀글이 아저씨의 근황이 최근 심심찮게 매스컴을 탔다.
어디서 들었는지 출처는 지금 기억이 안 나지만, 저 사람은 테러를 두려워하는 것도 있어서 외국으로 나갈 때 비행기보다는 안전한 철도를 극단적으로 더 선호한다고 한다. 그래서 맨날 열차를 탄다.

북한의 수도인 평양에도 지하철이 있다. 그것도 서울 지하철보다 1년 남짓 더 일찍 개통했다. 부산 3호선 만덕 역보다도 훨씬 더 깊다.
외국인들 관광 용도로 역 내부는 아주 으리으리한 궁전처럼 꾸며져 있지만, 에너지가 부족해서 전동차라든가 에스컬레이터 가동을 잘 못 하고 있다.

지하철 건설 과정에서 두만강 밑으로 하저 터널을 지으려 한 적이 있었는데, 뜻밖에도 실패했고 사고로 여러 명이 죽거나 다쳤다고 한다. 땅굴 파는 데 이골이 나 있을 친구들일 텐데 뜻밖이다.

정말로 어떤 통치 이념으로 나라가 세워졌느냐에 따라 이 좁은 땅덩어리의 남북이 어떻게 극단적으로 달라졌는지를 실감할 필요가 있다. 남한은 일단 민주주의에 대통령제인 건 둘째치고라도 세계 각국과 정상적으로 교류를 한다. 국민이 외국 여행을 아무 거리낌 없이 가며, 대통령이 지금 무슨 스케줄을 수행 중인지, 나라가 올림픽· 월드컵도 개최하고 각종 통계나 사건도 외국에다 아무 통제 없이 알리고 지낸다.
그 반면 저쪽은? 한 나라 지도자의 행적도 오리무중이요, 무슨 미사일이나 발사체를 쏜 것도 외국이 다 추측을 해야 한다. 우리나라는 일기예보를 할 때 북한 쪽 자료는 일본으로부터 얻어 와서 활용한다.

말이 나왔으니 말인데, 천안함 격침이 북한 소행이라면 이건 정말... 보복 전쟁이라도 불사해야 하지 않나 싶다. 아무리 우리가 반쪽만으론 작고 살기 어려워도, 역대 독재자들이 아무리 안보를 빌미로 나쁜 짓 많이 했어도, 저런 막돼먹은 깡패 집단과는 통일 나부랭이 따위 해서는 절대 안 된다. 지금까지 오로지 ‘우리 민족끼리, 북한에다 오로지 사랑으로 퍼 주자’ 하면서 미국 욕만 하느라 정신없던 친구들은 요즘 정말 닥치고 버로우 타야 할 때가 아닌가 싶다. 미군 장갑차 압사 사건은 아직까지도 우려먹는 진영이 있는 반면, 제2 연평해전은 왜 이리도 쉽게 잊어버리는가?
(하지만 현시창. 내가 보기엔, 아마 어디 소행인지 못 밝혀내고 그냥 미제 사건으로 마무리될 것 같은 분위기이다. -_-)

4. 본인은 충분히 피곤하고 잠이 쏟아지는 상태라면 주변이 어지간히 시끄러워도 잠이 잘 드는 편이다. 키보드 소리, 컴퓨터 팬 소리, 자동차 엔진음 등. 사실 전동차 구동음이라든가 비행기 소리(이륙할 때만)를 이렇게 좋아하는 걸 보면 난 태생적으로 기계음과 친숙한 건지도 모르겠다.

그런데, 음악 소리나 내가 알아들을 수 있는 말소리는 조금만 들려도 거기에 신경이 확 쏠려 버려서 잠을 절대 못 잔다. 피곤해 죽겠는데 잠들질 못하면 그건 고문..;; 아무 의미가 없는 소음은 괜찮은데 저런 음향에는 민감하다는 뜻이다.
사실은, 주변이 너무 조용해도 딴생각이 자꾸 생겨나서 잠에 금방 못 드니, 숙면과 주변 소리와의 관계는 참 미묘한 것 같다.

아, 그러고 보니 코 고는 소리도 나를 잠 못 들게 만드는 소음 중 하나. 훈련소에 갔을 때 가장 유용했던 물건은 손목시계보다도 싸제 귀마개였다. 귀마개가 없었으면 내무실에서 밤에 잠드는 데 정말 애로사항이 꽃폈을 것이고, 잠을 충분히 제대로 못 자면 다음날의 훈련의 괴로움도 더욱 커졌을 것이다. 물론 귀마개는 사격 훈련 때도 요긴하게 썼지만 말이다.

울 아버지는 누워서 TV를 보다가 곧잘 주무시는 편이다. 사람 말소리와 음악으로 온통 가득한 게 TV인데, 나의 잠버릇대로라면 저건 정말 있을 수가 없는 행동 패턴이다.

음냐.. 네 개의 글감이 서로 완전히 다른 분야와 주제의 글이 돼 버렸는데..
귀찮아서 일단 잡담 카테고리에다 한데 올린다.
네 글 중 아무 분야에나 공감되는 주제가 있다면 댓글 얼마든지 환영.

Posted by 사무엘

2010/05/08 08:18 2010/05/08 08:18
Response
No Trackback , 7 Comments
RSS :
http://moogi.new21.org/tc/rss/response/262

사용자 삽입 이미지
위의 그림은 동일한 32비트 윈도우용 프로그램을 세 개 연달아 실행하여
1. 자신의 인스턴스 핸들
2. 어떤 지역 변수의 주소
3. 어떤 전역 변수의 주소
4. 그리고 동일한 공유 메모리(memory-mapped file)를 가리키는 주소
를 차례로 찍은 것이다.

그림을 보면 알겠지만 동일한 실험을
a. 윈도우 3.1+Win32s
b. 윈도우 9x
c. NT급 윈도우

에서 모두 해 봤다. (요즘 버전의 비주얼 C++로 그 구닥다리 Win32s에서도 동작하는 프로그램을 만들려면, 컴파일/링크 옵션을 상당히 특이하게 바꿔야 한다. ㄲㄲ)

Win32s의 한계를 절실히 느낄 수 있을 것이다.
CPU의 가상 메모리 기능을 적극 활용하여 각 프로세스마다 자신만의 주소 공간이 절대 보장되는 윈도우 NT에서는,
같은 프로그램은 아무리 동시에 여럿 실행하더라도 자기 주소가 0x400000으로 고정 불변임을 알 수 있다. 심지어 윈도우 9x조차도 그건 보장된다.

그러나 Win32s는 프로그램을 실행할 때마다 프로그램의 인스턴스 핸들이 제각각이며, 지역 변수와 전역 변수의 주소조차도 완전히 달라진다. 시스템의 모든 프로그램들이 단일 주소 공간을 공유한다는 게 바로 저런 의미인 것이다.

Win32s는 모든 메모리 주소가 0x80000000 위의 상위로 잡혀 있는 것도 매우 신기하다.
9x나 NT급 윈도우에서는 그런 주소는 사실상 커널에서나 볼 수 있기 때문이다.
16비트 운영체제에다 아주 특수한 임시방편으로 32비트를 구현한 Win32s의 동작 방식을 짐작케 한다.

또 하나 재미있는 차이를 발견할 수 있는 것은 인스턴스 핸들과 포인터와의 관계이다.
9x/NT에서는 인스턴스 내지 모듈 핸들이 곧 포인터이기 때문에, 0x400000 같은 값에 해당하는 메모리 주소를 들여다보면 EXE 파일이 통째로 로드된 흔적을 고스란히 찾을 수 있다. 즉 MZ 같은 EXE 헤더가 바로 나타난다는 뜻이다. 그리고 전역 변수의 주소는 역시 근처의 0x40????대로 잡힌 것을 볼 수 있다.

그러나 Win32s의 인스턴스 핸들은 포인터와 아무 관계가 없는 임의의 16비트 정수일 뿐이다. 이는 원래부터 포인터가 서로 아무 관계가 없던 16비트 윈도우의 인스턴스 핸들과 개념을 일치시키기 위한 조치로 보인다. 제아무리 32비트 프로그램이라 하더라도 16비트 운영체제 내부에서는 16비트 규모로 식별이 가능해야 하기 때문이다.

끝으로, 공유 메모리의 주소도 흥미로운 결과가 나와 있다. 오로지 윈도우 9x만이 세 프로그램이 가리키는 주소가 모두 일치해 있다.
이는 윈도우 9x만의 메모리 사용 방식 때문이다. 0x80000000~0xC0...에 해당하는 영역에다 모든 프로그램들이 공유하는 운영체제 시스템 DLL과 공유 메모리를 올려 놓는다. 즉, 이 영역은 윈도우 9x에서는 아무 프로그램이나 바로 접근할 수 있는 단일 주소 공간이나 마찬가지이기 때문에 어느 프로그램에서나 의미가 동일한 셈이다.

NT는 그렇지 않다. 비록 실질적으로 가리키는 물리 메모리는 동일한 위치인지 모르나 이를 가리키는 응용 프로그램의 주소는 완전히 제각각이다. 이렇게 하는 게 훨씬 더 안전하고 보안 관점에서도 유리하기 때문이다.

Win32s는 공유건 응용 프로그램의 코드건 데이터건 가리지 않고 무조건 0x80... 상위 메모리 주소가 뒤죽박죽으로 쓰이는데, 공유 메모리마저 9x와는 달리 제각각인 주소가 배당되는 건 좀 의외이다. 9x는 공유 메모리만 상위 메모리 주소가 쓰였고 NT는 보다시피 상위 메모리 주소가 전혀 등장하지 않는다. 사용자 계층과 커널 계층이 엄격하게 잘 분리되어 있음을 뜻한다.

※ 덧붙이는 말

1. 유니코드

일단 Win32s와 9x는 운영체제의 내부적으로는 유니코드 기반이 전혀 아니다. 그래도 9x는 GDI 계층 차원에서 유니코드 문자를 폰트로부터 인식하고 찍는 건 지원하며 98부터는 유니코드 IME 프로토콜까지도 지원한다. 그 반면 Win32s는 운영체제의 한계 때문에 그런 게 전혀 없다. 운영체제 차원에서 임의의 유니코드 문자를 출력할 방법이 없다는 뜻이다.
오늘날까지 살아남은 NT는 무려 1993년에 나온 3.1 버전부터 애초에 100% 유니코드 지원을 염두에 두고 16비트 wide string을 기본으로 설계했으니 과연 대인배. 물론 이렇게 하려면 메모리가 더 많이 필요하다.

9x는 TextOutW, ExtTextOutW, GetTextExtentPoint32W 같은 GDI 함수는 NT와 기능이 동일하다(비록 surrogate는 지원 안 하지만). 그리고 MessageBoxW도 지원한다. 에러 메시지 뱉고 죽는 최소한의 동작만은 유니코드 함수로도 가능하게 배려했다는 뜻이다.
이외에 리소스를 찾는 FindResourceExW, 명령 인자 옵션을 얻어오는 GetCommandLineW 같은 함수가 유니코드 버전도 간단히 구현돼 있다. 비록 문자열을 ansi 문자열로 변환해서 A 함수를 그냥 호출해 주는 수준이지만.

Win32s는 그런 거 없다. MessageBoxW도 지원하지 않으며, 오로지 WideCharToMultiByte(와 그 역함수) 처럼 문자열 변환 함수만 지원되고 나머지 W 함수는 전혀 지원되지 않는다.

2. GDI/User 계층의 32비트

NT는 순수한 32비트 운영체제인 반면 9x 계열은 아직 상당수의 코드가 16비트로 존재했다. 이런 이유로 인해 9x는 대표적으로 GDI의 좌표계가 16비트 크기로 제한되어 있었으며, NT는 GDI 함수의 실행이 실패했을 때 GetLastError() 에러값이 온 반면, 9x 계열은 그렇지 않은 경우가 많았다. 그 에러값은 32비트 코드 계층에서 설정되는 값이기 때문이다.

과거 16비트 윈도우(Win32s도 당연히 포함)에서는 어떤 GDI 오브젝트 자체와 그 오브젝트가 따로 동적으로 할당하는 메모리의 양이 모두 GDI 힙 64KB 내부에 매여 있었다면,
9x는 일단 할당 가능한 오브젝트의 개수는 64KB의 제약을 받으나 각 오브젝트가 추가로 할당하는 메모리는 ‘별도의 제약이 없는 32비트 범위’인 식으로 제한 조건이 완화된 경우가 많았다. 가령, 복잡한 path나 region 같은 경우 추가 메모리 사용량이 만만찮으리라 예상 가능하다.

제약이 완화되기는 했으나 그래도 9x는 공포의 ‘리소스 제한’이 여전했던 것이다. 리소스 퍼센티지를 아직 기억하시는 분 계시려나?
NT는 역시 애초부터 그런 개념이 없었다. 모든 게 자유로운 32비트 공간이고 지금은 64비트로 자연스럽게 확장되어 있기까지 하다. ^^;;

Posted by 사무엘

2010/05/07 07:45 2010/05/07 07:45
,
Response
No Trackback , 6 Comments
RSS :
http://moogi.new21.org/tc/rss/response/261

동부 간선 도로

동부 간선 도로는 서울 지하철 7호선의 강북 구간과 비슷한 노선으로 서울 동부를 관통하는 자동차 전용 도로이다. 중랑천을 나란히 끼고 달리며, 노원구, 중랑구, 광진구 등을 경유한다.

한강을 끼고 달리는 올림픽대로와 강변북로는 주행해 봤지만, 저쪽으로는 지금까지 갈 일이 도통 없었다. 그러다 요 며칠 전에 노원구 일대까지 드라이브를 했는데, 역시 자동차가 막히지만 않으면 지하철보다 확실히 빠르다는 걸 알 수 있었다. 서울 북부도 지금까지 생각했던 것보다 은근히 더 빨리 갈 수 있었다.

이 도로는 상행과 하행이 하천의 이쪽과 저쪽으로 완전히 분리되어 있다는 점이 매우 특이하다. 다른 도로에서는 한쪽은 평지이고 다른 쪽은 그 옆에 강 위의 고가와 같은 식으로 건설된 경우는 있다. 그런데 그것도 아니고... 한강으로 치면 올림픽대로는 동쪽으로만 가고, 강변북로는 서쪽으로만 가는 것이나 마찬가지이다. 그래서 도로에 진입한 후, 하천 건너편에 있는 방면으로 들어가려면 긴 다리를 빙 돌아서 건너야 한다.

달리다 보면 차창 밖으로 코레일 동부 전동차 사무소를 볼 수도 있다. 그리고 수백 m 간격으로 철길 두 개가 위로 교차하는 것도 볼 수 있는데, 본인은 처음엔 ‘중앙선이 상행과 하행이 이렇게 긴 간격으로 분리되어 있지는 않을 텐데 뭐지?’ 하고 처음엔 궁금했다.
하지만 답은 간단하다. 교각이 분홍색으로 칠해져 있는 하나는 중앙선이고, 다른 하나(빨간색)는 경춘선이다. 앞으로 경춘선은 망우 역에서 분기하게 되므로 옛 선로 교각은 없어질 것이다. 이는 앞으로 성북 역은 경춘선 열차 취급 기능을 상실할 것임을 의미하기도 한다.

내 기억이 맞다면 동부 간선 도로는 편도 3차선인 총 6차선 도로이다. 진출입로가 입체 교차로로 정말 거미줄처럼 복잡하게 만들어져 있어서 초행자는 내비 없이는 찾아가기 정말 힘들겠다는 생각이 들었다.

여기뿐만 아니라 워커힐, 구리, 남양주, 양평 등도 언젠가 국도를 타고 철도 중앙선 노선을 따라 드라이브를 하고 싶다. 이쪽은 이렇다 할 고속도로도 없고 관광용으로 정말 좋은 코스인지라 주말마다 차들로 극심한 정체라고는 들었다. 하긴, 주말에 서울 근교에 안 막히는 도로가 어디 있겠는가? 경부 고속도로도 토요일 오전에 승용차로 하행을 타 봤다가 피 본 기억도 생생하다.

Posted by 사무엘

2010/05/06 08:38 2010/05/06 08:38
Response
No Trackback , 2 Comments
RSS :
http://moogi.new21.org/tc/rss/response/260

멀티태스킹 운영체제에는 한 주소 공간에 여러 프로그램들이 동시에 실행될 수 있다. 그렇기 때문에 그런 환경에서 동작하는 프로그램이라면 자기가 메모리의 어느 위치에 적재되는지를 신경써야 하며, 임의의 위치에 올라가더라도 잘 실행될 준비가 되어 있어야 한다.

과거 도스 시절에는 EXE말고 COM이라는 실행 파일이 있었는데, 이것은 최소한의 헤더 같은 것도 없고 코드와 데이터가 다 16비트 공간 안에 막혀 있으며(과거 메모리 모델로 치면 제일 작은 tiny와 동일), 메모리 주소도 고정 붙박이식이어서 오늘날의 컴퓨터 환경과는 도저히 어울릴 수 없는 과거 유물이 되어 있다.

윈도우 운영체제의 실행 파일이 사용하는 PE 포맷은 position dependent code 방식이다. 즉, preferred base라는 개념이 존재하여 자기는 32비트 주소 공간에서 어디에 적재되는 게 이상적인 경우라고 이미 가정하고 만들어져 있다는 뜻이다. 어떤 EXE나 DLL이 거기에 바로 적재가 가능하다면 가장 빠르고 좋지만, 만약 이 선호하는 주소에다 적재가 못 된다면 별도의 재배치 작업이 필요하다. 즉, 마치 퀵 정렬처럼 잘 될 때와 못 될 때의 성능 편차가 크며 일종의 모험이 동반된다는 뜻이다.

이는 유닉스의 shared library와는 다른 디자인이다. 그쪽은 이렇다할 preferred base 주소가 없으며, 코드 자체가 어느 메모리 주소에 적재되든 동일한 성능으로.. 하지만 딱히 최적의 성능을 발휘하지는 않는 구도로 동작한다. 일종의 힙 정렬이나 병합 정렬처럼 동작한다는 뜻.

윈도우 PE 포맷에는 실제로 실행되는 기계어 코드인 code 섹션도 있고 data라든가 리소스(rsrc)와 더불어 재배치 정보를 나타내는 섹션(reloc)도 있다. preferred base에서 동작하지 못할 때, 코드의 어느 부분을 쫙 수정해 주면 preferred base가 아닌 다른 지점을 기준으로 이 프로그램이 잘 돌아갈 수 있는지를 따로 기록해 놓은 것이다. 사실 이런 개념의 재배치 정보는 도스 EXE나 16비트 윈도우 EXE에도 있긴 했다.

그런데 32비트 윈도우 EXE만은(물론 64비트도 포함) 원칙상 이런 재배치 정보가 필요하지 않게 됐다. 32비트 환경부터는 모든 EXE들이 나만의 독립된 주소 공간을 가지기 때문에, preferred base가 무엇이든지에 무관하게 EXE는 무조건 내가 원하는 위치에 가장 먼저 적재되는 게 보장되기 때문이다.
그래서 통상 EXE들은 재배치 정보를 넣지 않는다. 필요가 없기 때문에, 넣지 않는 게 파일 크기를 줄이는 데도 도움이 되기 때문이다.

그럼에도 불구하고 재배치 정보가 필요한 경우는 다음과 같다.

1. EXE가 아닌 DLL은 반드시 필요하다. DLL은 다른 EXE의 밑에 붙어서 동작한다는 특성상 자신만의 주소 공간을 갖고 있지 않다. 나의 preferred base에 EXE라든가 다른 DLL이 이미 선점되어 있다면 응당 재배치가 필요하다. DLL은 그런 상황을 언제든지 대비해야 한다.

2. Win32s에서 돌아가는 32비트 프로그램이라면 EXE라도 재배치 정보가 반드시 있어야 한다. Win32s는 과거 윈도우 3.1에서 일부 32비트 프로그램을 구동하기 위해 제공되었던 일종의 운영체제 익스텐더로, 32비트 프로그램을 실행만 해 줄 뿐, 16비트 윈도우 3.1이 지니고 있던 시스템적인 한계는 그대로 답습하고 있다.
멀티스레딩을 지원하지 않으며 32비트까지 포함해 모든 EXE가 독립이 아니라 단일 주소 공간을 공유한다!
프로그램을 실행할 때마다 EXE의 핸들이 제각각인 값이 들어오며, 로딩도 preferred base에 정확하게 절대로 되지 않는다. 여기에 대해서는 추후 실험해 볼 예정.
실제로 테스트를 해 보면 핸들이 0x1xxx 이렇게 아주 작은 값으로 들어온다는 게 매우 흥미롭다. 윈도우 NT에서는 그렇게 낮은 주소는 아예 무조건 에러로 간주하는 반면, Win32s에는 그게 여전히 쓰인다는 소리이다. 포인터가 아니라 진짜로 다른 번호에 가깝다.

3. 비주얼 C++ 2008에서 추가된 '시작 주소 랜덤화' 기능을 사용하려면 재배치 정보가 필요하다.
보안을 위해 성능을 희생하듯, 윈도우 비스타부터는 PE 실행 파일도 일종의 position independent (과거의 dependent가 아닌) code처럼 써먹으려는 것 같다.
이 방식으로 빌드된 EXE는 운영체제가 일부러 EXE의 preferred base와는 다른 임의의 위치에다가 로딩을 해 준다. 즉, 이 EXE의 특정 지점의 코드나 데이터를 딱 맞춰 수정하는 프로그램이 제대로 동작하지 않게 위해서이다. (스타크로 치면 맵핵 같은 프로그램)

Posted by 사무엘

2010/05/04 08:36 2010/05/04 08:36
,
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/258

금 이야기

금과 은, 특히 금은 동서고금을 막론하고 인류에게 값비싼 귀금속의 제왕으로 각인되어 왔으며 성경적인 의미도 풍부하다. 하나님은 이 세상의 물질도 귀한 것과 흔해빠진 것을 구분해 놓으신 것이다.
사람이라면 본능적으로 누구라도 번쩍이는 누런 금을 보면 아름다움을 느끼고, 탐내고 갖고 싶어할 것이다. 금은 어디서나 보편적인 ‘경제적 값어치’를 지니고 있다. 그래서 현찰만큼이나 검은 거래에서 쓰이는 매개체가 되기도 쉽다. 흔한 물질로부터 금을 만들려고 애썼던 연금술, 그리고 미국 서부 개척 시대의 골드러시를 우리는 역사를 통해 기억한다.

잘 알다시피 올림픽에서는 상위 입상자에게 금· 은· 동메달이 수여된다. 그런데 1차 세계 대전의 직전에 개최된 1912년 제 6회 대회까지는 메달을 단순 도금이 아닌 진짜 순금· 순은으로 만들어서 줬다는 것도 흥미로운 사실이다. 흠좀무... 그렇게 해서는 올림픽 위원회의 재정이 남아나질 못했을 것이다.

금은 잘 알다시피 일단 외형이 정말 탐스럽다. 그런데 희귀하다.
그리고 매우 안정적이다. 공기 중에서 녹이 전혀 슬지 않으며, 수중이나 고온에서도 산화하지 않고 어지간한 화학 물질에도 반응하지 않는다. (뭐, 왕수 같은 일부 물질에는 녹지만) 제아무리 금이 보기에 아름다워도 공기 중에 조금만 놔 두자 쇠처럼 녹이 슨다면, 이 정도로 비싼 귀금속의 지위를 차지할 수 없을 것이다. 이렇듯 불변성 역시 금의 매우 중요한 특징이다.

금은 액세서리를 만들 때뿐만이 아니라 그 안정성과 불변성 덕분에 치과 의료용으로도 쓰이고, 전기적 특성 덕분에 손전화 같은 전자 기기에도 소량 들어간다. 오죽했으면 그런 반도체 기판을 만드는 회사에서 수거되는 금을 몰래 빼돌린 직원이 경찰에 잡히기도 했을 정도이다.

태양계 바깥으로 떠난 우주 탐사선 파이어니어 10호와 11호에는 혹시 외계인이 발견하면 보라는 의도로 지구의 위치와 인간의 모습 등이 새겨진 일명 ‘파이어니어 금속판(Pioneer plaque)’이 장착되었는데 이 금속판의 재질은 알루미늄에다 금 도금이다. 11호에는 아예 금으로 만들어진 LP 음반까지 들어있다(지구의 소리 수록). 그야말로 지금까지의 인류 역사보다 더 긴 시간 동안 여행할지도 모르는데 변질되지 말라고 비싸고 무거운 금을 쓴 게 틀림없다.

또 금은과 비슷하게 안정적인 금속으로 백금이 있다. 백금은 촉매로도 실용성이 매우 뛰어난 금속이며, 백금과 이리듐(Ir)이라는 희소 금속과의 합금은 전자 장비의 접촉 부품, 만년필 펜촉 등으로도 쓰이고 측정 기기의 재질로 활용된다. 특히 과거에 킬로그램 원기, 미터 원기 같은 물건도 안정성 덕분에 이 합금으로 만들었을 정도이니 말 다 했다. 손전화 같은 정밀 전자 기기를 만들 때 쓰이는 이런 희소 금속들을 확보해 놓으려는 경쟁도 국가간에 치열하다고 소식을 전에 들은 것 같다.

은만 있는 게 아니라 수은도 있고, 금만 있는 게 아니라 백금도 있다는 게 흥미롭다. 백금과 은의 차이는 마치 여성 친구(female friend; 그냥 우정)와 여자 친구(girl friend; 애인-_-)의 차이인 것 같다. ^^;;

성경에는 예수님이 태어났을 때 동방 박사들이 그분께 바친 선물 세 종류 중에도 금이 있었다(마 2:11).
뭐니 뭐니 해도 황금 잔치가 벌어졌던 때는 솔로몬 왕 시절인데, 궁내 경비병들에게 지급된 방패의 재질이 금이었고 왕좌도 금이었으며, 왕이 사용하는 식기조차 다 금이었다! (왕상 10:14-22, 27)

은은 길거리에 굴러다니는 돌멩이마냥 흔해 빠졌고 아예  하찮은 것으로 여겨졌다니 믿어지는가? (왕상 10:27) 그때는 사실상 전세계의 모든 금이 예루살렘으로 몰렸다는 소리이다. 조금 상식이 있다면 불신자라도 666이라는 숫자가 아주 나쁜 의미로 성경에 나온다는 걸 알 텐데, 계시록에만 666이 있는 게 아니다. 1년 동안 솔로몬의 왕국으로 반입된 금의 무게가 666달란트(약 20~25톤)였다고 한다. 성경에서 666이 딱 두 번 이렇게 나온다는 게 아주 흥미로운 사실이다.

뭐 그래 봤자 금으로 도배를 해 놨던 성전과 각종 집기들은 이스라엘 민족이 망할 때 다 외적들에게 뺏겼다. 예수님은 헤롯 시절에 지어진 성전이 “돌 위에 돌 하나 안 남기고 다 무너질 것”이라고 예고하신 적이 있는데(마 24:2), 이것은 유대인들의 민족 자존심을 건드리는 발언이요, 마치 “제아무리 불침선 타이타닉이라고 해도 처녀 항해 때 싹 침몰해 버릴 것이다” 같은 메가톤급 예언이었다.
하지만 예언은 그대로 적중. 왜 성전이 돌 위에 돌 하나 안 넘기고 무너졌는가 하면, 탐욕스러운 적군들이 금을 추출하려고 돌을 하나하나 다 뒤지고 녹였기 때문이었다고 한다. 정말 ‘지못미 성전’이다.

그래도 안타까워하지 말자. 예수님께서 그 황금 잔치를 벌였던 솔로몬의 영광도 보잘것없다고 말씀하시며(마 6:29), 자신이 솔로몬보다도 더 큰 이(마 12:42)라고 소개하시기 때문이다. 그리고 구원 받은 크리스천이 하늘나라에서 살게 될 곳은 도시 전체가 맑은 유리 같은 순금일 테니 말이다(계 21:18).

이상, 4월의 마지막 블로그 포스트였다. ^^

Posted by 사무엘

2010/04/30 21:35 2010/04/30 21:35
,
Response
No Trackback , 2 Comments
RSS :
http://moogi.new21.org/tc/rss/response/256

※ 스크린도어

지금까지 전문 지하철 회사들에 비해 스크린도어 설치에 인색한 편이던 코레일도,
올해부터 전철 승강장 -- 그것도 분당선이나 과천선 같은 곳이 아닌 지상 승강장에 스크린도어를 설치하려는 움직임을 보이고 있다.
용산과 가산디지털단지 역에 설치 중인 걸 확인했고, 경인선은 역시 이용객이 많아서인지 송내 등 상당수의 역이 이미 공사가 시작되어 있다.

앞으로 이런 지상 국철 구간 승강장에서 일반열차가 주행하는 걸 촬영하기도 더욱 힘들어질 것 같다.
지하 구간인 분당선· 과천선· 일산선엔 저런 거 언제 들어오려나?

일본은 전동차 운전실 모습까지 유리창으로 보여준다. 대부분의 역에 스크린도어 같은 건 없다. 누가 승강장 투신 자살이라도 하면, 사회에 민폐 끼친 책임을 지라고 유족에게 되려 벌금을 매긴다. 이런 일본과 한국은 철도 인프라도 다르지만 그 문화 내지 정서도 상당히 다르다. ^^;; (일본이 운임도 더 비싸고 승객을 더 자비심 없이 대하고 더 짐짝 취급한다. 단지 철도로 갈 수 있는 곳이 더 많고 정시성이 더 뛰어난 정도?)

스크린도어 관련 추가 잡설:
- 가까운 미래에 개통을 앞두고 있는 용인 경전철은 이례적으로 스크린도어가 설치되지 않는다. 어차피 차량이 레일 위를 달리는 1량짜리 버스 수준에 불과한지라 선로 추락 사고가 나도 차를 급정거로 세우기 쉬운 편이며, 그런 사고라도 나면 무인 통제실에서 신속하게 대처가 되기 때문이라 한다.

- 아무리 그래도 차량 기지 임시역에까지 값비싼 스크린도어를 설치해 주지는 않는다. (7호선 장암, 9호선 개화) 그런데 광주 지하철 1호선의 녹동 역은 현재 국내에서 유일한 로프 셔터(?)가 설치되어 있다. 평소에는 이게 마치 상가의 셔터처럼 내려와서 승객과 선로 사이를 차단하고 있다가 열차 문이 열리면 그게 스르륵 위로 올라간다. 그러므로 선로와 승강장 사이에 공기는 통하기 때문에 열차풍 차단 효과는 없지만, 어쨌든 선로 투신은 확실하게 방지 가능하며, 로프 사이에다 카메라를 집어넣어서 선로를 촬영하는 것도 가능하다. 꽤 저렴하고 실속 있는 선택이라는 생각이 든다.

※ 중국· 일본어 안내방송

최소한 2009년쯤부터 SMRT 도철 5~8호선의 안내 방송에 묘한 변화가 생겼다.
잘 알다시피 환승역이나 비환승이더라도 이용객이 많은 주요역에는 중국· 일본어 방송이 추가됐다.
그리고 시종착역 뿐만 아니라 환승역 방송 후에도 일부 노선은 '5678 서울 도시철도' CM송이 끝에 추가됐다. 이 사실 자체에 대해서는 본인이 예전에도 비슷한 글을 블로그에 남긴 적이 있다.
그런데 재미있는 건 모든 노선에서 그러고 있지는 않다는 것.

(거의) 모든 환승역에서 중국어와 일본어 안내방송을 덩달아 하는 곳: 6, 7호선
5호선도 종로3가, 공덕, 광화문 등 주요역에서는 중국어와 일본어 방송을 하지만 왕십리 이후의 동쪽이나 여의도 이후의 서쪽에서는 하지 않는다. 하다못해 동대문역사문화공원 역에도 안 하며, 8호선에은 유일하게 그런 방송이 전혀 없다.

환승역 방송 후 "5678 서울 도시철도" 로고송이 나오는 곳: 7, 8호선
거 참 신기하지 않은지? 오로지 저 두 노선에서만 하고 있다.

따라서 이 두 방송을 모두 적극 실시하는 7호선이 안내방송 러닝 타임이 제일 길어져 있다.
본인은 시도 때도 없이 서는 지하철에서 일일이 4개 국어 방송이 다 나가는 거 별로 찬성은 안 한다. 역 안내 방송은 언어가 중요한 게 아니라 역명이라는 고유명사--특정 언어와 별 관계가 없는--가 더 중요한데 굳이 일일이 외국어 번역을 할 필요도 없는 것이고..
차라리 공항 철도가 4개 국어를 다 방송하는 건 말이 된다. 거기는 음성뿐만 아니라 LED 화면 자막까지 4개 국어로 해 주고 있으니 말이다. 더구나 역 간격도 일반 지하철보다는 훨씬 길기 때문에, 4개 국어 방송을 내보낼 시간적 여유도 되니 말이다.

Posted by 사무엘

2010/04/28 18:26 2010/04/28 18:26
,
Response
No Trackback , 2 Comments
RSS :
http://moogi.new21.org/tc/rss/response/255

« Previous : 1 : ... 205 : 206 : 207 : 208 : 209 : 210 : 211 : 212 : 213 : ... 230 : Next »

블로그 이미지

그런즉 이제 애호박, 단호박, 늙은호박 이 셋은 항상 있으나, 그 중에 제일은 늙은호박이니라.

- 사무엘

Archives

Authors

  1. 사무엘

Calendar

«   2026/08   »
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

Site Stats

Total hits:
3994644
Today:
1023
Yesterday:
2195