프로그래밍언어논문지 제17권 제1호 (2003년)
권두언:
이양선
[.PDF 163KB]
논문
- 소프트웨어 아키텍처에서 쓰레드를 이용한 커넥터 확장
정화영
- 무선 환경에서 데이터 공간의 확장을 위한 모바일 에이전트의 설계 및 구현
나승원, 오세만
- SCOP 분류 정보를 활용한 단백질 구조 비교
김진홍, 안건태, 변상희, 이수현, 이명준
- 자바컴포넌트 기반의 유전체 연구 협업지원 시스템
안건태, 김진홍, 한인섭, 이명준
- 지역성에 기반한 RAID 5의 2단계 디스크 캐시
허정호, 장태무
- Exception Propagation Analysis for Java
조장우, 창병모
- 증가분 계산에 기반한 고정점 계산을 위한 워크리스트 알고리즘
안준선
튜토리얼
특별기고
- 엣져 위베 다익스트라(Edsger Wybe Dijkstra,1930년 5월 11일 ― 2002년 8월 6일)
[.PDF 2168KB]
김도형
본문
소프트웨어 아키텍처에서 쓰레드를 이용한 커넥터 확장 [.PDF 1960KB]
- 저자: 정화영
- 요약:
소프트웨어 개발은 객체지향 기법에서 최적의 효율성을 찾고 있으며 이에
따라 디자인 패턴, 컴포넌트 기반 개발기법 등이 연구 및 도입되고
있다. 즉, 소프트웨어는 라이브러리나 모듈기반의 단위에서 하나의
독립기능단위 부품인 컴포넌트를 조립 및 합성하여 새로운 시스템을
구축하는 기법으로 변화되고 있다. 소프트웨어 아키텍처는 이에 관한 각
기능역할 및 구조를 체계적으로 표현하고 있다. 그러나, 기존의 아키텍처
기반 조립 및 합성은 연결구조를 갖는 커넥터에서 단순히 메시지 큐를
이용한 직접적인 연결처리 방식으로 처리되고 있어서 컴포넌트의
다중연결구조를 갖는 조립형태에서는 각 컴포넌트의 요청에 효율적으로
대처할 수 없었다.
따라서, 본 연구에서는 커넥터부분의 메시지 큐를
쓰레드의 형태로 구현하였으며 이를 통하여 다중의 컴포넌트에서 처리
메시지 요구시 자동으로 처리를 할당하도록 하였다. 또한, 여러
컴포넌트에서 비동기적으로 요청되는 메시지에 대하여 메시지 큐와 커넥터를
분리하여 처리함으로서 커넥터에서 메시지의 처리 할당을 효율적으로 할 수
있도록 하였다.
무선 환경에서 데이터 공간의 확장을 위한 모바일 에이전트의 설계 및 구현 [.PDF 3127KB]
- 저자: 나승원, 오세만
- 요약:
이동통신과 인터넷 기술의 결합으로 탄생한 무선 인터넷은 이동의 편리성을
제공하며 성장해가고 있다. 그러나 모바일 환경이 가지고 있는 제한 사항
때문에 대중적인 서비스로 발전하지 못하고 있는 실정이다. 특히 모바일
환경의 제한 요소 중 협소한 메모리 공간으로 효율적인 자원 관리를
수행하지 못하는 단점이 있다. 기술이 발전함에 따라서 메모리 공간을
확대시켜 이와 같은 문제를 해결할 수는 있겠지만 소형화되어야 하는
디바이스의 하드웨어 특성상 충분한 메모리 용량을 확보하는 데에는 한계가
있다.
본 논문에서는 모바일 디바이스의 내부에서 외부의 서버까지 메모리
공간을 확장하여 데이터 활용이 가능하고 디바이스 내부의 파일을
효율적으로 관리할 수 있는 모바일 에이전트를 제시하며 이를 실현하기 위한
자원 관리시스템(RMS: Resources Management System)을 설계하고
구현하였다. 제안된 RMS를 적용한 디바이스는 데이터 영역의 확장을 통해서
확대된 프로세스 적용이 가능하며 내부 파일을 관리하여 최적의 메모리
공간을 유지하는 효과를 제공한다
SCOP 분류 정보를 활용한 단백질 구조 비교 [.PDF 3209KB]
- 저자: 김진홍, 안건태, 변상희, 이수현, 이명준
- 요약:
PSAML 기반의 단백질 구조 비교 방법은 단백질의 2차구조 구성요소와 그들
사이의 관계를 이용하여 단백질 구조를 기술하고, 두 단백질 구조 사이의
유사성 그래프를 생성한 후, 최대 유사 부분 그래프를 찾는 방법을 이용하여
유사한 부분 구조를 찾는다. 그러나, PSAML 기반의 단백질 구조
데이터베이스의 데이터 량이 증가함에 따라 단백질 구조 비교에 요구되는
계산 량을 줄이는 효과적인 방법이 요구된다.
본 논문에서는 PSAML 기반의
단백질 구조 비교를 보다 빠르고 효과적으로 수행하기 위하여 단백질
폴드(Fold) 또는 패밀리(Family)를 대표하는 아미노산 서열 정보 및 단백질
구조 분류 정보를 활용하는 방법에 대하여 기술한다. 개선된 PSAML 기반의
단백질 구조 비교 방법은 단백질 아미노산 서열을 이용하여 서열상 유사성이
높은 단백질 구조(Domain)를 필터링하고, 그 결과를 이용하여 추출된 단백질
구조 분류에 속한 모든 단백질 구조와 비교할 수 있는 방법을 제공한다.
자바컴포넌트 기반의 유전체 연구 협업지원 시스템 [.PDF 2623KB]
- 저자: 안건태, 김진홍, 한인섭, 이명준
- 요약:
포스트지놈 시대가 도래되면서 유전체 관련 기술과 지원 프로그램에 대한
연구가 활발해지고 있다. 특히 유전체 연구의 특성상 연구그룹들이
지역적으로 분산된 경우가 많아서 연구과정에서 생성되는 결과물이나
정보들을 효과적으로 공유하고 교환할 수 있도록 지원하는 시스템의
필요성이 증대되고 있다. 이러한 시스템은 지속적인 서비스를 제공하면서도
사용자의 다양한 요구를 신속하게 처리하여 주는 것이 바람직하다.
본
논문에서는 유전체 연구를 위한 연구자에게 사용자 중심의 유전체 검색
시스템을 제공하고, 특정 연구 분야의 연구자 사이에 연구에 관련된 정보와
의사 교환을 용이하게 지원하는 BioPlace 협업지원 시스템에 대하여
기술한다. BioPlace 시스템은 자바 컴포넌트 아키텍처인 EJB 기술을
이용하여 확장성이 높으면서도 다중 사용자 환경에서 안정적인 서비스를
제공하도록 설계되었다.
지역성에 기반한 RAID 5의 2단계 디스크 캐시 [.PDF 3510KB]
- 저자: 허정호, 장태무
- 쪽:
- 요약:
RAID 시스템에서 디스크 캐시는 시스템 성능 향상에 중요한 요소 중
하나이다. 2단계 캐시는 1단계 캐시에 비해 우수한 성능을 보이고 시간적,
공간적 지역성에도 효율적이다. 제안된 캐시 시스템은 2 단계로 구성되어
1단계 캐시는 작은 블록 크기로 구성되어 세트 연관 사상 방식을 이용하고
2단계 캐시는 큰 블록 크기로 구성되어 전 연관 사상 방식을 사용한다. 본
논문에서는 특히 대용량 디스크 캐시에서 디스크 입출력 시간을 향상시키고
효율적으로 일관성을 유지할 수 있는 디스크 제어기 상에 위치하는
RAID5디스크 캐시의 모델을 제시하여 적중률과 서비스 시간 면에서 본
논문에서 제시한 2단계 캐시 구조가 향상되었음을 보이고자 한다.
Exception Propagation Analysis for Java [.PDF 4203KB]
- 저자: 조장우, 창병모
- 요약:
Exception analyses so far cannot provide information on the
propagation of thrown exceptions, which is necessary to construct
interprocedural control flow graph, visualize exception propagation,
and slice exception-related parts of programs. In this paper, we
propose a set-based analysis, which can estimate exception propagation
paths of Java programs finitely. Our analysis is unique to the other
exception analyses, in that it can show exception propagation
paths. We show the soundness of the analysis and also provide some
applications
증가분 계산에 기반한 고정점 계산을 위한 워크리스트 알고리즘 [.PDF 577KB]
- 저자: 안준선
- 요약:
요약 해석에 기반한 프로그램 분석에서 분석 시간의 대부분은 고정점 계산을
위하여 소모된다. 이에 대하여, 고정점 계산을 위한 함수의 반복 적용 시에
함수의 적용으로 인한 새로운 증가분만을 계산함으로써 고정점 계산의
속도를 높이는 방법이 제안되었다. 본 논문은 이러한 증가분 계산에 기반한
고정점 계산 방법을 설명하고, 이를 위한 새로운 워크리스트(worklist)
알고리즘을 제시한다. 제시된 워크리스트 알고리즘은 각각의 계산 작업에
사용되는 변수값들의 증가분을 각각 따로 관리하지 않고도 워크리스트 내의
계산들의 스케줄링을 자유롭게 할 수 있다는 장점이 있다. 제시된
알고리즘을 사용하여 요약 해것에 기반한 상수-이명 분석을 구현하였으며,
실제적인 프로그램들을 사용한 실험을 통하여 증가분에 기바한 함수값
계산과 적절한 워크리스트 스케줄링을 사용하여 분석 시간을 절약할 수
있음을 보였다.
다익스트라의 '프로그래밍의 수련(修練)':여덟 번째, 유클리드 알고리즘의 재고찰(再考察) [.PDF 2122KB]
- 저자: 김도형
- 요약:
이번 튜토리얼에서는 두 양의 정수의 최대공약수를 구하는 유클리드
알고리즘을 다시 살펴본다. 이 알고리즘은 이미 첫 번째 튜토리얼인 '수행의
추상화'에서 '판지 기계(cardboard machine)'를 사용하여 고찰한 바
있다. 그러나 이번에는 두 번째부터 일곱 번째 튜토리얼 동안 설명하여 온
다익스트라의 프로그래밍 방법론을 사용하여 이 알고리즘을 다시 살펴보는
것이다.
시맨틱 웹을 위한 마크업 언어들과 관련 기술들에 대한 연구 [.PDF 3471KB]
- 저자: 유명환, 정희준, 민재홍, 이강찬, 정인정
- 요약:
컴퓨터 통신기술이 급격히 발달하고 인터넷이 광범위하게 사용됨에 따라서,
웹은 다양하며 무한한 용량의 데이터 원천으로 부각되었다. 그리고 문법이
간단하고 사용하기 쉬운 HTML 및 XML과 같은 마크업 언어들로 다양한 데이터
원천이 웹 처리에 알맞게 표현될 수 있음에 따라서, 컴퓨터 전문가가 아닌
일반인들도 쉽고 편리하게 원하는 정보에 접근할 수 있게 되었다. 그러나
웹의 사용이 지수적으로 증가함에 따라 웹 상에서 원하는 유용한 데이터를
찾고 구성하며 통합하는 일들이 매우 어렵게 되고 있다. 이와 같은 웹의
문제점들은 지금까지 광범위하게 사용되고 있는 HTML, XML, RDF(S) 등과
같은 마크업 언어들이 사람의 이해와 처리를 위해 고안되어 웹 데이터의
문법형식은 충분히 표현할 수 있으나 의미를 표현하는 능력이 크게 미흡하기
때문이다. 이러한 웹의 심각한 문제점들을 해결하고 자동화된 웹 서비스를
실현시키기 위하여, 온톨로지 기반의 시맨틱 웹 기술이 1990년대 말에
소개되었다. 컴퓨터 기계가 정보를 처리할 수 있도록 목적된 시맨틱 웹은
전자상거래, 지식표현 및 관리, 지능형 정보검색 등의 다양한 분야에서
광범위하게 활용되고 있다. 본 논문에서 우리는 웹의 지금까지의 문제점들을
알아보고 시맨틱 웹을 위해 현재 개발 중인 마크업 언어 및 관련기술 등을
살펴본다. 마지막으로 시맨틱 웹을 효과적으로 구현하기 위한 환경을
연구·제안한다.
프로그래밍언어 연구회