1 |
1
서버 및 복수의 클라이언트들을 포함하는 분산 시스템의 동작 방법에 있어서,상기 복수의 클라이언트들 중에서 제 1 클라이언트에서 상기 서버의 제 1 테이블 및 상기 클라이언트의 제 2 테이블을 이용하여 공유 자원에 대한 잠금을 획득하는 단계; 및상기 제 1 클라이언트에서 상기 제 1 테이블과 상기 제 2 테이블을 이용하여 상기 공유 자원에 대한 잠금을 해제하는 단계를 포함하는 방법
|
2 |
2
제 1 항에 있어서,상기 제 1 테이블은 분산 공유 자원에 대한 정보를 저장하는 잠금(DSLock) 테이블이고,상기 제 2 테이블은 잠금 요청을 위한 자료구조(DSLock_node) 테이블인 것을 특징으로 하는 방법
|
3 |
3
제 1 항에 있어서,상기 제 1 및 제 2 테이블들의 각각은, 클라이언트 식별자(node_id) 및 클라이언트의 잠금 테이블에서 엔트리 가상 주소(lock_vaddr)를 포함하는 방법
|
4 |
4
제 3 항에 있어서,상기 제 2 테이블은 상기 공유 자원에 대한 잠금 상태를 나타내는 정보(TRUE 혹은 FALSE)을 포함하는 방법
|
5 |
5
제 1 항에 있어서,상기 제 1 테이블의 엔트리의 개수는 관리 대상 공유 자원의 개수인 것을 특징으로 하는 방법
|
6 |
6
제 1 항에 있어서,상기 서버는 상기 제 1 테이블을위한 메모리 공간을 할당하고, 상기 할당된 메모리 공간을 RDMA(remote direct memory access) 영역으로 등록하는 것을 특징으로 하는 방법
|
7 |
7
제 6 항에 있어서,상기 할당된 메모리 공간에 상기 RDMA 영역을 등록할 때, 상기 서버는 상기 할당된 메모리 공간에 대응하는 메모리 영역 키를 상기 복수의 클라이언트들에 배포하는 것을 특징으로 하는 방법
|
8 |
8
제 1 항에 있어서,상기 잠금을 획득하는 단계는,잠금을 표현할 상기 제 2 테이블의 엔트리로 상기 제 1 클라이언트에 대응하는 노드를 설정하는 단계;상기 서버의 주소와 상기 공유 자원의 식별 정보(id)를 이용하여 상기 제 2 테이블에서 상기 식별 정보에 대응하는 엔트리를 읽는 단계; 및원격 CAS(compare and swap)을 사용하여 상기 제 2 테이블의 엔트리를 잠금 상태를 지시하는 값으로 설정하는 단계를 포함하는 방법
|
9 |
9
제 1 항에 있어서,상기 잠금을 해제하는 단계는,해제할 잠금의 상기 2 테이블의 엔트리를 상기 제 1 클라이언트에 대응하는 노드로 설정하는 단계; 및원격 CAS(compare and swap)을 사용하여 상기 제 2 테이블의 엔트리를 잠금 해제를 지시하는 값으로 설정하는 단계를 포함하는 방법
|
10 |
10
공유 자원의 잠금(DSLock) 테이블을 갖는 제 1 테이블을 관리하는 서버; 및잠금 요청을 위한 자료구조(DSLock_node) 테이블을 갖는 제 2 테이블을 관리하는 복수의 클라이언트들을 포함하고,상기 복수의 클라이언트들의 각각은, 상기 제 1 및 제 2 테이블들을 이용하여 공유 자원에 대한 잠금 혹은 해제를 수행하고,잠금 요청된 클라이언트의 프로세스가 비지-웨이트(busy-wait)되는 것을 특징으로 하는 분산 시스템
|
11 |
11
제 10 항에 있어서,상기 복수의 클라이언트들 중에서 제 1 클라이언트는 상기 서버의 상기 제 1 테이블과 나머지 클라이언트들의 제 2 테이블들에 RDMA(remote direct memory access) 접근 가능한 것을 특징으로 하는 분산 시스템
|
12 |
12
제 10 항에 있어서,상기 복수의 클라이언트들 중에서 제 1 클라이언트가 잠금 경쟁이 없을 상태에서 잠금을 수행할 때, 상기 서버의 상기 제 1 테이블의 엔트리 값은 NULL 값이고, 상기 제 1 클라이언트를 제외한 나머지 클라이언트들의 제 2 테이블들의 엔트리 값들은 NULL 값인 것을 특징으로 하는 분산 시스템
|
13 |
13
제 10 항에 있어서,상기 복수의 클라이언트들 중에서 제 1 클라이언트가 잠금 상태에서 제 2 클라이언트가 잠금 획득을 시도할 때, 원격 CAS(compare and swam)을 사용하여 상기 제 2 클라이언트의 제 2 테이블의 엔트리 값이 상기 서버의 상기 제 1 테이블에 등록되는 것을 특징으로 하는 분산 시스템
|
14 |
14
제 10 항에 있어서,상기 복수의 클라이언트들에 잠금 경쟁이 없을 때, 잠금 해제 후에는 상기 서버의 제 1 테이블의 대응하는 엔트리 값이 NULL값이 되는 것을 특징으로 하는 분산 시스템
|