2013년 1월 1일 화요일

오래된이야기 1996 에스콰이어 TSR램상주 통신중계 프로그램(KISC연구소)

1996 에스콰이어 TSR램상주 통신중계 프로그램(KISC연구소)
- 4대의 PC에서 데이터 수집
- 코넷으로 연결한 한 대의 PC에서 수집 통신처리
- 멀티 처리기법 개발
- TSR통신 데몬
- 설치장비: IBM POS-PC(4695 텃치스크린용)
- language: C/ASM os: POS-DOS 또는 MS-DOS
첫번째 시도한 램상주 TSR 프로그램입니다.
좋게 말하면 TSR이지만 나쁘게 말하면 바이러스 입니다.
이 TSR은 에스콰이어에서 운영중인 POS 에 4대 기준으로 하나가 설치되고
설치된 TSR은 4대의 POS와 동시에 TCP/IP 통신을 해서 데이터를 수집해서
본부와의 TCP/IP 통신을 대행해주는 프로그램입니다.
개발시 어려웠던 점이 당시 하나의 실행모듈만 사용할수 있던 상황에서 렘덤으로 으루어지는 수집된 데이터를
수집과 동시에 각각 개별 동시처리해야 하는 점입니다.
통신시간이 길었던 당시에 순차적으로 한다면 4대의 포스에서 이루워지는 결재가 제대로 될리 없겠지요...
고민하면 이루워지는 것일까요~
해결방법은 하나의 프로그램모듈 중간중간에 Jump/Return Trap 을 설하는것으로 해결했습니다.
하나의 클래스를 갯수만큼 선택해서 동시에 실행하고 일정부분 실행하면 다음실행위치로 가기전에 다른
실행Class위치를 실행시키고 다시 그위치로 실행코드가 돌아올수 있도록 트릭을 사용한 것이지요
( 이를테면 일정한 코드를 실행시키면 다음 클래스의 마지막 기억위치 부분부터 실행하고 다른클래스 실행위치를 찾는,
편법적인 순차적인 실행입니다. 그러나 마지막 위치는 각클래스마다 다르게 기억해야합니다. )
개인적으로는 하나의 바이러스를 개발한것만큼 자부심을 갖게 만든 작품이지만
주문한 pm와 고객은 잘돌아가는 것을 보고는 제 업무로 돌아가더군요 ^^
마치 당연한 것처럼~
어쨋든 다음os가 Window였으므로 당연한 것이 되긴 했습니다만
개인적으로는 좀더 발전 시키는 기회가 있기를 바라긴 했습니다.

댓글 없음:

댓글 쓰기