Abstract
The applications program that running on Operating System has high dependence. Because environment of OS and standard libraries that supports are different. For those reason, Applications that perform the same function should be implemented in accordance with the new operating system. This results in a temporal and economic waste not only in subsequent maintenance of application but also in management. Even though, to solve this problem Cygwin or MinGW has been distributed, they do not support the portability of the application but provide a virtual environment and the tool. Therefore, in this paper, we design the wrapper format interface middleware using the POSIX and standard C library to support the application performing the same function on virtual environment and without code modification. The middleware can be selectively loading the API that is classified by basic and extend. This allows to managing the application size efficiently. Also, perform the comparative experiments and performance evaluation for application, on equipped with the Interface Middleware Linux, Unix, Windows and on Cygwin.
운영체제 상에서 동작하는 응용프로그램은 운영체제의 환경과 지원하는 표준 라이브러리들이 다르기 때문에 운영체제에 매우 높은 의존성을 가진다. 이러한 이유로 동일한 기능을 수행하는 응용프로그램도 운영체제에 따라 새롭게 구현해야 되며 이는 응용프로그램 개발 이후의 유지 보수나 관리 측면에서도 시간적, 경제적 낭비를 초래한다. 이를 해결하기 위해 Cygwin이나 MinGW 등의 연구가 진행되고 있지만, 가상환경이나 툴을 제공하는 것일 뿐 응용프로그램 자체에 대한 이식성을 지원하는 것은 아니다. 따라서 본 논문에서는 표준 C라이브러리와 POSIX를 이용한 래퍼 형식의 범용 운영체제를 위한 인터페이스 미들웨어를 설계하여 응용프로그램이 가상환경이나 코드 수정 없이 동일한 동작을 지원한다. 미들웨어는 API를 기본과 확장으로 분류해 선택적으로 적재하여 응용프로그램의 크기를 효율적으로 관리할 수 있도록 한다. 또한, 응용프로그램을 인터페이스 미들웨어를 탑재한 Linux, Unix, Windows와 Cygwin을 비교 실험하고 기능 및 성능 평가를 수행하였다.