기관회원 [로그인]
소속기관에서 받은 아이디, 비밀번호를 입력해 주세요.
개인회원 [로그인]

비회원 구매시 입력하신 핸드폰번호를 입력해 주세요.
본인 인증 후 구매내역을 확인하실 수 있습니다.

회원가입
서지반출
경량 동적 코드 변환을 이용한 커널 수준 소프트웨어 계측에 관한 연구
[STEP1]서지반출 형식 선택
파일형식
@
서지도구
SNS
기타
[STEP2]서지반출 정보 선택
  • 제목
  • URL
돌아가기
확인
취소
  • 경량 동적 코드 변환을 이용한 커널 수준 소프트웨어 계측에 관한 연구
저자명
이동우,김지홍,엄영익,Lee. Dong-Woo,Kim. Jee-Hong,Eom. Young-Ik
간행물명
인터넷정보학회논문지
권/호정보
2011년|12권 5호|pp.63-72 (10 pages)
발행정보
한국인터넷정보학회
파일정보
정기간행물|
PDF텍스트
주제분야
기타
이 논문은 한국과학기술정보연구원과 논문 연계를 통해 무료로 제공되는 원문입니다.
서지반출

기타언어초록

코드변환 기법은 특정 명령어 집합 구조에서 작성된 프로그램 코드를 다른 구조에서 실행할 수 있도록 변환하는 일종의 에뮬레이션 기법이다. 이 기법은 주로 구형 시스템에서 동작하는 응용프로그램을 새로운 시스템에서 동작시키기 위해 사용되었다. 코드를 변환하는 과정에서 동적으로 코드를 삽입하는 것이 가능하기 때문에 소스코드의 수정 없이 기존 응용프로그램을 계측할 수 있다. 이미 응용프로그램 분야에서는 동적코드분석과 가상머신에서 이러한 기법이 널리 활용되고 있다. 반면에 운영체제의 커널은 일반적인 유저 수준의 응용프로그램과는 다른 특성을 지니기 때문에 커널 수준에서 이러한 코드변환 기법을 사용하려면 시스템 성능, 메모리 관리, 특권 명령어 처리 및 동기화와 관련된 문제가 다루어져야 한다. 본 논문에서는 커널 수준의 동적코드변환 기법을 설계하고 코드삽입을 통한 소프트웨어 계측을 제안한다. 제안기법을 리눅스 커널에 적용하여 실험을 수행하고 그 결과를 통해 본 제안기법이 커널수준에서 소프트웨어 계측에 적은 성능 부하만을 야기함을 확인하였다.

기타언어초록

Binary translation is a kind of the emulation method which converts a binary code compiled on the particular instruction set architecture to the new binary code that can be run on another one. It has been mostly used for migrating legacy systems to new architecture. In recent, binary translation is used for instrumenting programs without modifying source code, because it enables inserting additional codes dynamically, For general application, there already exists some instrumentation software using binary translation, such as dynamic binary analyzers and virtual machine monitors. On the other hand, in order to be benefited from binary translation in kernel-level, a few issues, which include system performance, memory management, privileged instructions, and synchronization, should be treated. These matters are derived from the structure of the kernel, and the difference between the kernel and user-level application. In this paper, we present a scheme to apply binary translation and dynamic instrumentation on kernel. We implement it on Linux kernel and demonstrate that kernel-level binary translation adds an insignificant overhead to performance of the system.