• 제목/요약/키워드: Loop statement

검색결과 11건 처리시간 0.017초

JAVA 프로그래밍 언어에서 단일루프구조의 무시적 병렬성 검출 (Exploiting Implicit Parallelism for Single Loops in Java Programming Language)

  • 권오진
    • 정보관리연구
    • /
    • 제29권3호
    • /
    • pp.1-26
    • /
    • 1998
  • 순차 Java 프로그램을 병렬 머쉰에서 실행할 경우 루프는 전체 수행 시간 중 많은 부분을 차지하므로 병렬성 검출의 기본이 된다. 본 논문은 기존에 작성된 단일 루프 구조를 갖는 Java 프로그래밍 언어에서 종속성 분석을 수행하여 묵시적 병렬성을 검출하는 방법을 제안한다. 또한 재구성 컴파일러에 의하여 병렬 코드를 생성하는 방법과 Java 원시 프로그램을 Java 프로그래밍 언어 자체에서 지원하는 다중스레드 기법으로 변환하는 방법을 제안한다. 스레드 문장으로 변환된 프로그램에 대해 루프의 반복계수와 쓰레드 수를 매개변수로 하여 성능 분석을 하였다. 재구성 컴파일러에 의한 장점은 사용자의 병렬성 검출에 대한 오버헤드를 줄이고, 순차 Java 프로그램에 대한 효과적인 병렬성 검출을 가능하게 한다.

  • PDF

AES에 대한 반복문 오류주입 공격 (A Fault Injection Attack on the For Statement in AES Implementation)

  • 박제훈;배기석;오두환;문상재;하재철
    • 정보보호학회논문지
    • /
    • 제20권6호
    • /
    • pp.59-65
    • /
    • 2010
  • 오류 주입 공격은 비밀키가 내장된 암호 장치에서 연산을 수행 시 공격자가 오류를 주입하여 비밀키를 찾아내는 공격으로서 암호시스템의 안전성에 심각한 위협이 되고 있다. 본 논문에서는 AES 암호를 수행하는 동안 마지막 라운드의 키를 더하는 반복문(for statement)에 대한 오류 주입을 통해 비밀키 전체를 공격할 수 있음을 보이고자 한다. 상용 마이크로프로세서에 AES를 구현한 후 한 번의 레이저 오류 주입 공격을 시도하여 128비트의 비밀키가 노출됨을 확인하였다.

제어 및 데이터 신호에 의한 Esterel에서의 새로운 회로 중복사용 문제 (New Schizophrenia Patterns on Esterel caused by Control/Data Signals)

  • 윤정한;김철주;김성건;최광무;한태숙
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제37권4호
    • /
    • pp.311-316
    • /
    • 2010
  • Esterel은 명령형 동기언어로서, 많은 경우에 메모리, 캐쉬 컨트롤러, 버스 인터페이스 등을 개발하는데 사용하고 있다. Esterel 프로그램은 특정 상황에서 한 문장이 한 단위시간 안에 2번 이상 수행될 수 있다. 이러한 문장을 하드웨어로 컴파일 할 경우, 하나의 회로(circuit)가 한 클럭 안에 2번 수행되어 정상적으로 동작하지 않을 수 있다. 이러한 문제를 회로 중복사용(schizophrenia) 문제라고 부른다. 기존연구에서는 지역신호선언문과 병렬문만이 회로 중복사용 문제를 유발할 수 있다고 보았다. 하지만, 예외선언문에 의해 생성되는 제어 신호와 출력문이 만들어내는 데이터 신호도 회로 중복사용 문제를 유발할 수 있다. 특히, 출력문의 경우에는 기존 회로 중복사용 문제에 대한 해결책들의 출발점인 단순한 루프 펼치기(loop unrolling)로는 해결되지 않았다. 본 논문에서는 예외선언문과 출력문이 만들어 내는 2가지 새로운 회로 중복사용 문제들을 열거하고 회로 중복사용 문제를 재정의 하였다.

자바 프로그래밍에서 병렬처리를 위한 중첩 루프 구조의 다중스레드 변환 (Transform Nested Loops into MultiThread in Java Programming Language for Parallel Processing)

  • 황득영;최영근
    • 한국정보처리학회논문지
    • /
    • 제5권8호
    • /
    • pp.1997-2012
    • /
    • 1998
  • 병렬 시스템에서 순차 자바 프로그램을 재 사용할 수 있기 위해서는 자바 프로그램 내에 존재하는 병렬성을 찾아내는 것이 중요하다. 자바 프로그램을 병렬 시스템에서 실행할 경우 루프는 전체 수행 시간 중 많은 부분을 차지하므로 병렬성 검출의 기본이 되지만 데이터 종속으로 인하여 완전한 병렬 수행을 쉽게 이룰 수 없다. 따라서, 본 논문은 기존의 중첩 루프 구조를 갖는 자바 프로그래밍에서 데이터 종속성 분석에 의한 종속 그래프를 구성하여 묵시적 병렬성을 검출하는 방법을 제안한다. 또한 재구성 컴파일러에 의하여 자바 원시 프로그램을 자바 프로그래밍 언어 자체에서 지원하는 다중스레드 기법으로 변환하여 병렬 시스템에서 실행하는 방법을 제안한다. 스레드 문장으로 변환된 프로그램에 대해 루프의 반복계수와 스레드 수를 매개변수로 하여 성능 분석을 하였다. 재구성 컴파일러에 의한 장점은 사용자의 병렬성 검출에 대한 오버해드를 줄이고, 순차 자바 프로그램에 대한 효과적인 병렬성 검출을 가능하게 하여 병렬 시스템에서 실행 시간을 단축할 수 있다.

  • PDF

반복문 오류 주입을 이용한 개선된 Triple DES 라운드 축소 공격 (An Improved Round Reduction Attack on Triple DES Using Fault Injection in Loop Statement)

  • 최두식;오두환;박정수;하재철
    • 정보보호학회논문지
    • /
    • 제22권4호
    • /
    • pp.709-717
    • /
    • 2012
  • 블록 암호 알고리듬에 대한 라운드 축소 공격은 암호 디바이스에 일시적인 오류를 주입하여 암호 알고리듬이 정상라운드를 수행하는 것이 아니라 특정 라운드까지만 수행하도록 하여 비밀 키를 추출하는 오류 주입 공격 방법이다. 본 논문에서는 Triple DES(Data Encryption Standard)에서 라운드를 반복하는 반복문을 수행하는 도중 오류를 주입하여 마스터 키를 추출할 수 있는 방법을 제시하고 이를 실험과 컴퓨터 시뮬레이션을 통해 검증하고자 한다. ATmega128 칩에 Triple DES 암호 알고리듬을 실제로 구현하고 레이저를 이용한 오류를 주입함으로써 제안한 공격이 오류 주입 대응책이 적용되지 않은 범용 마이크로프로세서 칩에 적용 가능함을 검증하였다. 기존 Triple DES에 대한 라운드 축소 공격은 총 9개의 정상-오류 암호문쌍이 필요하였지만 본 논문에서는 5개의 오류 암호문으로 모든 마스터 키를 찾아 낼 수 있었다.

백트란 코드화를 위한 프로그램 변환과 단순화 (On the Program Conversion and Conditional Simplification for VECTRAN Code)

  • 황선명;김행곤
    • 한국정보처리학회논문지
    • /
    • 제1권1호
    • /
    • pp.38-49
    • /
    • 1994
  • 기존 포트란 프로그램을 벡터 처리 가능한 코드인 벡트란으로 변환시키는데 있어 서 가장 문제가 되는 것은 루프내에서 제어의 분기가 발생하는 경우 조건적 전달이 일어난다는 것이다. 조건적 전단이란 어떤 문장의 실행이 다른 문장내의 변수 값에 의 해 이루어지는 제어 의존성으로, 본 논문은 루프내부의 조건적 제어를 제거하기 위한 알고리즘과 조건적 할당문을 이용하였을 때 그 내부의 복잡한 조건에 대한 단순화 알 고리즘을 제시한다. 이 때 조건적 할당문의 조건은 부울 변수(2-상태)뿐 아니라 3가지 이상의 상태를 나타내는 n-상태변수를 통하여 나타낸다.

  • PDF

HPF FORALL 구조의 스칼라화(Scalarization) (Scalarization of HPF FORALL Construct)

  • 구미순
    • 한국컴퓨터정보학회논문지
    • /
    • 제12권5호
    • /
    • pp.121-129
    • /
    • 2007
  • 스칼라화(Scalarization)는 포트란 90의 array statement나 HPF FORALL 등의 병렬 구조를 동일한 의미의 순차 DO 루프로 변환하는 과정이다. 표준 자료 병렬 언어인 HPF 컴파일러도 HPF로 작성된 프로그램을 메시지 패싱 프리미티브가 삽입된 포트란 77 프로그램으로 변환하고, 병렬 구조인 FORALL을 스칼라화하여 포트란 77의 순차 DO 루프로 변환해야 한다. 본 논문에서는 병렬 구조의 시맨틱을 지닌 다중문장 FORALL 구조를 개선된 성능의 순차 DO 루프로 변환하는 스칼라화 알고리즘을 제안한다. 이를 위해 필요한 종속성 정보를 유지하는 수단으로 관계거리벡터를 정의하여 사용한다. 끝으로 제안된 알고리즘을 적용하여 생성된 코드와 기존 PARADIGM 컴파일러에 의해 생성된 코드의 성능을 비교 평가한다.

  • PDF

The Efficient Query Evaluation Plan in the Spatial Database Engine

  • Liu, Zhao-Hong;Kim, Sung-Hee;Lee, Jae-Dong;Bae, Hae-Young
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2001년도 봄 학술발표논문집 Vol.28 No.1 (B)
    • /
    • pp.22-24
    • /
    • 2001
  • A new GIS software Spatial Database Engine(SDE) has been developed to integrated with spatial database that combines conventional and spatially related data. As we known well in the traditional relation database system, the query evaluation techniques are a well-researched subject, many useful and efficient algorithms have been proposed, but in the spatial database system, it is a litter difference with the traditionally ones. Based on the Query Graph Model(QGM), we implemented our own query evaulation plan in the SDE, which can deal with the full functionality query statement SELECT-FROM-WHERE_GROUPBY-HAVING, and treat the spatial data and non-spatial data seamlessly. We proposed a novel multi way join algorithm base on nest loop that may be attractive.

  • PDF

로봇 활용 STEAM 수업이 다문화 아동의 한국어 학습에 미치는 영향 -초등학교 방과 후 수업을 중심으로- (The Effect of Robot-Based STEAM Class on the Korean Learning of Multiculturul School Children -Focusing on After School Learning of Elementary School-)

  • 김세민;유강수
    • 디지털융복합연구
    • /
    • 제13권8호
    • /
    • pp.1-8
    • /
    • 2015
  • 본 논문은 다문화 아동들을 대상으로 로봇을 활용한 STEAM 수업을 통해 한국어 학습 효과를 분석한다. 이를 위해 학생들이 한국어에 대하여 느끼는 난이도와 흥미도를 측정하였다. 이 학습자들이 한글 명령어 입력 기반 프로그래밍 도구를 이용하여 변수, 데이터타입, 분기문, 반복문 등의 프로그래밍 명령어를 한국어로 학습하게 한 후 그들의 한국어 학습효과를 측정하였다. 학습 효과 측정을 위해 한 학년 수업 가운데 2학기 수업 개강 전과 수업 종강 후 각각 인터뷰를 실시하였다. 연연구결과, 우리나라와 언어적인 특징이나 문화권이 근접한 나라 출신의 다문화 아동이 로봇 활용 교육을 통한 한국어 이해도가 높았고 다문화 아동이 한국어를 배울 때 로봇을 활용한 수업이 효과가 있음을 알 수 있었다.

A Study on Comparison of Open Application Programming Interface of Securities Companies Supporting Python

  • Ryu, Gui Yeol
    • International journal of advanced smart convergence
    • /
    • 제10권1호
    • /
    • pp.97-104
    • /
    • 2021
  • Securities and investment services had the most data per company on the average, and used the most data. Investors are increasingly demanding to invest through their own analysis methods. Therefore, securities and investment companies provide stock data to investors through open API. The data received using the open API is in text format. Python is effective and convenient for requesting and receiving text data. We investigate there are 22 major securities and investment companies in Korea and only 6 companies. Only Daishin Securities Co. supports Python officially. We compare how to receive stock data through open API using Python, and Python programming features. The open APIs for the study are Daishin Securities Co. and eBest Investment & Securities Co. Comparing the two APIs for receiving the current stock data, we find the main two differences are the login method and the method of sending and receiving data. As for the login method, CYBOS plus has login information, but xingAPI does not have. As for the method of sending and receiving data, Cybos Plus sends and receives data by calling the request method, and the reply method. xingAPI sends and receives data in the form of an event. Therefore, the number of xingAPI codes is more than that of CYBOS plus. And we find that CYBOS plus executes a loop statement by lists and tuple, dictionary, and CYBOS plus supports the basic commands provided by Python.