퀵바

당우 님의 서재입니다.

회귀하고 탑코더

웹소설 > 일반연재 > 판타지, 현대판타지

두둥이아빠
작품등록일 :
2021.12.13 13:54
최근연재일 :
2022.01.06 14:00
연재수 :
23 회
조회수 :
31,829
추천수 :
626
글자수 :
131,163

작성
21.12.20 14:30
조회
1,423
추천
26
글자
14쪽

회귀하고 탑코더 9화

DUMMY

[9화]


#


현재시간 7시 30분.

PDA 소프트웨어팀이 출근하려면 아직 30분이나 남은 시각.

사무실안으로 들어온 성훈이 주변을 살폈다.

어젯밤 과음으로 사무실에서 밤을 보냈는지 의자를 한껏 뒤로 젖혀 코를 골며 자고있는 정지만이 먼저 눈앞으로 보였고, 그 옆자리에는 입사한지 얼마안되 보이는 앳된 얼굴의 한 청년이 눈을 반만 뜬채로 모니터를 바라보고 있었다.


“안녕하십니까!”


성훈의 쩌렁쩌렁한 목소리가 사무실을 가득 채웠다.


“뭐···뭐야!”


정지만이 화들짝 놀라며 자리에서 일어섰다.


“이번에 PDA 소프트웨어팀의 인턴으로 들어오게 된 윤성훈입니다. 앞으로 잘 부탁드립니다.”


성훈이 정지만을 향해 허리를 굽히자 정지만이 미간을 찌푸린채 짜증스런 목소리를 냈다.


“아이씨. 난 또 뭐라고. 깜짝 놀랬잖아!”


자리에서 힘겹게 일어난 정지만이 성훈을 아래위로 훑어보고는 누군가를 찾는듯한 시늉을 했다.


“어딨어···야! 최사원! 일루 빨리 튀어와봐!”


가만히 자리를 지키던 최진우가 바람같이 뛰어와 정지만 자리 앞에 멈춰섰다.


“네. 부르셨습니까? 이 주임님.”

“너 얘 알지?”

“윤성훈씨 말씀이십니까? 그럼요! 당연히 알죠. 이번 PDA 프로젝트 개발에 큰 도움을 주셨던···”

“됐고! 너가 책임지고 얘 교육 똑바로 시켜. 알겠어? 아침부터 재수없게 씨리··· 그리고 찐한 커피 좀 타와봐. 놀란 가슴 커피로 좀 달래줘야겠다. 이 녀석도 같이 데려가. 커피 타는 거 부터 배워야 되니까.”

“네? 아 네··· 저 따라오세요.”

“야. 이제 얘가 막내니까 말 편하게 해.”

“네 알겠습니다··· 따···따라와···”


성훈이 이진우의 뒤를 따라가자 정지만이 그의 등에 대고 말했다.


“참 나. 요즘 세상 많이 좋아졌다. 대딩이 회사도 다니고. 학교라도 좋은데 나왔으면 몰라. 에휴.”


성훈을 대놓고 비아냥 거리는 말투.

성훈은 애써 못들은척하고는 다시 최진우의 뒤를 쫒아갔다.


탕비실 안


최진우가 진하게 우려낸 커피를 휘휘 저으며 말했다.


“미안해요. 아까는 상황이 상황인지라···”

“괜찮아요. 이해합니다 저는.”

“천재들은 인성이 별로라던데··· 꼭 그렇지 만은 않나보네요.”

“하하하. 천재요? 누가 그럽니까?”

“겸손함까지···크으. 대한민국에 있는 대학교를 뒤져봐도 성훈씨만큼 소프트웨어 지식을 갖춘 사람은 아마 없을 걸요? 성훈씨가 여기 오실때마다 저희 팀원들이 다들 놀래는거 보셨잖아요.”

“그거야 간단한··· 아 아니 그렇게 간단한건 아니었지만···”

“거봐요. 그 정도가 간단한거면 천재 맞죠. 하하하”


그렇게 최진우와의 짧은 대화가 오가던중 PDA팀 직원들이 하나 둘 출근하기 시작했다.

성훈을 발견한 직원들은 하나같이 반갑게 인사해주었고, 그것도 모자라 성훈을 중심으로 둘러앉아 그에 대해 이것저것 물어보기 시작했다.


“성훈씨, 알고리즘 공부는 어디서 한거야? 시간날때 나도 좀 알려줘.”

“OS 개발 관련 지식은 학교 연구실에서 다 배운거야?”

“혹시 유닉스 계열의 운영체제도 다룰줄 알아?”


같은 기술적인 질문들 부터.


“성훈씨··· 혹시 여자친구 있어?”

“이상형 있어 이상형?”


와 같이 사심이 섞인 질문까지.

숨 쉴 틈없이 밀려들어오는 질문공세에 성훈은 머리를 긁적이며 난감한 표정으로 대답을 대신했다.

그때 박기남 팀장이 사무실안으로 들어오자 성훈주위에 있던 사원들이 황급히 자리로 돌아갔다.


“하하하! 이 익숙한 얼굴이 누군가 했더니 우리 성훈군 아닌가. 반가워요.”


박기남이 손을 내밀자 성훈이 그의 악수를 받아 내며 말했다.


“앞으로 잘 부탁드립니다. 팀장님.”

“그래요. 자자. 다들 주목! 오늘 새로 인턴도 왔으니 잠시만 회의실로 들어오라고. 허허”


#


회의실에서 성훈의 짧은 소개가 끝나자 다시 박기남이 입을 뗐다.


“윤인턴은 일단 PDA OS 테스트에 집중을 해줘요. 아무래도 직접 개발에 참여도 했고, 무엇보다 OS 성능을 높이는데 큰 성과를 보인바 있으니 테스트에 제격이라는 생각이 들어서말이야. PDA 출시예정일이 한달앞으로 다가왔으니 그 동안만 테스트에 전념해주게.”


OS 테스트.

OS에대한 기본적인 지식들이 필요할 뿐만 아니라 수백, 많게는 수천가지의 예외적인 상황 들을 유연하고 신속하게 대처하는 것이 중요한 테스트 업무였다.

박기남은 성훈이 디버깅하는 모습을 이제껏 많이 봐왔었다.

그때마다 박기남은 현재의 팀원들 중 이만한 실력을 갖춘 사람이 있을까 라는 생각마저 들었었다.

그순간.

못 마따한 표정을 연신 짓고있던 정지만이 천천히 손을 들어 올렸다.


“팀장님. 오늘 막 입사한 인턴한테 그런 중업무를 맡기는건 무리입니다. 개발 중간 테스트도 아니고 최종 테스트에 인턴을 투입시키다니요. 만에 하나 뭔가 잘못되기라도 하면··· 그 책임은 아마 팀장님이 지셔야 할 수도 있습니다.


정지만의 말이 끝나기 무섭게 박기남이 바로 입을 열었다.


“그럼 정주임이 같이해.”

“네?”

“정주임이 윤인턴이랑 같이 테스트 하라고. 그렇게 불안하면.”

“그···그 뜻이 아니라··· 제 말은···”

“왜? 하기싫어?”


박기남이 정지만을 매섭게 노려보며 묻자 정지만이 손사래를 치며 말했다.


“아뇨아뇨. 그건 아니지만··· 제 경력에 제품 테스트는 쫌··· 그렇지 않습니까. 하하. 제 아래도 테스트 할 사람 많고요.”

“흠··· 언제부터 우리가 테스트 하는일에 경력을 따졌었지?”

“···”


특별히 대꾸할만한 말이 생각 안난 정지만이 무겁게 고개를 주억거렸다.


“더이상 잔말말고 윤인턴이랑 테스트 진행해. 아 참! 그전에··· 아직까지도 못잡고 있는 버그들 있지? 그거 부터 먼저 해결하고.”


정지만이 기다렸다는 듯 말을 꺼냈다.


“그 버그들은 전에도 말씀드렸듯이 저희쪽 문제가 아니라 하드웨어 쪽 문제라고 말씀드렸습니다만···”

“그래도 다시한번 확인해봐. 그렇지 않아도 하드웨어팀에서도 지금 그 문제 때문에 골치아파 하는 모양이던데. 오전에 내가 직접 가서 확인해볼테니까, 나 오기전까지 우리쪽 문제가 아니라는걸 확실히 박아둘 명확한 근거를 찾아내!. 그리고··· 윤인턴!”

“네?”

“디버깅 하는 도중에 잘 모르겠거나 잘 안풀리면 여기 이 정지만 주임한테 많이 물어보고 조금씩 배워둬. 물론···”


순간 박기남의 입에서 ‘뭐 정주임 보다 더 잘 알지도 모르겠지만.’라는 말이 나올 뻔했지만, 꾹 참고 넘어갔다.


“···바로 이해하는건 어렵겠지만 하는데까지 해보게.”

“네. 팀장님. 최선을 다하겠습니다.”


성훈의 당돌한 대답이 귀에 거슬린 정지만이 입술을 잘근잘근 씹었다.


‘최선? 웃기고 있네. 그 당돌함 얼마나 가나 보자. 니가 아무것도 아니라는 걸 이 정지만이가 뼈저리게 느끼게 해주지···’


짧은 회의시간이 끝나자 정지만이 기다렸다는 듯 성훈의 자리 옆에 섰다.

그리고는 손에 집고있던 A4용지를 책상에 던지며 입을 열었다.


“버그 리스트다. 이 버그들 현상 제대로 파악하고, 무슨 문제가 있는지 정리해서 나한테 가지고 와. 아 그리고. 소스에 손댈 생각하지 말고 눈으로만 봐. 괜히 건드렸다가 일 복잡하게 만들지 말고. 내 말 다 이해했지?”

“네. 그런데···”

“그럼 시작.”


그 한마디 만을 던지고는 휙 돌아 다시 자리로 돌아갔다.

성훈은 정지만의 뒷모습을 멍하니 바라봤다.


‘소스파일이 어딨는지는 말해줘야 될거 아니야···’


정지만에 대한 괘씸한 생각이 들때 쯤. 옆에 앉아있던 최진우가 상체를 성훈에게로 쭉 내밀며 조용한 목소리로 말했다.


“성훈씨. 저희팀에 전용 FTP서버 (File Transfer Protocol : 파일 전송 프로토콜)가 있습니다. 여기···”


FTP서버.

동일한 네트워크 상의 컴퓨터들간에 파일을 공유할 수 있는 원격 서비스 프로그램이며, 서버에 접근하기 위해서는 서버 IP주소와 아이디, 비밀번호 등의 계정정보가 필요하다.

최진우가 건넨 포스트잇에는 그러한 정보들이 기재되어 있었다.


“FTP서버에 접속하시면 PDA 관련 소스파일들이 있을거에요. 그 파일들을 로컬디스크에 다운로드 받아, 쓰시면 되요.”

“고마워요.”

“헤헤. 천만에요. 하시다가 또 모르는거 있으면 저한테 물어보세요.”


최진우가 주먹을 꾹 쥔 손을 치켜들자 성훈이 환하게 웃으며 고개를 끄덕였다.

그리고는 곧바로 정지만이 던지고간 A4용지를 찬찬히 훑어보기 시작했다.

그 중 중복적으로 나타나는 버그들이 성훈의 눈에 띄었다.


-프로그램 속도 저하 현상.

-프로그램의 비정상적인 다운(멈춤) 현상.


‘흠. 이런 현상들이 계속적으로 발생한다는건 어디선가 프로세스를 잡고 있거나 스택쪽에 버퍼 오버플로우가 발생하고 있다는건데··· 일단 확인부터 해볼까.’


성훈은 임베디드 OS 개발경험은 적었지만, 모든 프로그램의 속도는 메모리가 얼마나 효율적으로 관리하고 사용하는지에 따라 결정된다는 사실정도는 이미 충분히 숙지하고 있었다.

어느정도 감을 잡은 성훈이 PDA를 동작시키고 해당 현상들이 실제로 재현이 되는지 확인했다.


-CPU Speed : 230MHz
-Memory(RAM) Used : 9MB


‘흠. 여러개의 태스크를 동작시키면 확실히 CPU속도가 처음 실행 할때보다 현저히 느려지고 있어. 메모리도 어디선가 계속 늘어나고있고. 게다가 프리징 현상까지···’


프리징 현상.

CPU와 메모리가 탑재된 PDA나 컴퓨터가 작업도중 갑작스럽게 멈추는 현상을 말한다.

얼핏 보기에는 단순한 멈춤현상으로 보이나 그 뒤에는 다양한 원인들이 존재한다.

프로세스 출돌, 바이러스, 그 외 하드웨어적인 불량까지.,.

만일 하드웨어적인 결함이라면 일이 커질 수도 있고, 최악의 상황은 하드웨어 설계부터 다시 진행되어야 할 수도 있는 상황.

정확히 소프트웨어 버그인지, 하드웨어적 결함인지는 차차 하나씩 확인하면 금방 알 수도 있는 대목이었다.


‘먼저 소스를 어떻게 구현했는지 봐야겠군.’


딸각


성훈은 관련된 소스파일들을 하나씩 열어 보았다.


-msProgramMain.cpp

-msMemoryManager.cpp

-msFileSystemManager.cpp

···.


그렇게 소스만 뚫어지게 보던 성훈이 입안에서 중얼거렸다.


“흠. 일단 메모리 누수가 의심되는데···”


그때


“뭐? 메모리 누수?”


파티션위로 머리만 내민채 서있는 정지만이 험상궂은 얼굴로 물었다.


“네? 아 네··· 소스를 확인하던 중 메모리 주소를 할당한 프로세스가 제대로 해제가 되지 않아 메모리가 누적되어 프로세스 속도가 줄어든 것으로 확인됩니다. 하지만 보다 정확한 원인을 파악하기 위해서는 디버깅 작업이 필요한 상황입니다.”

“그게 뭔 뚱딴지 같은소리야? 그렇게 허술하게 소스를 짠 놈이 우리팀에 있다는거야 지금?”

“현재로써는···”

“무슨 소스 파일인데? 이참에 교육들 단단히 시켜야지. 원.”

“네. msAppMemoryMap.cpp 파일입니다.”


순간 정지만의 얼굴이 왈칵 구겨졌다.

그의 얼굴은 점점 홍당무처럼 벌게졌고, 동공이 산만하게 흔들리고 있었다.


“그···그럴리 없어.”

“네?”

“이건 애초부터 하드웨어 문제였어. 무리한 오버클록으로인해 CPU, 램에 들어가는 전압이 부족해서 나오는 현상이라고. 애초에 우리쪽 문제가 아니었다고. 알겠어?”


오버클록.

부품이 제조업체에 의해 설계된 것 보다 강제로 더 높은 클록 속도를 동작할 수 있게 만드는 과정을 말한다.

오버클록시, 프리징 현상이 가끔 나타나지만 CPU가 고사양인 만큼 속도는 그 배가 된다.

하지만, 정지만의 말에 반박이라도 하듯 CPU속도는 점점 느려지고 있었다.

즉, 하드웨어가 아닌 소프트웨어의 문제로 밖에 해석이 되지 않았다.


“여기 분명히···”

“버그 리스트 이리내.”

“네?”

“가져오라고. 당장!”


정지만은 성훈이 들고있던 A4용지를 휙 빼가고는 다시 자리로 돌아갔다.

사무실 분위기가 한순간 얼음장처럼 얼어붙었다.

그 분위기는 점심시간이 될때까지 팽배하게 이어졌다.


모두가 점심식사를 하러 간 사이.

성훈은 혼자 사무실에 남아 머리를 쥐어 짜고 있었다.


‘확실히 메모리 누수 문제였어.’


성훈은 소스파일을 열고는 키보드에 손을 올렸다.

하지만 OS단 메모리 누수 버그를 한번도 수정해본적없던 성훈은 당장에 해결방법이 머릿속에 떠오르지 않았다.


‘그렇다면···’


성훈은 앉은 자리에서 고개를 이리저리 돌리며 주위를 살펴보고는, 주머니에서 스마트폰을 슬쩍 꺼냈다.

재빠르게 Wow어플을 실행함과 동시에 검색한 기록들이 담겨있는 브라우저로 넘어갔다.

성훈은 몇가지 검색 키워드를 골라 검색란에 올렸다.


[win CE memory leak]


그러자 그와 관련된 수많은 검색기록들이 스마트폰 액정을 가득채웠다.


[javamaster.com : “Memory leak in winCE and How to avoid it ”을 검색했습니다.]

[softwarestory.com : “How to detect winCE memory reak”을 검색했습니다.]

[embededwtf.com : “How to Fix memory leak problem in window CE OS”을 검색했습니다.]

···.


성훈은 해당 링크주소로 들어가 문제를 파악해 갔고, 차근차근 하나씩 해결책을 찾아갔다.

그리고 수분후.

버그를 어느정도 수정한 성훈이 소스 컴파일을 한후 다시 PDA를 실행했다.

그러자 한눈에봐도 확 달라진 값들이 PC모니터에 표시되고 있었다.


-CPU Speed : 420MHz
-Memory(RAM) Used : 2.5MB


이 작품은 어때요?

< >

Comment ' 0


댓글쓰기
0 / 3000
회원가입

회귀하고 탑코더 연재란
제목날짜 조회 추천 글자수
23 회귀하고 탑코더 23화 +5 22.01.06 1,018 25 9쪽
22 회귀하고 탑코더 22화 22.01.05 912 16 11쪽
21 회귀하고 탑코더 21화 +1 22.01.04 1,003 24 13쪽
20 회귀하고 탑코더 20화 +1 22.01.03 1,070 20 13쪽
19 회귀하고 탑코더 19화 +5 21.12.31 1,240 25 11쪽
18 회귀하고 탑코더 18화 +1 21.12.30 1,247 24 12쪽
17 회귀하고 탑코더 17화 21.12.29 1,278 23 12쪽
16 회귀하고 탑코더 16화 +1 21.12.28 1,283 25 14쪽
15 회귀하고 탑코더 15화 +1 21.12.27 1,276 26 13쪽
14 회귀하고 탑코더 14화 +1 21.12.25 1,321 26 13쪽
13 회귀하고 탑코더 13화 +1 21.12.24 1,302 25 13쪽
12 회귀하고 탑코더 12화 +3 21.12.23 1,331 27 14쪽
11 회귀하고 탑코더 11화 +2 21.12.22 1,342 27 12쪽
10 회귀하고 탑코더 10화 +2 21.12.21 1,384 28 14쪽
» 회귀하고 탑코더 9화 21.12.20 1,424 26 14쪽
8 회귀하고 탑코더 8화 +5 21.12.20 1,449 33 13쪽
7 회귀하고 탑코더 7화 +1 21.12.17 1,477 33 13쪽
6 회귀하고 탑코더 6화 21.12.16 1,480 27 13쪽
5 회귀하고 탑코더 5화 21.12.15 1,550 29 12쪽
4 회귀하고 탑코더 4화 21.12.14 1,640 33 13쪽
3 회귀하고 탑코더 3화 21.12.13 1,693 34 13쪽
2 회귀하고 탑코더 2화 +3 21.12.13 1,830 34 13쪽
1 회귀하고 탑코더 1화 21.12.13 2,280 36 13쪽

구독자 통계

신고 사유를 선택하세요.
장난 또는 허위 신고시 불이익을 받을 수 있으며,
작품 신고의 경우 저작권자에게 익명으로 신고 내용이
전달될 수 있습니다.

신고
비밀번호 입력