• Title/Summary/Keyword: 의미 수행 코드

Search Result 77, Processing Time 0.025 seconds

Code Optimization Using DFA (DFA 를 이용한 코드 최적화)

  • Yun, Sung-Lim;Oh, Se-Man
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2005.05a
    • /
    • pp.525-528
    • /
    • 2005
  • 원시 프로그램에 대한 컴파일 과정 중 최적화 단계에서는 프로그램의 실행 속도를 개선시키고 코드 크기를 줄일 수 있는 다양한 최적화 기법을 수행한다. 특히, 핍홀 ��적화는 비효율적인 명령어의 순서를 구별해 내고 연속되는 명령어의 순서를 의미적으로 동등하면서 좀 더 효율적인 코드로 개선하는 방법이다. 최적화 패턴 매칭 방법 중 스트링 패턴 매칭 방법은 중간 코드에 대응하는 최적의 패턴을 찾기 위한 방법으로 과다한 최적화 패턴 검색 시간으로 비효율적이고, 트리 패턴 매칭은 패턴 결정시 중복 비교가 발생할 수 있으며, 코드의 트리 구성에 많은 비용이 드는 단점을 가지고 있는 방법들이다. 본 논문에서는 기존의 최적화 방법들의 단점을 극복하기 위한 방법으로 DFA(Deterministic Finite Automata)를 이용한 코드 최적화 방법을 제안한다. 이 방법은 다른 패턴 매칭 기법보다 오토마타(Automata)로 구성하기 때문에 비용은 적어지고, 오토마타를 통해 결정적으로 패턴이 확정됨에 따른 패턴 선택 비용이 줄어들며, 최적화 패턴 검색 시간도 빨라지는 효율적인 방법이다.

  • PDF

A BERT-Based Deep Learning Approach for Vulnerability Detection (BERT를 이용한 딥러닝 기반 소스코드 취약점 탐지 방법 연구)

  • Jin, Wenhui;Oh, Heekuck
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.32 no.6
    • /
    • pp.1139-1150
    • /
    • 2022
  • With the rapid development of SW Industry, softwares are everywhere in our daily life. The number of vulnerabilities are also increasing with a large amount of newly developed code. Vulnerabilities can be exploited by hackers, resulting the disclosure of privacy and threats to the safety of property and life. In particular, since the large numbers of increasing code, manually analyzed by expert is not enough anymore. Machine learning has shown high performance in object identification or classification task. Vulnerability detection is also suitable for machine learning, as a reuslt, many studies tried to use RNN-based model to detect vulnerability. However, the RNN model is also has limitation that as the code is longer, the earlier can not be learned well. In this paper, we proposed a novel method which applied BERT to detect vulnerability. The accuracy was 97.5%, which increased by 1.5%, and the efficiency also increased by 69% than Vuldeepecker.

Design and Implementation of Network-based Profiling System of Java Bytecode (자바바이트코드의 네트워크 기반 프로파일링 시스템 설계 및 구현)

  • 정준영;정민수;이은정;정연정;윤기송
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 1999.10a
    • /
    • pp.415-417
    • /
    • 1999
  • 네트워크상에 바이트 코드로 존재하고 실행되는 자바 프로그램은 여러 가지 컴퓨팅 환경 요소로 인해 수행병목현상이 나타나고 있다. 더구나 프로그램 성능 향상을 위해 바이트코드를 해석한다는 것은 쉬운 일이 아니다. 본 논문은 자바 바이트코드를 소스코드로 디컴파일하고, 프로그램 문맥의 기본 블록과 제어 구조를 분석하여 프로파일 정보를 얻는다. 그리고 프로파일 정보를 바탕으로 사용자나 개발자에게 의미있는 정보를 제공하여 최적화된 프로그램을 개발할 수 있도록 하는 네트워크 기반 프로파일링 시스템과 프로파일 정보 시각화를 위한 시스템의 프로토타입 설계 및 구현을 다룬다.

  • PDF

Digital License Searching for Copyright Management of Software Source Code (소프트웨어 소스 코드의 저작권 관리를 위한 디지털 라이센스의 검색)

  • Cha, Byung-Rae
    • The Journal of the Korea Contents Association
    • /
    • v.7 no.1
    • /
    • pp.21-31
    • /
    • 2007
  • The intellectual property system was very important to the past industrial society. It is so important to the 21C information age. It is a leading role to developing these information society. Not only the digital content control but the technology of software source code for the intellectual property is so much mean to international competition. On occurring disputation property, we have to prove the fact, there is a problem to discriminate the original source code. In this paper, we make a study of the digital licence prototype for discriminate the original source code. Reserved words of software source code by parsing express to XML file that have hierarchical structure. Then, we can express architecture of software source code by tree structure form instead of complex source code. And we make a study of the indexing and searching to search digital license.

Improvement of Part / Module Numbering System for Automobile Industry (자동차 산업의 부품/모듈 번호체계 현황과 개선 방안)

  • Lee, Choon-Sik
    • IE interfaces
    • /
    • v.9 no.2
    • /
    • pp.173-189
    • /
    • 1996
  • 부품번호를 할당하고 관리하는 규칙은 모든 제조업체의 운용에 앞서 행해져야 하는 중요한 사항이다. 특히 완성차 제조업체의 경우 2-3만개의 부품이 사용되며, 선택사양의 다양화, 빈번한 설계변경에서의 신속한 대응, 부품확산 방지를 위해서는 효율적인 부품/모듈번호 체계가 필요하다. 본 연구는 H자동차 회사의 기존 부품번호 체계가 가지고 있는 문제점을 해결하기 위해 기존의 코드체계를 검토하여 개선방향을 정립하기 위한 것이다. 이를 위해 1) 제조업의 부품번호 체계와 관련된 이론의 수집/정리 2) 외국 완성차 업계의 번호체계 현황 조사/분석, 3) 완성차 소요부품과 관련된 코드체계의 의미를 명확화, 4) 부품번호의 균형 할당을 위한 작업이 수행되었다.

  • PDF

A Dynamic Approach to Extract the Original Semantics and Structure of VM-based Obfuscated Binary Executables (가상 머신 기반으로 난독화된 실행파일의 구조 및 원본의미 추출 동적 방법)

  • Lee, Sungho;Han, Taisook
    • Journal of KIISE
    • /
    • v.41 no.10
    • /
    • pp.859-869
    • /
    • 2014
  • In recent years, the obfuscation techniques are commonly exploited to protect malwares, so obfuscated malwares have become a big threat. Especially, it is extremely hard to analyze virtualization-obfuscated malwares based on unusual virtual machines, because the original program is hidden by the virtual machine as well as its semantics is mixed with the semantics of the virtual machine. To confront this threat, we suggest a framework to analyze virtualization-obfuscated programs based on the dynamic analysis. First, we extract the dynamic execution trace of the virtualization-obfuscated executables. Second, we analyze the traces by translating machine instruction sequences into the intermediate representation and extract the virtual machine architecture by constructing dynamic context flow graphs. Finally, we extract abstract semantics of the original program using the extracted virtual machine architecture. In this paper, we propose a method to extract the information of the original program from a virtualization-obfuscated program by some commercial obfuscation tools. We expect that our tool can be used to understand virtualization-obfuscated programs and integrate other program analysis techniques so that it can be applied to analysis of the semantics of original programs using the abstract semantics.

Selecting Model of Head in Support Verb Constructions for Phrase-Pattern-based Korean-to-English Machine Translation (구 단위 패턴 기반 한영 기계 번역에서의 기능동사 구문의 중심어 선택 모델)

  • Kim, Hae-Gyung;Chae, Young-Soog;Choi, Key-Sun
    • Annual Conference on Human and Language Technology
    • /
    • 1999.10e
    • /
    • pp.203-208
    • /
    • 1999
  • 한국어는 잉여성과 중의성의 범 언어적인 특징과 함께 다른 언어에 비해 주어의 생략이 두드러지며 어순이 자유롭기 때문에 구문 형식의 지배를 덜 받는다는 개별적인 특성을 지닌다. 이러한 특성으로 인해 기계번역의 패턴을 추출할 때 서로 유사 가능성이 있는 패턴에 대한 고려가 없이는 같은 의미의 서로 다른 여러 개의 패턴을 모두 하나의 패턴으로 처리하는 오류를 범할 위험이 있다. 본 연구에서 사용되는 구 단위 패턴은 동사구, 명사구, 형용사구 그리고 부사구를 중심으로 한국어 패턴, 패턴 대표 카테고리, 한국어 패턴의 중심어 및 제약조건 대역영어패턴 의미코드로 나뉜다. 범 언어적인 특성의 한국어와 영어간 격차를 해소하기 위해 각각의 명사에 의미코드를 사용하여 다중 언어기반 체계를 구축하였으며. 한국어의 개별적인 특성으로 인해 발생하는 문제를 해소하기 위해 중심어 부과 자질을 사용하였다. 중심어 부과 자질에 있어서, 특히 술어기능명사를 중심어로 하는 기능동사 '하-' 구문은 다른 동사 구문의 형식과는 달리 논항의 수와 형태를 동사가 아닌 명사가 수행하게 된다. 이러한 특징에 대한 변별적인 자질 부여는 구문의 형태-통사적 특징 뿐만이 아니라 의미적인 고유의 특성까지도 잘 뒷받침하면서 패턴 추출에 월등한 효율성을 제시할 수 있다. 향후 이에 대한 연구는 전반적인 기능동사 구문뿐만이 아니라 개별적인 특징을 보이는 모든 구문에 대한 연구로 확대되어 패턴 기반 기계번역의 패턴 추출에 기본적인 정보의 역할을 담당해야 할 것이다.

  • PDF

A VLIW Code Generation Technique Utilizing NOP Instruction Slot (NOP 명령어 슬롯을 활용하는 VLIW 코드 생성기법)

  • 문현주;이승수;김석주;김석일
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.10c
    • /
    • pp.615-617
    • /
    • 2000
  • 본 논문에서는 VLIW 목적코드에 존재하는 NOP 명령어 슬롯에 의미있는 명령어를 중복 삽입하도록 함으로써 원래의 방법에서 존재하였던 자료의존관계를 해소하여 실행시간의 지연을 방지하는 기법을 연구하였다. 이 경우에 하나의 긴 명령어에 동일한 명령어가 둘 이상 포함될 수 있으므로 연산 관계에 이은 쓰기 단계에서 여러개의 명령어가 동일한 레지스터 파일의 주소에 쓰기를 함에 따른 충돌을 피할 수 없다. 본 논문에서는 연산처리 별로 쓰기 단계에서 연산 결과를 레지스터 파일에 쓰도록 허용할 것인지에 대한 정보를 명령어에 포함하는 TiPS 구조와 TiPS 구조에 적합한 목적코드 생성 알고리즘을 제안하였다. 목적코드 생성 알고리즘은 연산처리기별로 연속적으로 실행되는 명령어간의 자료의존관계를 해소하기 위하여 NOP 대신에 다른 연산처리기에서 실행할 명령어를 수행하도록 동일한 명령어를 복사하여 할당할 수 있다. 실험 결과, 명령어 복사 기법은 기존의 기법에 비하여 전체 실행 사이클을 크게 단축시킬 수 있음을 보여주었다.

  • PDF

A Method Name Suggestion Model based on Abstractive Text Summarization (추상적 텍스트 요약 기반의 메소드 이름 제안 모델)

  • Ju, Hansae;Lee, Scott Uk-Jin
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2022.07a
    • /
    • pp.137-138
    • /
    • 2022
  • 소스 코드 식별자의 이름을 잘 정하는 것은 소프트웨어 엔지니어링에서 중요한 문제로 다루어지고 있다. 프로그램 엔티티의 의미있고 간결한 이름은 코드 이해도에 중요한 역할을 하며, 소프트웨어 유지보수 관리 비용을 줄이는 데에 큰 효과가 있다. 이러한 코드 식별자 중 평균적으로 가장 복잡한 식별자는 '메소드 이름'으로 알려져 있다. 본 논문에서는 메소드 내용과 일관성 있는 적절한 메소드 이름 생성을 자연어 처리 태스크 중 하나인 '추상적 텍스트 요약'으로 치환하여 수행하는 트랜스포머 기반의 인코더-디코더 모델을 제안한다. 제안하는 모델은 Github 오픈소스를 크롤링한 Java 데이터셋에서 기존 최신 메소드 이름 생성 모델보다 약 50% 이상의 성능향상을 보였다. 이를 통해 적절한 메소드 작명에 필요한 비용 절감 달성 및 다양한 소스 코드 관련 태스크를 언어 모델의 성능을 활용하여 해결하는 데 도움이 될 것으로 기대된다.

  • PDF

Function Outlining for Real-time Sensor Operating Systems (실시간 센서 운영체제를 위한 함수 아웃라이닝 기법)

  • Yi, Sang-Ho;Min, Hong;Kim, Bong-Jae;Kim, Surk-Hyun;Cho, Yoo-Kun;Hong, Ji-Man
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2008.06a
    • /
    • pp.313-314
    • /
    • 2008
  • 컴퓨터 시스템의 등장 이래로, 함수 인라이닝 기법은 함수 지향형 프로그래밍 언어에서 코드 크기의 증가와 함께 실행 시간을 감소시키는 하나의 기법으로 사용되어왔다. 이에 반하여, 함수 아웃라이닝 기법은 실행 시간을 증가시키지만 코드 크기의 감소를 가져온다. 기존 범용 컴퓨터 시스템은 코드를 저장하는 저장장치의 크기에 큰 제약이 없었기 때문에, 함수 아웃라이닝 기법은 그리 널리 쓰이지 않았다. 그러나 최근의 무선 센서 네트워크 분야의 연구를 통하여 범용 컴퓨터 시스템에서는 찾아보기 어려웠던 코드 영역의 자원 제약이 심화되었고, 이에 따라 함수 아웃라이닝 기법이 보다 의미를 갖게 되었다. 특히, 실시간 응답을 요구받는 센서 운영체제는 코드 공간의 제약 하에서 실시간 작업 처리를 수행할 수 있어야 한다. 본 논문에서는, 함수 아웃라이닝 기법을 통하여 실시간 센서 운영체제의 여유 시간(laxity time)을 활용하면서 코드의 크기를 감소시키는 방법을 제안한다. 이를 통하여, 코드 공간의 제약 상황을 보다 완화할 수 있다.

  • PDF