1 |
1
데이터 분산 서비스(Data Distribution Service)를 위한 미들웨어의 데이터 전송 계층인 RTPS(Real Time Publish-Subscribe) 계층에서 네트워크와 데이터를 송수신하는 소켓을 갖는 네트워크 쓰레드(network thread)에 대해 쓰레드 풀(thread pool)을 이용하여 관리하는 네트워크 쓰레드 관리 모듈;로크프리(lock-free) 기능을 갖고 상기 네트워크 쓰레드와 상기 데이터를 송수신하는 로크프리 큐(queue)를 관리하는 로크프리 큐 관리 모듈; 및라이터 쓰레드(writer thread) 또는 리더 쓰레드(reader thread)가 상기 로크프리 큐와 상기 데이터를 송수신하고 상기 RTPS 계층에서의 행위(behavior)를 수행하도록 관리하는 라이터/리더 쓰레드 관리 모듈을 포함하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
2 |
2
청구항 1에 있어서,상기 미들웨어가 요청하는 메모리 자원을 상기 데이터 분산 서비스를 이용하는 시스템으로부터 미리 할당받아 제공하는 메모리 관리 모듈을 더 포함하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
3 |
3
청구항 2에 있어서,상기 메모리 관리 모듈은,상기 데이터 분산 서비스를 이용하는 시스템으로부터 일정한 메모리 자원을 미리 할당받아 관리하는 메모리 관리부;상기 미들웨어가 특정한 데이터 타입의 메모리 자원을 요청하면, 상기 메모리 관리부로부터 메모리 자원을 할당받아 상기 미들웨어가 요청하는 특정한 데이터 타입으로 변환하여 제공하는 캐쉬(cache); 및상기 미들웨어가 요청하는 데이터 타입들을 구조화하여 관리하는 구조 관리부를 포함하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
4 |
4
청구항 3에 있어서,상기 구조 관리부는 상기 미들웨어가 요청하는 데이터 타입들을 트리(tree), 힙(heap) 또는 버퍼(buffer) 중 적어도 어느 하나 이상의 관리 구조를 이용하여 관리하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
5 |
5
청구항 1에 있어서,상기 소켓은 PDP(Participant Discovery Protocol) 소켓, EPD(Endpoint Discovery Protocol) 소켓 또는 데이터 소켓 중 적어도 어느 하나 이상의 소켓인 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
6 |
6
청구항 1에 있어서,상기 네트워크 쓰레드는 상기 소켓을 관리하는 소켓 관리자를 포함하고, 상기 소켓 관리자는 상기 쓰레드 풀 간에 공유되는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
7 |
7
청구항 6에 있어서,상기 소켓 관리자는 select, poll, epoll, kqueue 중 적어도 어느 하나 이상의 시스템 호출 방식에 따른 구조체를 이용하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
8 |
8
청구항 1에 있어서,상기 네트워크 쓰레드는 네트워크로부터 새로운 데이터가 도착하는 경우, 상기 라이터 쓰레드 또는 리더 쓰레드로 할당되는 작업(job)을 생성하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
9 |
9
청구항 8에 있어서,상기 라이터/리더 쓰레드 관리 모듈은,상기 네트워크 쓰레드에 의해 생성된 작업(job)을 상기 라이터 쓰레드 또는 리더 쓰레드로 할당하는 작업 큐를 포함하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
10 |
10
청구항 9에 있어서,상기 작업은 엔터티 포인터(entity pointer), 패킷 데이터(packet data), 행위 상태(behavior status) 및 작업 시간 스케쥴(job time schedule)을 포함하는 필드로 구성되는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
11 |
11
청구항 1에 있어서,상기 로크프리 큐는 CAS 명령어(Compare And Swap instruction)에 의해 구현되는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|
12 |
12
데이터 분산 서비스를 위한 미들웨어의 데이터 전송 계층인 RTPS 계층에서 네트워크와 데이터를 송수신하는 소켓을 갖고 쓰레드 풀을 지원하는 네트워크 쓰레드를 구성하는 단계;상기 네트워크 쓰레드가 상기 네트워크로부터 수신한 데이터를 로크프리 기능을 갖는 로크프리 큐로 전송하는 단계; 및라이터 쓰레드 또는 리더 쓰레드가 상기 로크프리 큐에서 상기 데이터를 읽어 상기 RTPS 계층에서의 행위를 수행하는 단계를 포함하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 방법
|
13 |
13
청구항 12에 있어서,상기 네트워크 쓰레드를 구성하는 단계는,모든 네트워크 쓰레드들을 단일의 네트워크 쓰레드로 통합하는 단계;상기 단일의 네트워크 쓰레드를 기반으로 소켓을 생성하는 단계;상기 소켓을 관리하는 소켓 관리자를 생성하는 단계;상기 단일의 네트워크 쓰레드를 복수의 네트워크 쓰레드로 다중화하여 쓰레드 풀을 생성하는 단계;상기 소켓 관리자와 상기 소켓을 연결하는 단계; 및상기 쓰레드 풀이 상기 소켓 관리자를 공유하도록 상기 소켓 관리자와 상기 쓰레드 풀을 연결하는 단계를 포함하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 방법
|
14 |
14
청구항 12에 있어서,상기 소켓은 PDP 소켓, EPD 소켓 또는 데이터 소켓 중 적어도 어느 하나 이상의 소켓인 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 방법
|
15 |
15
청구항 12에 있어서,상기 라이터 쓰레드 또는 리더 쓰레드가 RTPS 계층에서의 행위를 수행하는 단계는,작업 큐가 상기 네트워크 쓰레드에 의해 생성된 작업을 시간 기준으로 정렬하는 단계; 및상기 라이터 쓰레드 또는 리더 쓰레드가 상기 작업 큐의 최상위에 위치하는 작업을 읽어 RTPS 계층에서의 행위를 수행하는 단계를 포함하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 방법
|
16 |
16
청구항 15에 있어서,상기 라이터 쓰레드 또는 리더 쓰레드가 RTPS 계층에서의 행위를 수행하는 단계는,상기 라이터 쓰레드 또는 리더 쓰레드에 의해 수행되어야 하는 주기적인 추가 행위가 필요한 경우에 상기 주기적인 추가 행위를 위한 새로운 작업을 생성하는 단계; 및상기 주기적인 추가 행위가 수행되어야 하는 시간을 표시하여 상기 생성된 새로운 작업을 상기 작업 큐에 삽입하는 단계를 더 포함하는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 방법
|
17 |
17
청구항 15에 있어서,상기 작업은 엔터티 포인터, 패킷 데이터, 행위 상태 및 작업 시간 스케쥴을 포함하는 필드로 구성되는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 방법
|
18 |
18
청구항 12에 있어서,상기 로크프리 큐는 CAS 명령어에 의해 구현되는 것을 특징으로 하는, 데이터 분산 서비스를 위한 미들웨어에서 데이터를 처리하기 위한 장치
|