• Title/Summary/Keyword: 소스코드 생성

Search Result 173, Processing Time 0.03 seconds

Building Software Research Environment using Linux Container and Version Control System (리눅스 컨테이너와 버전 관리 시스템을 이용한 소프트웨어 연구 환경 구축)

  • Ha, Wansoo
    • Geophysics and Geophysical Exploration
    • /
    • v.24 no.2
    • /
    • pp.45-52
    • /
    • 2021
  • With advancements in software technology, more scientists and engineers are employing computer software and programming tools for research. However, several issues can arise in software-based research: environment setting, reproducibility, and loss of source codes. This study investigates the use of Linux containers and version control systems to prevent these problems. Managing research projects using a cloud source-code repository and building a research environment in a Linux container can prevent the abovementioned problems and make research collaboration easier. For researchers with no experience with Linux containers, a repository of project template containing shell scripts for building and running containers has been released.

Aspect Mining Process Design Using Abstract Syntax Tree (추상구문트리를 이용한 어스팩트 마이닝 프로세스 설계)

  • Lee, Seung-Hyung;Song, Young-Jae
    • The Journal of the Korea Contents Association
    • /
    • v.11 no.5
    • /
    • pp.75-83
    • /
    • 2011
  • Aspect-oriented programming is the paradigm which extracts crosscutting concern from a system and solves scattering of a function and confusion of a code through software modularization. Existing aspect developing method has a difficult to extract a target area, so it is not easy to apply aspect mining. In an aspect minning, it is necessary a technique that convert existing program refactoring elements to crosscutting area. In the paper, it is suggested an aspect mining technique for extracting crosscutting concern in a system. Using abstract syntax structure specification, extract functional duplicated relation elements. Through Apriori algorithm, it is possible to create a duplicated syntax tree and automatic creation and optimization of a duplicated source module, target of crosscutting area. As a result of applying module of Berkeley Yacc(berbose.c) to mining process, it is confirmed that the length and volume of program has been decreased of 9.47% compared with original module, and it has been decreased of 4.92% in length and 5.11% in volume compared with CCFinder.

A Trend of Device Driver Development Tool (디바이스 드라이버 개발 도구 동향)

  • LIm, C.D.;Kim, T.H.;Kim, J.S.;Ma, Y.S.;Kwon, W.I.;Choi, Y.H.
    • Electronics and Telecommunications Trends
    • /
    • v.21 no.1 s.97
    • /
    • pp.44-56
    • /
    • 2006
  • 임베디드 소프트웨어(embedded software)에서 디바이스 드라이버(device driver)는 하드웨어와 운영체제 및 응용 프로그램 사이의 연결고리 역할을 하는 핵심 구성 요소로서, 응용 프로그램이 하드웨어에서 제공하는 기능을 사용할 수 있도록 제어 및 상호동작을 위한 일관된 인터페이스를 제공하는 소프트웨어이다. 이러한 디바이스 드라이버는 하드웨어와 소프트웨어의 양쪽 측면에 모두 관련이 있어서 개발이 어렵기 때문에 개발을 지원하는 도구가 필요하다. 본 원고에서는 디바이스 드라이버 개발 도구가 갖추어야 할 기능을 크게 소스 코드 자동생성 기능, 테스팅 기능, 정형 검증 기능, 통합 개발 환경 및 개발 편의 유틸리티 기능으로 나누어서 각각의 기술에 대해서 살펴보고, 현재 상용 제품들을 살펴보았다. 그리고, ETRI의 본 연구팀에서 개발한 디바이스 드라이버 통합 개발 도구인 “QuickDriver”를 기술하고, 이 도구와 상용 제품과의 비교를 수행하였다.

Malicious Script Detection By Static Analysis (정적 분석 기법을 이용한 악성 스크립트 탐지)

  • 배병우;이성욱;조은선;홍만표
    • Proceedings of the Korea Institutes of Information Security and Cryptology Conference
    • /
    • 2001.11a
    • /
    • pp.91-95
    • /
    • 2001
  • 본 논문은 현재 컴퓨터 사용자들에게 많은 피해를 입히고 있는 악성 스크립트 코드에 대한 탐지기법을 제시하고자 한다. 스크립트 언어는 타 언어에 비해서 단순하며, 상위 수준의 언어로 작성된 소스를 직접 분석가능하기 때문에 기존의 이진 파일 형태의 바이러스 비해 정적 분석 기법 적용이 용이하다. 제안하는 탐지 기법은 기존의 스코어링 방식을 기반으로 한 패턴 매칭과는 달리 스크립트가 수행하는 악성 행위의 분석을 통해 행위 패턴을 생성하고, 이 패턴들을 정적 분석 기법을 통해 패턴간의 관계 분석을 통해 보다 확실한 악성 행위를 탐지하여 스크립트에 포함된 악성행위들을 보고한다. 기존 대부분의 바이러스 탐지 도구들은 이미 알려진 바이러스들만을 탐지 할 수 있다. 정적 분석 기법을 이용한 악성 스크립트 탐지 방법은 악성 행위 별 패턴 존재 여부를 판단하므로 이미 알려진 바이러스는 물론 알려지지 않은 바이러스를 탐지 할 수 있는 방안을 제시한다.

  • PDF

An Efficient Checkpoint and Recovery Facility on UnixWare Kernel (Unix Ware 커널 수준의 효율적인 검사점 및 복구 도구)

  • 홍지만;한상철;윤진혁;박태순;염헌영;조유근
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.04a
    • /
    • pp.139-141
    • /
    • 2000
  • 검사점 및 복구 도구는 응용 프로그램의 상태를 주기적으로 안정된 저장소에 저장을 하고, 결함이 발생하였을 경우 가장 최근의 검사점으로부터 효율적으로 복구하게 하는 도구이다. 특히 검사점 및 복구 도구는 장시간 수행되는 프로세서에게는 아주 중요한 의미를 지니며, 결함으로 인해 장시간 수행되는 프로세스에 의해 생성된 중간 결과를 잃어버리지 않게 한다. 본 논문에서는 UnixWare 커널 수준의 검사점 및 복구 도구인 Kckpt의 설계 및 구현 내용을 제시하고, Kckpt의 성능을 사용자 수준에서 구현한 검사점 라이브러리와 비교한 결과를 제시한다. Kckpt를 사용함으로 해서 UnixWare는 소스 코드 수준에서 사용자가 초기화한 장소에서 검사점을 만들 수 있을 뿐만 아니라 실행 가능한 파일만을 가진 사용자에게도 완전한 투명성을 제공할 수 있다. 또한 Kckpt를 사용자 라이브러리 수준에서 구현한 검사점 도구와 성능을 비교한 결과 오버헤드가 훨씬 줄어들었음을 관찰할 수 있었다.

  • PDF

A Framework of Automatic Unit Test Tool (유닛 테스트 자동화 도구를 위한 프레임워크 설계)

  • Kim Youn-Sang;Baek Chang-Hyun;Park Sung-Kyu
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2006.06c
    • /
    • pp.184-186
    • /
    • 2006
  • 테스트 주도 개발은 익스트림 개발 방법론의 바탕이 되는 방법론이다. 테스트 주도 개발은 소스 코드를 구현을 하기 전에 테스트 케이스를 먼저 만드는 작성한다. .Net 개발 환경에서 테스트 주도 개발을 하기 위해 NUnit 이라는 유닛 테스트 프레임워크를 많이 사용하고 있다. [1] 본 논문은 NUnit 유닛 테스트 프레임워크를 기반으로 리플랙션을 사용하여 유닛 테스팅 자동화 도구의 제작을 위한 프레임워크를 제안한다. 그리고 이 프레임워크를 이용하여 유닛 테스트 뼈대를 자동으로 생성하는 프로그램을 구현하였다.

  • PDF

Design and Implementation of a Visual Builder for TMO Programming (TMO 프로그래밍을 위한 비주얼 빌더의 설계 및 구현)

  • Yun, Kyu-Sik;Choi, Jae-Young;Kim, Moon-Hae
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2003.05a
    • /
    • pp.419-422
    • /
    • 2003
  • TMO 비주얼 빌더는 사용자가 TMO(Time-triggered Message-triggered Object) 모델을 사용하여 실시간 시스템을 개발하는데 도움을 주는 모형화 도구이다. 이 도구는 TMO의 실시간 요소를 입력해 시각적인 모델링을 하고 거기에 기초한 C++ 소스 코드를 생성시킨다. 이는 초기 설계 작업에서 개발자들에게 편의성을 제공할 수 있고, 이후 안정된 로직을 구현할 수 있도록 한다. 본 논문은 이러한 TMO 비주얼 빌더의 구성 및 기능에 관하여 기술한다.

  • PDF

Software Birthmark Based on k-gram Using Operator Abstraction (연산자 요약을 이용한 k그램 소프트웨어 버스마크)

  • Lee, Kihwa;Woo, Gyun
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2013.05a
    • /
    • pp.687-690
    • /
    • 2013
  • 소프트웨어 버스마크 기법은 도용이 의심되는 소프트웨어의 소스 코드를 얻을 수 없을 때 사용할 수 있는 소프트웨어 도용 탐지 기법이다. 이 기법은 프로그램의 바이너리나 자바 클래스 파일에서 프로그램 고유의 특징인 버스마크를 추출한 다음 프로그램간 버스마크 유사도 측정을 통해 도용을 탐지한다. 이 논문에서는 선행 연구된 k그램 버스마크 기법에 연산자 요약이라는 아이디어를 접목한 연산자 요약 k그램 버스마크 기법을 제안한다. 연산자 요약이란 연산자 우선순위가 같은 연산자의 JVM 명령어를 묶어 요약번호로 나타내는 것이다. 연산자 요약 k그램 버스마크 기법은 연산자 요약과 제어 흐름을 고려하여 생성한 연속된 k개의 요약번호 시퀀스 집합을 버스마크로 정의한다. 버스마크를 평가하기 위해 선택 정렬 메소드와 버블 정렬 메소드를 대상으로 신뢰도 실험과 강인도 실험을 하였다. 실험 결과 연산자 요약 k그램 버스마크 기법이 선행 연구된 Tamada 버스마크 기법과 k그램 버스마크 기법보다 높은 신뢰도와 강인도를 보였다.

An Efficient Test Scenario Management on Virtual Network (가상 네트워크 망에서의 효율적인 테스트 시나리오 관리 기법)

  • Jang, Jun-Young;Kim, Jai-Hoon;Kim, Eung-Gu
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2010.11a
    • /
    • pp.867-870
    • /
    • 2010
  • 여러 장치들과 연동하여서 동작하는 네트워크 시스템 개발 시, 회귀 테스트는 전체 시스템의 안정성을 보장하기 위한 가장 필요한 테스트중의 하나이다. 그러나, 서비스가 되고 있거나 연동을 위한 추가적인 장비가 필요할 경우 테스트의 제약을 받게 된다. 본 논문에서는 자동 회귀 테스트를 위한 가상 네트워크 망을 제공하는 시뮬레이터를 디자인 한다. 또한, 시뮬레이터를 효율적으로 관리 및 동작하기 위한 UI 환경을 제안한다. 오픈 소스를 기반으로 제작된 본 시나리오의 관리 툴은 회귀 테스트의 자동화와 시나리오의 생성 및 배포가 가능하며 여러 프로토콜을 통합하여 사용할 수 있는 환경과 검증 코드를 제공한다. 이로 인해 네트워크 시스템 상의 소프트웨어에 대해 기능 및 회귀 테스트가 가능해 질것이고 결과적으로 프로그램의 개발 시간 단축과 유지보수에 탁월한 환경을 제공받게 될 것이다.

A Study on Large-scale Data Analysis based on Hadoop for Astroinformatics (하둡 기반 천문 응용 분야 대규모 데이터 분석 기법 연구)

  • Kwak, Jae-Hyuck;Yoon, Jun-Weon;Jung, Yong-Hwan;Hahm, Jae-Gyoon;Park, Dong-In
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2011.06b
    • /
    • pp.13-16
    • /
    • 2011
  • 과학 응용 분야에서 생성되는 대규모의 데이터를 빠른 시간 내에 효율적으로 처리해야 할 필요성이 대두 되면서 클라우드 컴퓨팅이 주목받고 있다. 하둡(Hadoop)은 대규모 데이터 처리 분석을 위한 소프트웨어 프레임워크를 제공하는 아파치의 오픈소스 프로젝트로서 클라우드 컴퓨팅의 대표적인 기술로서 널리 사용되고 있다. 특히, 하둡은 높은 확장성과 성능을 제공하면서 결함 탐지와 자동 복구 기능이 우수하여 과학 기술 분야에서도 점차적으로 도입 및 활용되고 있다. 본 논문에서는 하둡을 이용하여 천문 응용 분야에서 생성되는 대규모 데이터를 분석하기 위한 방법을 연구하였다. 본 논문에서 관심을 가지는 천문 응용 데이터는 대략 천만개의 작은 크기의 관측 데이터를 처리해야 하지만, 하둡은 대규모 데이터 처리에 특화되어 있어서 많은 개수의 작은 크기를 가지는 관측데이터 처리에는 적합하지 않다. 본 논문에서는 천문 응용 데이터 처리를 위한 입출력 파일을 하둡에서 제공하는 특수화된 데이터 구조를 이용하여 압축하였고, 천문 응용 실행 코드가 하둡에서 실행이 가능하도록 맵리듀스 작업으로 랩핑하여 구현하였다.