• 제목/요약/키워드: binary translation

검색결과 48건 처리시간 0.049초

경량 동적 코드 변환을 이용한 커널 수준 소프트웨어 계측에 관한 연구 (Kernel-level Software instrumentation via Light-weight Dynamic Binary Translation)

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

재목적성을 고려한 직접 매핑 기반의 이진 변환 규칙 생성 도구 (Direct Mapping based Binary Translation Rule Generator with Considering Retargetability)

  • 서용진;김현수
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제41권7호
    • /
    • pp.501-517
    • /
    • 2014
  • 이진 변환은 특정 장치에서 동작하도록 구성된 프로그램을 다른 장치에서 동작할 수 있도록 재구성하는 과정을 말한다. 이진 변환을 수행하기 위해서는 두 장치 사이의 변환 규칙을 생성하는 것이 매우 중요하다. 변환 규칙을 생성하는 방법은 직접 매핑과 간접 매핑으로 나뉜다. 직접 매핑은 성능을 위한 방법인 반면, 간접 매핑은 재목적성을 위한 방법이다. 본 논문에서는 임베디드 시스템에 적합한 직접 매핑 기반의 이진 변환을 수행한다. 그렇지만 재목적성 역시 중요한 요구사항이기 때문에, 재목적성을 고려한 직접 매핑 기반의 이진 변환 방법을 제안한다. 또한 제안된 방법을 바탕으로 자동으로 변환 규칙을 생성하는 도구를 구현한다. 이 방법을 통해서 성능과 재목적성을 모두 고려한 변환 규칙을 생성할 수 있으며, 더 나아가 이진 변환을 수행하는데 소요되는 비용을 줄일 수 있다.

경량 동적 코드 변환 기법을 이용한 동적 인스트루멘테이션 기법 설계 및 구현 (Design and Implementation of a Dynamic Instrumentation Framework based on Light-weight Dynamic Binary Translation)

  • 김지홍;이동우;김인혁;엄영익
    • 정보과학회 논문지
    • /
    • 제41권11호
    • /
    • pp.892-899
    • /
    • 2014
  • 동적 인스트루멘테이션 기법은 동적 코드 변환 기법을 사용하여 프로그램의 수행 흐름을 흐트러뜨리지 않으면서 분석 코드를 삽입하는 구현 기법으로 사용되고 있다. 기존의 동적 코드 변환 기법은 머신 코드 스트림을 중간 코드 형태로 파싱하고, 이를 일반적인 컴파일러 기법에 적용함으로써 코드를 변환한다. 이러한 방식의 코드 변환 과정에서 수반되는 높은 변환 오버헤드는 응답성이 높은 사용자 프로그램에 적용을 어렵게 한다. 본 논문에서는 변환 과정의 경량화를 통해 변환 오버헤드를 줄임으로써, 높은 동적 코드 변환 성능을 가지는 경량 동적 코드 변환 기법을 제안하고, 이를 기반으로 하는 동적 인스트루멘테이션 프레임워크를 제안한다. 제안 기법은 테이블 기반의 새로운 동적 주소 변환 기법으로 코드를 변환하고, 더불어 자주 실행되는 라이브러리 함수에 대해 변환 과정에 대해서는 주소 변환만을 함으로써 변환 오버헤드를 줄이는 변환 우회 기법을 이용한다. 기존 동적 코드 변환 기법과의 비교를 통해 2%~65%의 성능 향상을 확인하였다.

레지스터 사용해제 지연을 통한 바이너리 변환 성능향상 (Faster Binary Translation by Delayed Deallocation of Temporary Registers)

  • 최민
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2013년도 춘계학술대회
    • /
    • pp.494-496
    • /
    • 2013
  • 최근 각종 스마트 디바이스의 활용이 급속히 활용이 늘어나고 있다. 본 연구는 바이너리 변환(Binary Translation) 기술에 있어 레지스터 할당 관점에서의 성능향상 기법을 소개한다. 사용이 끝난 임시 레지스터의 재사용을 위해서 자원의 사용해제를 지연한다. 따라서, 다음 명령어가 직전에 사용된 임시 레지스터의 재사용을 통해, 자원을 해제하고 재할당하는 오버헤드 없이 바이너리 변환의 성능향상을 꾀할 수 있도록 한다.

  • PDF

Runtime Software Monitoring Based on Binary Code Translation for Real-Time Software

  • Choi, Kiho;Kim, Seongseop;Park, Daejin;Cho, Jeonghun
    • Journal of Information Processing Systems
    • /
    • 제15권6호
    • /
    • pp.1462-1471
    • /
    • 2019
  • Real-time embedded systems have become pervasive in general industry. They also began to be applied in such domains as avionics, automotive, aerospace, healthcare, and industrial Internet. However, the system failure of such domains could result in catastrophic consequences. Runtime software testing is required in such domains that demands very high accuracy. Traditional runtime software testing based on handwork is very inefficient and time consuming. Hence, test automation methodologies in runtime is demanding. In this paper, we introduce a software testing system that translates a real-time software into a monitorable real-time software. The monitorable real-time software means the software provides the monitoring information in runtime. The monitoring target are time constraints of the input real-time software. We anticipate that our system lessens the burden of runtime software testing.

ARM to x86 바이너리 변환 기술 (ARM to x86 Binary Translation Techniques)

  • 최민;이원재;배성준;이현우
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2012년도 추계학술발표대회
    • /
    • pp.455-458
    • /
    • 2012
  • 최근 각종 스마트 디바이스의 활용이 급속히 활용이 늘어나고 있다. 본 연구는 ARM to x86 바이너리 변환(Binary Translation) 기술을 통해 인텔의 x86 기반 ATOM 모바일 프로세서에서 ARM target 으로 컴파일된 NDK 활용 안드로이드 애플리케이션을 실행하는 것을 목표로 한다. 본 논문에서는 ARM to x86 관련 바이너리 변환 기존 연구를 분석한 후, 실제적인 ARM to x86 바이너리 변환 플랫폼을 통해 바이너리 변환 사례를 소개한다.

동적 코드 변환 기법을 이용한 디바이스 드라이버의 고장 분리 기술 (Device Driver Fault Isolation using Binary Translation Technology)

  • 임병홍;김지홍;엄영익
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 추계학술발표대회
    • /
    • pp.1714-1717
    • /
    • 2010
  • 디바이스 드라이버는 커널의 대부분을 차지하기 때문에 디바이스 드라이버에 문제가 발생하면 시스템에 심각한 영향을 미치게 된다. 따라서 디바이스 드라이버의 고장 분리 기술은 운영체제의 신뢰도 향상을 위해서 매우 중요하다. 동적 코드 변환 기법(Binary Translation)은 기계어 코드의 수준에서 기존의 디바이스 드라이버의 명령어 집합을 다른 명령어 집합으로 변환하여 실행하도록 하는 기법이다. 이 기법을 통해 우리는 각 명령어의 변환 과정에서 디바이스 드라이버의 모든 행위를 감시할 수 있다. 따라서 동적 코드 변환기법은 디바이스 드라이버의 고장을 분리하며 악의적인 메모리 접근을 제한하는 장점을 가지고 있다. 또한 커널 코드의 수정과 디바이스 드라이버의 수정이 요구되지 않는다. 이 논문에서 우리는 동적 코드 변환 기법을 설계하고 구현하였다. 그리고 동적 코드변환 기법을 이용한 몇 가지 실험을 통해, 디바이스 드라이버를 수행 시 발생하는 오버헤드와 고장 분리 가능 여부를 평가해 보았다.

밝기, 명암도, 크기, 회전, 위치 변화에 강인한 얼굴 인식 (Face Recognition Robust to Brightness, Contrast, Scale, Rotation and Translation)

  • 이형지;정재호
    • 대한전자공학회논문지SP
    • /
    • 제40권6호
    • /
    • pp.149-156
    • /
    • 2003
  • 본 논문에서는 변형 Otsu 이진화 방법, Hu 모멘트 및 선형 판별 분석(linear discriminant analysis, LDA)를 기반으로 밝기, 명암도, 크기, 회전 위치 변화에 강인한 얼굴 인식 방법을 제안하고자 한다. 제안한 변형 Otsu 이진화를 사용하여 밝기 및 명암도에 불변한 이진 영상들을 만든다. 그런 후 생성된 얼굴 영상의 경계 영상 및 다단계 이진영상으로부터 총 17개의 Hu 모멘트를 계산한 다음 LDA 방법을 적용하여 최종 특징 벡터를 추출한다. 특히 제안하는 얼굴 인식 방법은 Hu 모멘트를 이용함으로써 크기, 회전 및 위치 변화에도 강인한 특성을 갖고 있다. Olivetti research laboratory (ORL) 데이터베이스와 AR 데이터베이스의 총 100명의 얼굴 영상에 대해 기존의 주요 성문 분석(Principal component analysis, PCA) 방법 및 PCA와 LDA를 결합한 얼굴 인식 방법과 비교 실험한 결과, 제안한 얼굴 인식 방법은 대체적으로 기존 방법보다 뛰어난 인식 성능을 보였다.

선형 사진트리의 선형이동을 위한 상수시간 RMESH 알고리즘 (Constant Time RMESH Algorithm for Linear Translation of Linear Quadtrees)

  • 김경훈;우진운
    • 정보처리학회논문지A
    • /
    • 제10A권3호
    • /
    • pp.207-214
    • /
    • 2003
  • 계층적 자료구조인 사진트리는 이진 영상을 표현하는데 매우 중요한 자료구조이다. 사진트리를 메모리에 저장하는 방법 중 선형사진트리 표현 방법은 다른 표현 방법과 비교할 때 저장 공간을 매우 효율적으로 절약할 수 있는 이점이 있기 때문에 사진트리와 관련된 연산의 수행을 위해 선형 사진트리를 사용하는 효율적인 알고리즘 개발에 많은 연구가 진행되어 왔다. 선형이동은 영상을 주어진 거리만큼 이동시키는 연산으로, 영상 처리의 응용에서 중요하게 사용되는 연산에 속한다. 본 논문에서는 RMESH (Reconfigurable MESH) 구조에서 3-차원 n${\times}$n${\times}$n 프로세서를 사용하여 선형 사진트리로 표현된 이진 영상의 선형 이동을 수행하는 효율적인 알고리즘을 제안한다. 이 알고리즘은 n${\times}$n${\times}$n RMESH의 계층구조에서 선형 사진트리의 위치코드들을 효율적으로 전송할 수 있는 기본적인 연산들을 이용함으로써 상수 시간의 시간 복잡도를 갖는다.

이진 결합 중심의 한국어 Chart parser (A Chart Parser for Korean by Binary Association)

  • 박성숙;심영섭;한성국;최운천;지민제;이용주
    • 한국정보과학회 언어공학연구회:학술대회논문집(한글 및 한국어 정보처리)
    • /
    • 한국정보과학회언어공학연구회 1993년도 제5회 한글 및 한국어정보처리 학술대회
    • /
    • pp.15-24
    • /
    • 1993
  • 한국어는 구문요소의 문법기능이 표면구조상에 명시되는 구문특성을 갖고 있다. 이러한 특성은 한국어의 문법체계가 feature중심으로 전개되고 있음을 의미한다. 한국어에서의 feature 특성과 이진 결합 관계를 중심으로 하는 chart parsing 알고리즘을 제시하고 한국어 chart parser을 구현하였다.

  • PDF