• 제목/요약/키워드: 슬라이싱

검색결과 96건 처리시간 0.022초

동적 시스템 종속 그래프를 사용한 동적 슬라이싱 (Dynamic Slicing using Dynamic System Dependence Graph)

  • 박순형;박만곤
    • 한국멀티미디어학회논문지
    • /
    • 제5권3호
    • /
    • pp.331-341
    • /
    • 2002
  • 기존의 슬라이싱 기법들은 슬라이스를 생성하며 생성된 슬라이스의 정확성을 위해 종속 그래프를 사용한다. 그러나, 기존의 많은 슬라이싱 기법들은 동적 슬라이싱 기법에 바탕을 두고 데이터 통신 링크를 표현하기 때문에 많은 정점들(vertices)과 간선들(edges)을 필요로 한다. 그러므로 그 그래프는 매우 복잡하다. 어떤 프로그램 시스템에 대한 소프트웨 어 슬라이싱을 처리하기 위해 본 논문에서는 동적 시스템 종속그래프를 제안한다. 그리고, 소프트웨어 시스템의 동적 슬라이스를 산출하기 위해 관련 테이블들의 관계도를 이용한 효율적인 슬라이싱 알고리즘을 제안한다. 동적 슬라이스의 생성을 위한 동적시스템종속그래프는 제안된 알고리즘으로부터 얻어진 마킹테이블을 사용해서 얻어진다. 슬라이스의 최종 결과는 이 그래프를 추적함으로써 얻어진다. 결론적으로 제안된 동적시스템종속그래프 기법의 효율성을 기존의 종속그래프 기법과 비교하였다.

  • PDF

역난독화를 위한 바이너리 프로그램 슬라이싱 (Program Slicing for Binary code Deobfuscation)

  • 목성균;전현구;조은선
    • 정보보호학회논문지
    • /
    • 제27권1호
    • /
    • pp.59-66
    • /
    • 2017
  • 해커들이 자신들이 만든 악성코드의 분석을 어렵게 하기 위하여 코드 난독화 기법을 적용하고 있다. 최근의 난독화 기법은 가상화 난독화 기법을 통해 원래의 코드를 바이트코드로 만들고 가상머신이 이를 실행시키는 방식으로, 실행시키기 전에는 원래의 코드를 알 수가 없다. 프로그램 슬라이싱은 프로그램 분석기술 중 하나로 슬라이싱 기준을 정하고 그와 관련된 문장을 추출해내는 기술이다. 본 논문에서는 슬라이싱 기법을 사용하여 난독화를 해제하는 방법을 제시한다.

복잡한 자료 구조를 지니는 프로그램 슬라이싱 (Program Slicing in the Presence of Complicated Data Structure)

  • 류호연;박중양;박재흥
    • 정보처리학회논문지D
    • /
    • 제10D권6호
    • /
    • pp.999-1010
    • /
    • 2003
  • 프로그램 슬라이싱은 프로그램의 특정 지점에 나타난 변수의 값에 영향을 미치는 문장들을 프로그램으로부터 추출하는 방법이다. 프로그램 슬라이싱은 프로그램 디버깅, 프로그램 테스팅, 프로그램 통합, 병렬 프로그램 실행, 소프트웨어 메트릭스, 역공학, 유지보수 등 여러 응용 분야에 적용할 수 있다. 본 논문에서는 포인터 변수, 포인터 변수가 참조하는 객체, 배열, 구조체가 같은 복잡한 자료구조가 나타나는 프로그램에서 정확한 슬라이스를 추가하기 위한 알고리즘을 제안한다. 복잡한 자료구조가 나타나는 프로그램 상에서 객체의 보다 더 정확한 정적 분석 정보를 생성하기 위해 객체 참조상태 그래프를 제안하고, 그 효율성을 보였다.

객체지향 프로그램 슬라이싱에 관한 연구 (A Study on the Object-Orient Program Slicing)

  • 방극인;박영옥;이준
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2002년도 춘계종합학술대회
    • /
    • pp.461-465
    • /
    • 2002
  • 일반적인 소프트웨어 시스템은 새로운 요구와 오류의 발견으로 인해 계속적인 개발과 확장 수정이 요구되며, 어떤 프로그램에 특정 명령문의 변수에 대한 관련 명령문을 찾고 싶을 때 프로그래머는 입력자료의 값에 대해 프로그램의 실행 궤도 추적을 통해 프로그램을 분석한다. 그러므로 본 논문은 기존의 프로그램 슬라이싱 방법에 객체지향 프로그램 슬라이싱을 적용하여 프로그램의 실행 궤도를 통하여 객체지향 그래프와 슬라이싱의 알고리즘을 보인다. 객체지향 프로그램 종속성 그래프는 클래스 종속성 그래프와 클래스 계층구조 그래프로 구성된다. 여기에 제안된 알고리즘은 쉽게 확장이 가능하며 프로그램이 점진적으로 개발되는 경우에 유리하게 사용될 수 있다.

  • PDF

명세 기반 프로그램 슬라이싱 기법과 응용 (Specification-based Program Slicing and Its Applications)

  • 정인상;윤광식;이완권;권용래
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제29권8호
    • /
    • pp.529-542
    • /
    • 2002
  • 기존의 프로그램 슬라이스에 관한 정의들은 주로 프로그램 변수들간의 문법적인 관계만을 고려한다. 이에 반해, 이 논문에서는 프로그램 변수들간의 의미론적인 관계를 고려함으로써 기존의 슬라이스보다 더 정확한 프로그램 슬라이스를 구할 수 있는 명세 기반 슬라이싱 기법을 제시한다. 명세 기반 슬라이스는 선행 조건, 후행 조건의 쌍으로 주어진 프로그램의 명세에 대해 원래 프로그램의 행위와 올바름을 보존하는 프로그램 문장들의 부분집합으로 구성된다. 명세 기반 슬라이싱 기법은 주어진 명세에 나타나 있는 프로그램의 기능과 관련한 프로그램 문장만을 다루기 때문에, 소프트웨어 공학의 여러 가지 문제들을 더욱 효과적으로 해결할 수 있도록 지원한다. 여러 적용 가능한 문제들 중에서도, 이 논문에서는 소프트웨어 재사용과 소프트웨어 재구성 과정이 명세 기반 슬라이싱 기법을 이용함으로써 어떻게 향상될 수 있는지를 보인다.

실시간 객체지향 설계에서 슬라이싱 맵의 데이터베이스 구축 및 활용에 관한 연구

  • 박상백;박만곤
    • 한국정보시스템학회:학술대회논문집
    • /
    • 한국정보시스템학회 1997년도 추계학술대회논문집 기업경쟁력 향상을 위한 정보통신 기술의 활용
    • /
    • pp.413-425
    • /
    • 1997
  • 실시간 시스템(realtime system)은 외부환경에서 보내진 요구사항(requirement)에 정해진 시간 내에 반응(action)해야만 한다. 시스템의 외부환경은 실세계(real world)의 물리 적인 요소(physical element)가 되며 이러한 물리적인 요소는 객체지향 설계 (object-oriented design) 개념에서 객체(object)이다. 또한 시스템을 설계하는 경우는 객체 지향 방법론을 적용함으로서 보다 명확한 표현이 가능하게 되며 실세계의 물리적인 각 요소 가 부품단위(component units)로 동작하는 형태를 소프트웨어로 설계하는 것이 용이하게 된다. 따라서 본 논문에서는 실시간 시스템설계에서 객체지향 방법을 사용하고, 원시 (source) 소프트웨어의 분석(analysis)과 검증(verification) 및 흐름(flow)를 슬라이스 기법을 사용하여 표현함으로써 시스템의 전체적인 구성을 명확하게 표현하며 클래스(class) 단위로 슬라이스 된 각 부분으로 상속(inheritance)과 메시지 전달(message sending)의 흐름을 파 악할 수가 있다. 그리고, 보다 효율적인 시스템의 외부환경의 오동작 처리 및 시스템 흐름 을 감시 추적(monitoring and tracing)할 수 있도록 슬라이싱 맵을 데이터베이스로 구축하 여 활용하는 방법을 제시한다. 또한 슬라이싱 맵 표현 방벙에 있어서 기존의 표현을 보다 구체적이고 실제적인 표현기호를 제시한다.

  • PDF

병행 자바 프로그램 슬라이싱을 위한 다중쓰레드 종속성 그래프의 개선에 대한 연구 (A Study on Enhancement of Multithreaded Dependence Graphs for Concurrent Java Program Slicing)

  • 류희열;김은정
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2002년도 추계학술발표논문집 (하)
    • /
    • pp.2055-2058
    • /
    • 2002
  • 병행 자바 프로그램의 슬라이싱 방법은 Jianjun Zhao에 의해 제안된 다중 쓰레드 종속성 그래프를 이용하여 Susan Horwitz, Thomas Reps, David Binkly가 제안한 2단계 마킹 알고리즘을 적용하여 슬라이스를 계산한다. 다중 쓰레드 종속성 그래프를 이용하는 방법은 쓰레드동기화 문장들 사이의 동기화 종속성과 서로 다른 쓰레드에 존재하는 공유객채들 사이의 통신 종속성 관계를 표현하여 병행 자바 프로그램의 슬라이스를 계산할 수 있는 것이다. 그러나 프로그램 종속성 그래프를 기반으로 하기 때문에 클래스 맴버 변수들에 대한 formal_in, formal_out, actual_in, actual_out정점들의 추가로 그래프의 복잡도가 증가하고 또한 부정확한 슬라이스 계산을 위한 다중 쓰레드 종속성 그래프를 개선하여 제안한다. 제안하는 개선된 다중 쓰레드 종속성 그래프는 주어진 슬라이싱 기준에 대한 2단계 마킹 알고리즘을 적용한 결과 정확한 슬라이스 계산과 복잡도 개선을 확인하였다.

  • PDF

5G 네트워크 슬라이싱 및 네트워크 관리 기술 표준화 동향 (Standardization Trends in Network Slicing and Management Technologies of 5G Core Network)

  • 이승익;이지현;신명기
    • 전자통신동향분석
    • /
    • 제32권2호
    • /
    • pp.62-70
    • /
    • 2017
  • 5G 네트워크 기술은 4G LTE 이동 통신 기술의 후속 기술로서, ITU-R, ITU-T, NGMN, 3GPP 등의 표준화 그룹을 중심으로 고성능, 저지연, 고가용성 등의 특성을 가지는 새로운 Clean-slate 형태의 이동 통신 시스템 및 네트워크 구조를 설계 중이다. 특히 다양한 5G 융합 서비스를 효율적으로 제공하기 위해 서비스 및 네트워크 자원의 독립성 및 유연성을 지향하는 네트워크 슬라이싱을 적용하고, ETSI NFV 네트워크 기능 가상화 기술을 포함하는 네트워크 관리 구조를 도입하고자 한다. 본고에서는 5G 네트워크 슬라이싱 기술 및 5G 네트워크 관리 기술의 개념 및 요구사항을 분석하고, 이에 대해 3GPP SA WG2 및 SA WG5에서 진행 중인 표준화 현황을 소개한다.

  • PDF

슬라이싱과 청킹 개념을 도입한 확장 가능한 경로 테스팅 방안 (Scalable Path Testing Method Adopting Slicing and Chunking Concept)

  • 최은만;최희성
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2012년도 한국컴퓨터종합학술대회논문집 Vol.39 No.1(B)
    • /
    • pp.164-166
    • /
    • 2012
  • 화이트 박스 테스팅을 위하여 주로 사용하는 경로 테스팅 방법은 테스트 대상 프로그램의 규모에 크게 영향을 받는다. 이런 단점을 해소하기 위하여 이 논문에서는 슬라이싱과 청킹 개념을 도입하였다. 청킹은 논리 흐름의 덩어리를 프레임화 하여 필요에 따라 펼치거나 추상화할 수 있게 한다. 또한 슬라이싱은 프로그램 동작의 부분 집합을 추출하여 복잡도를 줄이고 특정 변수에 집중하게 한다. 본 논문에서는 이런 두 가지 개념을 도입하여 확장 가능한 경로 테스팅 방법을 제안하여 화이트 박스 테스팅의 실용성을 높일 수 있음을 보였다.

프로그램 슬라이싱과 나씨-슈나이더만 차트를 이용한 구조적 프로그램의 이해를 위 한 도구 개발

  • 박승득;박만곤
    • 한국정보시스템학회:학술대회논문집
    • /
    • 한국정보시스템학회 1998년도 추계학술대회논문집21세기를 위한정보기술의 발전방향
    • /
    • pp.157-164
    • /
    • 1998
  • 본 논문은 원시 프로그램에 오류가 생겼을 때 신속한 오류검출, 소프트웨어의 유지 보수, 유연한 테스팅 등을 목적으로 하는 프로그램 슬라이싱과 원시 프로그램의 복잡한 베 어 흐름이나 데이터 흐름을 이해하고 프로그램이 테스팅 속도 향상과 오류위치를 파악하는 데 도움을 주는 구조적 순서도의 개념을 도압하여, C 언어데 대한 할당문(Assignment Statement)과 복합 제어 문(Compound Control Statement)으로 된 원시 프로그램의 입력 에 대해 프로시듀어(Procedure) 내에서의 구조적 순서도인 나씨-슈나아더만 차트 (Nassi-Shnei-derman Chart)를 자동 생성하고 실제 관심있는 변수에 대해 정적 슬라이싱 (Static Slicing)을 하는 도구를 개발함으로써 보다 빠르고 정확한 프로그램 구조의 이해에 도움을 주고자 한다.

  • PDF