Processing

Please wait...

Settings

Settings

Goto Application

1. WO2020111337 - METHOD FOR ANALYZING CONCURRENCY OF INTER-PARTITION COMMUNICATION, FOR SPACE-TIME PARTITIONING KERNEL

Document

명세서

발명의 명칭

기술분야

1  

배경기술

2  

발명의 상세한 설명

기술적 과제

3  

과제 해결 수단

4   5  

발명의 효과

6   7  

발명의 실시를 위한 형태

8   9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28  

청구범위

1   2  

명세서

발명의 명칭 : 시공간 파티셔닝 커널을 위한 파티션 간 통신의 동시성 분석 방법

기술분야

[1]
본 발명은 시공간 파티셔닝 커널을 위한 파티션 간 통신의 동시성 분석 방법에 관한 것으로, 보다 구체적으로 싱글코어 기반에서 설계된 파티션 및 통신 구성으로 인하여 멀티코어 환경에서 발생할 수 있는 동시성 문제를 검출하고 개선하기 위한 파티션 간 통신의 동시성 분석 방법에 관한 것이다.

배경기술

[2]
시공간 파티셔닝 커널은 시간적, 공간적으로 분리된 파티셔닝 개념을 기반으로 하고 있다. 프로세스들과 리소스를 묶어서 파티션으로 정의하고 이 파티션은 고정된 스케줄(실행시간, 반복 주기)에 맞추어서 실행된다.

발명의 상세한 설명

기술적 과제

[3]
본 발명의 실시예는 컴퓨팅 시스템이 싱글코어 환경에서 멀티코어 환경으로 변경되면서 기존의 파티션 및 통신 구성으로 인하여 발생할 수 있는 동시성 문제를 검출하고 개선할 수 있는 파티션 간 통신의 동시성 분석 방법을 제공하는 것을 목적으로 한다.

과제 해결 수단

[4]
본 발명의 일 실시예에 따른 시공간 파티셔닝 커널을 위한 파티션 간 통신의 동시성 분석 방법은 복수의 파티션 간 통신 채널을 통한 연관 파티션을 검출하는 단계; 상기 검출된 연관 파티션을 그루핑하는 단계; 및 상기 그루핑된 연관 파티션의 스케줄을 조정하는 단계를 포함할 수 있다.
[5]
본 발명의 다른 실시예에 따른 시공간 파티셔닝 커널을 위한 파티션 간 통신의 동시성 분석 방법은 복수의 파티션에 세마포어를 적용하는 단계; 및 상기 세마포어에 따라 파티션 간 동기화 및 실행 순서를 조절하는 단계를 포함할 수 있다.

발명의 효과

[6]
본 발명의 실시예에 따르면, 싱글코어 기반에서 설계된 파티션 및 통신 구성으로 인하여 멀티코어 환경에서 발생할 수 있는 동시성 문제를 해결할 수 있다.
[7]
본 발명의 실시예에 따르면, 싱글코어 환경에서 실행했던 파티션 및 설정을 멀티코어 환경으로 이식하는 과정에서 개발자가 시스템 통합 및 환경 구성을 용이하게 수행할 수 있다.

발명의 실시를 위한 형태

[8]
본 발명의 다른 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술 되는 실시 예를 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예는 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
[9]
만일 정의되지 않더라도, 여기서 사용되는 모든 용어들(기술 혹은 과학 용어들을 포함)은 이 발명이 속한 종래 기술에서 보편적 기술에 의해 일반적으로 수용되는 것과 동일한 의미를 가진다. 일반적인 사전들에 의해 정의된 용어들은 관련된 기술 그리고/혹은 본 출원의 본문에 의미하는 것과 동일한 의미를 갖는 것으로 해석될 수 있고, 그리고 여기서 명확하게 정의된 표현이 아니더라도 개념화되거나 혹은 과도하게 형식적으로 해석되지 않을 것이다.
[10]
본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다' 및/또는 이 동사의 다양한 활용형들 예를 들어, '포함', '포함하는', '포함하고', '포함하며' 등은 언급된 조성, 성분, 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 조성, 성분, 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다. 본 명세서에서 '및/또는' 이라는 용어는 나열된 구성들 각각 또는 이들의 다양한 조합을 가리킨다.
[11]
한편, 본 명세서 전체에서 사용되는 '~부', '~기', '~블록', '~모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미할 수 있다. 예를 들어 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미할 수 있다. 그렇지만 '~부', '~기', '~블록', '~모듈' 등이 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부', '~기', '~블록', '~모듈'은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
[12]
따라서, 일 예로서 '~부', '~기', '~블록', '~모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부', '~기', '~블록', '~모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부', '~기', '~블록', '~모듈'들로 결합되거나 추가적인 구성요소들과 '~부', '~기', '~블록', '~모듈'들로 더 분리될 수 있다.
[13]
이하, 본 명세서의 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
[14]
싱글코어 기반에서 설계되고 실행되던 파티션과 스케줄은 멀티코어 환경으로 변경되면서, 동시성을 갖게 된다. 본 발명의 실시예는 이러한 환경의 변화에 따라서 기존의 파티션 구성과 통신 구성으로 인하여 발생할 수 있는 동시성 문제를 검출하고 개선을 할 수 있다.
[15]
파티션 A 및 B가 싱글코어에서 동작하는 경우, 파티션 A 다음에 파티션 B가 실행되도록 스케줄링되어 프로세스가 순차적으로 실행된다.
[16]
예를 들어, 파티션 A 및 B의 순차 실행에서 통신 수행의 조합은 다음과 같다.
[17]
1. READ after READ
[18]
2. READ after WRITE
[19]
3. WRITE after READ
[20]
4. WRITE after WRITE
[21]
멀티코어 환경에서는 파티션 A 및 B의 동작이 동시에 실행될 수 있으며, 이중 동시에 실행되었을 때 문제가 될 수 있는 것은 다음의 두 가지 케이스일 수 있다.
[22]
첫 번째, READ after WRITE : 파티션 A가 write한 것을 확인해야 파티션 B가 read 가능한 경우에는 오류가 발생할 수 있다.
[23]
두 번째, WRITE after READ : 파티션 A가 read한 후에 파티션 B가 write를 해야 하나, 동시 실행 시에 파티션 A는 다음 데이터를 읽어오게 된다.
[24]
본 발명의 실시예는 이러한 문제가 발생할 수 있는 파티션 간 통신 수행의 조합을 전체 파티션 구성에서 검출한 뒤 해당 조합을 변경한다.
[25]
먼저, 본 발명의 일 실시예에 따르면, 파티션 간 통신 채널을 통한 연관 파티션을 검출하고, 검출된 연관 파티션을 그루핑하고, 그루핑된 연관 파티션의 스케줄을 조정할 수 있다.
[26]
본 발명의 다른 실시예에 따르면, 복수의 파티션에 세마포어(semaphore)를 적용하여 파티션 간 동기화 및 실행 순서를 조절할 수 있다.
[27]
이상에서 설명한 본 발명의 실시예에 따르면, 싱글코어 환경에서 실행했던 파티션 및 설정을 멀티코어 환경으로 이식하는 과정에서 개발자가 시스템 통합 및 환경 구성을 용이하게 수행할 수 있다.
[28]
이상에서 실시예를 통해 본 발명을 설명하였으나, 위 실시예는 단지 본 발명의 사상을 설명하기 위한 것으로 이에 한정되지 않는다. 통상의 기술자는 전술한 실시예에 다양한 변형이 가해질 수 있음을 이해할 것이다. 본 발명의 범위는 첨부된 특허청구범위의 해석을 통해서만 정해진다.

청구범위

[청구항 1]
시공간 파티셔닝 커널을 위한 파티션 간 통신의 동시성 분석 방법에 있어서, 복수의 파티션 간 통신 채널을 통한 연관 파티션을 검출하는 단계; 상기 검출된 연관 파티션을 그루핑하는 단계; 및 상기 그루핑된 연관 파티션의 스케줄을 조정하는 단계를 포함하는 파티션 간 통신의 동시성 분석 방법.
[청구항 2]
시공간 파티셔닝 커널을 위한 파티션 간 통신의 동시성 분석 방법에 있어서, 복수의 파티션에 세마포어를 적용하는 단계; 및 상기 세마포어에 따라 파티션 간 동기화 및 실행 순서를 조절하는 단계를 포함하는 파티션 간 통신의 동시성 분석 방법.