KR20120133857A - 태스크 기반의 동시성 제어 장치 및 방법 - Google Patents

태스크 기반의 동시성 제어 장치 및 방법 Download PDF

Info

Publication number
KR20120133857A
KR20120133857A KR1020110052746A KR20110052746A KR20120133857A KR 20120133857 A KR20120133857 A KR 20120133857A KR 1020110052746 A KR1020110052746 A KR 1020110052746A KR 20110052746 A KR20110052746 A KR 20110052746A KR 20120133857 A KR20120133857 A KR 20120133857A
Authority
KR
South Korea
Prior art keywords
task
user
shared object
concurrency control
control device
Prior art date
Application number
KR1020110052746A
Other languages
English (en)
Other versions
KR101280805B1 (ko
Inventor
김지인
김형석
이준
임민규
Original Assignee
건국대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 건국대학교 산학협력단 filed Critical 건국대학교 산학협력단
Priority to KR1020110052746A priority Critical patent/KR101280805B1/ko
Publication of KR20120133857A publication Critical patent/KR20120133857A/ko
Application granted granted Critical
Publication of KR101280805B1 publication Critical patent/KR101280805B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • G06F9/467Transactional memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 협업 가상 현실 환경에서 조작에 사용되는 공유 객체의 태스크들을 분석하여 세분화된 객체에 선별적인 소유권을 제공하고, 공유 객체의 일관성에 심각한 영향을 미치지 않는 태스크들을 소유권이 없는 사용자에게 허용할 수 있는 태스크 기반의 동시성 제어 장치 및 방법에 관한 것이다.
이를 위하여 본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치는 다수의 사용자에게 공유 객체에 대한 공동 작업 공간을 제공하며, 다수의 사용자들의 태스크 요청에 따른 결과를 공동 작업 공간에 반영하는 공동 작업 처리부와, 공유 객체에 대한 상황별 허용 태스크, 비허용 태스크 및 허용 태스크의 정보가 설정된 테이블과, 소유자 외 다른 사용자로부터 임의의 태스크 요청이 있는 경우 테이블에 설정된 정보를 기반으로 요청한 태스크를 허용하는 태스크 처리부를 포함할 수 있다.

Description

태스크 기반의 동시성 제어 장치 및 방법{CONCURRENCY CONTROL APPARATUS AND METHOD BASED ON TASK}
본 발명은 동시성 제어에 관한 것으로, 더욱 상세하게는 협업 가상 환경에서 중용한 요소 중 하나인 소유권 기반의 동시성 제어에서 여러 사용자들에게 보다 많은 공유 객체에 대한 동시성 접근 기회를 제공하는 태스크 기반의 동시성 제어 장치 및 방법에 관한 것이다.
인터넷의 발전을 통해 네트워크 기반으로 하는 여러 사용자가 참여하는 원격 협업 가상 환경은 다양한 작업들을 3차원 가상 현실 공간에서 사용자들이 직관적으로 상호작업을 사용하여 사용자간의 정보 및 경험을 공유하고 이를 통해 공동 작업을 향상시킬 수 있다. 이러한 특징에 기반한 협업 가상 환경은 온라인 게임, 군사 훈련, 의료 서비스, 과학 시뮬레이션 및 제품 설계 등의 다양한 분야에 적용이 되어 사용되고 있다.
또한, 협업 가상 환경은 네트워크 환경을 기반으로 공동 작업에 참여하는 사용자들이 공유 객체에 대한 데이터 속성을 변경하고, 변경되는 속성을 모니터링하며 결과물을 발전시키는데 있다. 하지만, 여러 명의 사용자들이 공유 객체의 속성 값을 수정 또는 엑세스하게 되는 경우 공유 객체의 속상값들이 사용자가 의도한 것과 다른 결과를 보여주게 되는 충돌이 발생될 수 있다.
이런 이유로 공유 객체 속성값의 일관성 유지를 위한 동시성 제어 메커니즘이 필요하게 된다. 협업 가상 환경에 적용되는 동시성 제어 메커니즘으로는 여러 사용자가 공유 객체에 대한 동시 작업에 대한 접근을 시도하게 될 때 공유 객체의 소유권을 갖는 사용자의 작업을 허락해주는 기본적인 접근 방법을 들 수 있다.
또한, 동시성 제어 메커니즘은 협업 가상 환경에 관련된 많은 애플리케이션들 중에서도 공유 객체 속성 값이 중요한 의미를 갖는 협업 디자인, 모델링 및 시뮬레이션 분야에서 유용하게 적용될 수 있으며, 이러한 응용 분야에서 활발하게 연구 중에 있다.
한편, 협업 가상 환경에서 소유권 기반의 동시성 제어 기법을 사용하는 경우에 한 개의 공유 객체에 대해서 소유를 하지 못하는 사용자들이 대다수 차지하게 된다. 공유 객체에 대한 소유 권한이 없는 사용자들은 공유 객체에 대한 작업을 시도하다가 취소되거나 혹은 소유 권한을 가진 사용자의 작업 과정을 모니터링하면서 채팅 등의 피드백을 주게 되는 가능한 행동 태스크들이 제약을 받게 된다. 이러한 행동 제약을 해결해주기 위해서 동시성 제어의 단계 및 수준을 세분하여 사용자에게 공유 객체에 대한 동시적 접근 기회를 증가시켜주는 연구들이 진행되고 있다. 그 예로서, CIAO에서 정의된 계층 구조에 적합한 공유 객체들에 대한 연구를 시작해서 하나의 공유 객체를 보다 작은 단위 객체로 세분화하고 보다 세분화된 공유 객체들을 구성하고, 이러한 객체들을 그룹으로 처리하여 여러 사용자들이 이 그룹들에 대한 동시성 제어를 진행할 수 있도록 해주는 연구들이 진행되었다. 다시말해서, 협업 가상 환경에서 공유 객체에 대한 동기화 및 동시성 제어를 위해 하나의 공유 객체를 세부적으로 잘게 나누거나, 인터랙션 및 속성에 따라 소유권을 구분하는 연구들이 꾸준히 이루어지고 있다.
상기의 연구 결과를 토대로 종래의 동시성 제어 기법은 크게 3가지로 분류되는데, 이에 대해 설명하면 아래와 같다.
첫째, 낙관적 기법은 사용자들이 공유 객체에 대한 접근 및 수정을 기본적으로 허용을 하되, 충돌이 발생하는 경우에 가장 먼저 공유 객체에 접근을 한 사용자의 작업만을 인정하고, 다른 사용자들의 작업은 "Undo"를 통하여 취소하는 방법이다.
그러나, 낙관적 기법은 Undo 과정을 통해 공유 객체에 대한 소유권을 신청한 사용자들 중 소유자(ownership)를 제외한 다른 사용자들은 Undo 메커니즘에 의한 놀라움을 느끼게 된다.
낙관적 기법의 다른 연구로 CAD 작업에 사용하고자 할 때, 사용자들의 오퍼레이션들을 논리적으로 처리해서 객체들의 충돌이 발생하는 경우에 논리적으로 결과들을 정렬하여 제공해줌으로서, 오퍼레이션들의 수행을 모두 허용해주는 non 락킹(locking) 기법을 지원하고, 상호 관계에 따른 정리를 하는 방법이 있다.
하지만, 이러한 방법은 미리 정의된 범위 안에서만 오퍼레이션들의 non 락킹이 이루어지게 된다. 즉, 사용자들이 미리 정의되지 않은 다른 오퍼레이션을 수행하는 경우에는 논리적인 결과의 정렬이 이루어지지 않기 때문에 여전히 충돌이 발생하게 된다.
다른 연구 결과로 객체 구조를 트리 구조로 처리하고, 공유 객체에 대한 오퍼레이션들에 대한 충돌들을 처리해야 하는 상황이 발생되는 경우 분산된 "arbitary phase"를 사용하여 동시에 입력된 사용들의 입력 작업들을 판단하여 순서를 정하는 연구 결과가 발표되었다. 하지만, 이 경우에도 "arbitary phase"의 판단 결과가 실패하는 경우에는 사용자들이 다시 수동적으로 문제를 해결해야 하며, 오퍼레이션들에 대한 오더링이 된다고 하더라도 다른 사용자들이 놀라움(surprise)을 느끼는 부분에 대한 해결책이 여전히 필요하다.
두 번째, 비관적 동시 제어 기법에서는 공유 객체에 접근하기 위해서는 먼저 객체에 대한 소유권을 얻어야 하고, 소유권을 얻은 사용자만이 공유 객체에 대한 접근 및 작업을 진행할 수 있도록 한다. 이러한 비관적 방식 협업 작업에 참여하는 사용자들이 명확하게 소유권을 설정하고, 이에 따라 공동 작업을 관리할 수 있다는 점에서 DIVE 같은 초기 협업 시스템으로부터 널리 사용되고 있다. 그 중 하나인 Li et al은 협업 디자인 시스템에서 비관적 방식을 사용하여 객체에 대한 소유권을 토큰(token)으로 처리하며, 한번에 한 사람의 사용자만이 수정할 수 있는 시스템을 제안하였다. 하지만, 이러한 시스템들을 사용하는 경우에는 객체의 소유권을 가진 사용자만이 공유 객체에 대한 작업을 수행할 수 있고, 다른 사용자들은 해당 공유 객체에 대해서 모니터링을 제외한 다른 공동 작업을 하기가 어렵다는 단점을 갖고 있다.
세 번째 방법으로는 예측 기반 동시성 제어 기법으로써, 협업 가상 환경에서 참여 사용자들의 공유 객체에 대한 접근 및 작업 방법을 미리 예측하여 가장 확률이 높은 사용자에게 미리 소유권을 주는 알고리즘으로, 그 예로서 PaRADAE와 같은 시스템을 들 수 있다. 다른 예측 기법으로는 아바타를 통하여 공동 작업을 하는 가상 환경에서 공유 객체 대한 소유권을 예측하기 위해서 공유 객체의 반지름과 사용자들과의 거리, 방향을 계산하여 해당 공유 객체를 소유할 확률이 가장 높은 사용자에게 소유권을 제공해주는 방법이 있으며, 이를 개선하여 아바타들의 이동 속도까지 고려하여 공유 객체에 대한 소유권을 예측하는 방법이 있다.
하지만, 이러한 예측 방법은 예측이 잘못된 경우 소유권 재설정 오버헤드가 들며, 이런 특성 때문에 정밀한 작업이 필요한 공동 디자인 시스템과 같은 협업 환경에는 적절하지 않다는 문제점이 있다. 또한, 비관적 방법과 마찬가지로 소유권을 갖고 있는 사용자를 제외한 다른 사용자들의 공동 작업은 제한된다는 단점이 있다.
비관적 방식의 동시성 제어 기법을 사용하는 공동 협업 시스템에서 소유권을 가지지 않은 사용자에게 보다 많은 공유 객체에 대한 접근 기회를 주기 위해서 공유 객체 및 작업을 세분화하는 연구들이 이루어지고 있다. 그 예로서, SSVE 시스템에서는 분산 가상 환경에서 공유 객체에 대한 작업의 종류를 공유 객체의 속성을 간단히 변경하는 Change It, 여러 공유 객체들의 속성 변경 및 배타적인 작업을 하게 되는 Grab It, 이보다 더 복잡한 공유 환경에서의 객체들의 구조 변경에 해당하는 Built It의 세가지로 정의하고, 각 작업 종류에 따라 다른 동시성 제어 메커니즘을 제공한다. 하지만, 이들의 작업 분류의 과정은 한 개의 공유 객체에 대한 작업이 아니라 뒤로 갈수록 다수의 복잡한 객체들에 대한 작업 및 동시성 제어 메커니즘을 제공하고 있기 때문에 작업 분류의 정도에 따라 충돌이 발생할 수 있으며, Change It 방식 외에는 비관적 동시성 제어 기법을 사용하기 때문에 소유권을 가지지 않은 사용자는 행동에 있어서 제약을 갖게 된다.
협업 가상 현실 환경에서 공유 객체의 접근 및 조작 기회를 보다 많은 사용자들에게 줄 수 있는 연구로는 공유 객체를 세부적인 객체들로 분할하며, 분할된 객체들을 사용자들이 조작할 수 있는 비관적 동시성 제어 방법이다. CAD 분야에서는 잘게 분할이 이루어진 이 객체들을 피처라고 정의를 하고 있으며, 논리적으로 트리 형태와 같은 구조를 갖게 된다. 피처들을 사용한 비관적 동시성 제어 방법은 기존의 단일 공유 객체를 사용하는 작업에 비해서 여러 사용자의 조작이 가능한 시스템을 설계할 수 있다. 하지만, 이러한 피처들을 사용하는 경우에도 소유권을 가진 사용자가 피처들을 독점으로 사용하면, 소유권을 가지고 있는 사용자를 제외한 다른 사용자들의 공유 객체에 대한 접근은 여전히 제한적일 수 밖에 없으며, 이러한 제약 사항은 협업 가상 현실에서의 공동 작업 효율을 감소시키게 된다.
하지만, 이러한 기존의 연구들의 경우는 너무 세분화된 객체들로 이루어져 있기 때문에 사용자가 가상 현실 환경에서 조작할 수 있는 객체들을 선택하기가 힘든 상황이 발생하고, 객체들을 세분화하고 그룹화하더라도 다른 사용자들이 해당 객체 혹은 그룹에 대한 조작을 수행하고 싶은 경우에는 여전히 행동 제약 사항이 발생하게 된다.
이런 이유로 협업 가상 환경에서 공유 객체의 공동 작업 과정에서 참여 사용자들의 작업에 따른 일관성이 유지가 되면서도, 다른 참여 사용자들도 단순히 작업 과정 모니터링만을 하는 것이 아닌 보다 많은 작업을 참여할 수 있는 시스템 및 방법이 절실히 요구되고 있다.
상기와 같은 요구에 의해 안출된 것으로서, 본 발명의 목적은 협업 가상 현실 환경에서 조작에 사용되는 공유 객체의 태스크들을 분석하여 세분화된 객체에 선별적인 소유권을 제공하고, 공유 객체의 일관성에 심각한 영향을 미치지 않는 태스크들을 소유권이 없는 사용자에게 허용할 수 있는 태스크 기반의 동시성 제어 장치 및 방법을 제공하는데 있다.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 측면에 따르면, 본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치는 다수의 사용자에게 상기 공유 객체에 대한 공동 작업 공간을 제공하며, 상기 다수의 사용자들의 태스크 요청에 따른 결과를 상기 공동 작업 공간에 반영하는 공동 작업 처리부와, 상기 공유 객체에 대한 상황별 허용 태스크, 비허용 태스크 및 허용 태스크의 정보가 설정된 테이블과, 상기 소유자 외 다른 사용자로부터 임의의 태스크 요청이 있는 경우 상기 테이블에 설정된 정보를 기반으로 상기 요청한 태스크를 허용하는 태스크 처리부를 포함할 수 있다.
본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치에서 상기 테이블에는, 상기 공유 객체에 대한 태스크별 허용 태스크와 비허용 태스크의 정보가 설정되어 있으며, 상기 공유 객체의 소유자가 수행하는 태스크의 상황에 따른 상황별 허용 태스크, 비허용 태스크의 정보가 설정되어 있는 것을 특징으로 한다.
본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치는 상기 공유 객체의 소유자가 상기 공유 객체를 핸드링하기 위한 태스크를 분석하며, 상기 태스크의 분석 결과에 의거하여 상기 테이블에 설정된 상황별 허용 태스크의 정보를 변경하는 테이블 처리부를 더 포함하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치는 상기 공유 객체의 소유자가 상기 공유 객체를 핸드링하기 위한 태스크를 분석하며, 상기 태스크의 분석 결과에 의거하여 상기 테이블에 설정된 정보를 변경하는 테이블 처리부를 더 포함하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치는 상기 테이블에 설정된 정보를 기반으로 상기 다른 사용자가 수행할 수 있는 테스크와 수행할 수 없는 태스크를 구분한 사용자 인터페이스를 설정한 후 이를 상기 다른 사용자에게 제공하는 인터페이스 설정부를 더 포함하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치에서 상기 인터페이스 설정부는, 상기 테이블에 설정된 상황별 허용 태스크의 정보를 기반으로 상기 상황별 허용 태스크와 관련된 메뉴를 기 설정된 패턴으로 설정한 사용자 인터페이스를 상기 다른 사용자에게 제공하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치는 상기 다른 사용자로부터 개인 작업 요청이 있는 경우 상기 공동 작업 공간 내 공유 객체를 복사한 후 이를 기반으로 개인 작업 공간을 생성하며, 상기 개인 작업 공간을 상기 다른 사용자에게 제공하는 개인 공간 생성부를 더 포함하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치에서 상기 개인 공간 생성부는, 상기 개인 작업 공간에서 상기 다른 사용자의 요청 태스크를 처리한 결과를 상기 공동 작업 공간에 반영하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치에서 상기 개인 공간 생성부는, 상기 소유자의 선택에 따라 상기 개인 작업 공간에서 상기 다른 사용자의 요청 태스크를 처리한 결과를 상기 공동 작업 공간에 반영하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치에서 상기 개인 공간 생성부는, 상기 개인 작업 공간에서 상기 다른 사용자의 요청 태스크를 처리한 결과를 상기 다른 사용자의 단말기 내 저장매체에 저장하거나, 상기 제어 장치 내의 저장매체에 저장하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 장치에서 상기 공유 객체는, 트리 구조를 갖는 다수의 피처들로 구성되며, 상기 피처들의 특성에 따라 그룹화되어 있는 것을 특징으로 한다.
본 발명의 다른 측면에 따르면, 본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 방법은 다수의 사용자에게 공유 객체를 작업할 수 있는 공동 작업 공간을 제공하는 단계와, 상기 공유 객체의 소유자가 수행하는 태스크를 분석하는 단계와, 상기 분석된 태스크를 기반으로 상황별 허용 태스크, 허용 태스크 및 비허용 태스크의 정보를 생성하여 테이블에 저장하는 단계와, 상기 소유자 외의 사용자로부터 태스크 요청이 있는 경우 상기 테이블에 저장된 정보를 기반으로 허용 여부를 결정하는 단계를 포함할 수 있다.
본 발명은 협업 가상 현실 환경에서 조작에 사용되는 공유 객체의 태스크들을 분석하여 세분화된 객체에 선별적인 소유권을 제공하고, 공유 객체의 일관성에 심각한 영향을 미치지 않는 태스크들을 소유권이 없는 사용자에게 허용함으로써, 사용자들의 행동 제약을 최소화시킬 수 있다.
또한, 본 발명은 허용되지 않은 태스크를 수행하여 독립적인 수정작업을 수행할 수 있는 개인 작업 공간을 제공함으로써, 협업 작업의 효율성을 증가시킬 수 있다.
도 1은 본 발명의 실시 예에 따른 네트워크 환경에서 태스크 기반의 동시성 제어 장치와 그 주변 구성을 도시한 블록도,
도 2는 본 발명의 실시 예에 따른 동시성 제어 장치의 내부 구성을 도시한 블록도,
도 3은 본 발명의 실시 예에 따른 동시성 제어 장치에서 개인 작업 공간을 생성하여 제공하는 과정을 설명하기 위한 도면,
도 4는 본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 과정을 도시한 흐름도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
본 발명의 실시 예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시 예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하, 첨부된 도면을 참조하여 네트워크 환경에서 태스크 기반의 동시성 제어 장치 및 방법에 대해 상세히 설명하기로 한다.
도 1은 본 발명의 실시 예에 따른 네트워크 환경에서 태스크 기반의 동시성 제어 장치와 그 주변 구성을 도시한 블록도이며, 공유 객체를 소유하는 소유자(100), 공유 객체에 대한 작업을 요청할 수 있는 요청자(110), 소유자(100) 및 요청자(110)에게 공유 객체를 디스플레이해줄 뿐만 아니라 태스크에 기반하여 공유 객체를 핸드링할 수 있는 인터페이스를 제공하는 공동 작업 공간(Public Workspace)(120), 요청자(110)가 요청한 태스크에 대한 허용, 비허용 또는 상황별 허용을 결정하기 위한 정보가 저장된 테이블(130) 및 요청자(110)의 요청 태스크가 비허용인 경우 이를 처리하기 위한 개인 작업 공간(Personal Workspace)(140) 등을 포함할 수 있다.
본 발명의 실시 예에서 공유 객체는 다수개의 피처(feature)들로 이루어진 트리 구조를 갖을 수 있으며, 다수개의 피처들은 그 특성에 따라 그룹화되어 관리될 수 있는
도 1에 도시된 바와 같이, 공유 객체의 피처들 중 2번의 소유자(100)가 공동 작업 공간(120)에서 공유 객체에 대한 수정 작업을 수행하고 있다. 이때, 다른 사용자, 즉 요청자(110)가 이 공유 객체에 대한 태스크를 요청한다.
태스트 기반의 동시성 제어 장치는 요청된 태스크의 특성에 따라 요청자(110)의 태스크 요청을 처리하는데, 즉 테이블(130)에 저장된 비허용 태스크 정보(Locking Pessimistic Task), 상황별 허용 태스크 정보(Unlocking-Condition Task), 허용 태스크 정보(Unlocking-Accept Task) 및 개인 작업 공간(140)을 이용하여 태스크 요청을 처리할 수 있다. 즉, 요청된 태스크가 소유자의 태스크와 충돌이 발생되는 경우에는 이를 비허용 태스크로 분류하여 요청자(110)의 요청을 거절하고, 소유자(100)가 요청된 태스크와 같은 작업을 하고 있고 방해를 받지 않는 경우에는 요청된 태스크를 상황별 허용 태스크로 판별하여 요청자(110)의 요청을 허용할 수 있다.
이와 같이, 상황별 허용 태스크의 경우에는 요청자(110)의 작업이 진행 중에 있더라도 소유자(100)가 상황별 허용 태스크에 해당하는 태스크를 수행하는 경우에는 요청자(110)의 태스크는 더 이상 허용되지 않으며, 요청자(110)의 작업 정보는 개인 작업 공간으로 이동될 수 있다.
한편, 요청된 태스크가 공유 객체의 소유자(100)의 작업과 항상 영향을 주지 않을 경우에는 이를 허용 태스크로 분류하여 요청자(110)의 요청을 허용해준다. 마지막으로 요청자(110)가 허용되지 않은 태스크를 독립적으로 수행하고 싶을 경우에는 별도의 개인 작업 공간(140)을 생성한 후 공유 객체의 피처2의 현재까지 작업이 진행된 사본을 생성된 개인 작업 공간(140)에 복사하여 요청자(110)에게 제공해줄 수 있다. 요청자(110)가 개인 작업 공간(140)을 이용하여 태스크를 수행한 결과는 공동 작업 공간(120)에 반영되지 않고 개인 작업 공간(140)에만 반영될 수 있다.
이러한 태스크의 처리는 테이블(130)에 저장된 정보를 기반으로 이루어지는데, 이러한 테이블(130) 내의 정보는 소유자(100)의 태스크를 기반으로 변경될 수 있다.
이와 같이, 태스크 기반의 동시성 제어 장치가 공유 객체의 소유권을 가지지 않은 사용자들의 태스크들도 부분적으로 허용해 공동 작업 참여자의 행동 제약을 해결하기 위해서는, 도 2에 도시된 바와 같이, 공동 작업 처리부(200), 공유 객체 데이터베이스(210), 테이블(130), 태스크 처리부(230), 테이블 처리부(240), 개인 공간 생성부(250) 및 인터페이스 설정부(260) 등을 포함할 수 있다.
공동 작업 처리부(200)는 다수의 사용자에게 공유 객체에 대한 공동 작업 공간(120)을 제공하며, 다수의 사용자들의 태스크 요청에 따른 결과를 공동 작업 공간(120)에 반영할 수 있다.
공유 객체 데이터베이스(210)는 공유 객체를 저장하고 있으며, 이러한 공유 객체는 다수의 피처들로 구성된 트리 구조를 갖을 수 있다. 여기에서, 다수의 피처들은 그룹화되어 관리될 수 있다.
테이블(130)에는 비허용 태스크 정보(Locking Pessimistic Task), 상황별 허용 태스크 정보(Unlocking-Condition Task), 허용 태스크 정보(Unlocking-Accept Task) 등이 저장될 수 있다.
테이블 처리부(240)는 소유자(100)의 현재 수행 중인 태스크에 대한 정보를 기반으로 테이블(130)에 저장된 상황별 허용 태스크 정보, 허용 태스크 정보, 비허용 태스크 정보 등을 변경시킬 수 있다.
이와 같이 공유 객체(object)에 대한 태스크의 종류에 대해 예를 들면 아래의 표 1과 같다.
Figure pat00001
상기의 표 1에 도시된 태스크들은 특성에 따라 아래의 표 2와 같이 분류할 수 있다.
Figure pat00002
상기의 표 1 및 표 2에 도시된 바와 같이, "TransformationAttributeSet"은 공유 객체의 3차원적인 위치를 표현하는 정보로써, 공유 객체의 이동(T), 회전(R), 크기(S) 변환 작업을 포함할 수 있다. 소유권을 가진 사용자가 이러한 태스크를 수행하고 있을 때, 다른 사용자들이 같은 작업을 시도하게 되면, "TransformationAttributeSet"의 데이터가 일관성을 유지하지 못하게 되어 충돌이 발생하게 된다.
한편, 공유 객체의 "ExistenceAttributeSet"의 경우에는 공유 객체의 존재 유무에 관련된 내용으로써, 하나의 공유 객체가 둘 이상의 세부적인 객체들로 분할이 이루어진다던지(F), 2개 이상의 공유 객체들이 하나의 공유 객체로 합쳐지는(M) 등의 기능을 수행하게 된다. 소유권이 없는 사용자가 해당 공유 객체에 대해서 작업을 수행하게 된다면, F, M, D 등과 같은 테스크들은 공유 객체의 존재 유무가 변경이 이루어지기 때문에 데이터의 일관성을 유지 못하게 되어 충돌이 발생하게 된다. 하지만, 새로운 공유 객체를 추가하는 N이나 해당 공유 객체를 복사하고자 할 때 이를 지원해주는 C 기능은 소유권을 가진 사용자의 허락 유무에 따라 허용이 가능하다.
공유 객체의 "SemanticDataAttributeSet"는 객체의 데이터가 가지는 특성과 관련된 태스크들에 대한 내용으로써, 이는 공유 객체가 응용 프로그램에서 정의된 데이터에 대한 기능 및 목적의 의미를 갖는다. 이를 조정하기 위한 DC는 이러한 공유 객체의 데이터에 대한 계산을 수행하게 된다. 즉, 도시 환경 시뮬레이션에서 사용되는 연기나 폭파를 위한 파티클 시뮬레이션이나, 분자 모델링 분야의 3차원 분자 모델인 경우에는 화학적인 에너지 계산을 수행하는 등의 처리를 수행할 수 있다. 이러한 태스크는 소유권이 없는 사용자가 소유자(100)의 작업 변화에 따라 달라지는 시뮬레이션 결과를 얻고자 할 때 부분적으로 접근이 가능할 수 있다. 이 경우에도 소유권을 가진 사용자 외에 다른 사용자들이 데이터에 접근을 하는 경우에는 충돌이 발생할 수 있다.
"PresentationAttribueSet"은 공유 객체의 외관을 표현하는 정보와 관련된 태스크들을 의미하게 된다. 여기에서 V는 공유 객체의 외관적인 색깔을 변경, 텍스처를 변경하는 작업, 외관의 폴리곤 모양을 변경하는 작업 및 공유 객체가 애니메이션 정보를 가지고 있는 경우 애니메이션 정보를 표현해준다. 이러한 "SemanticDataAttributeSet"과 "PresentationAttribueSet"에서는 소유자(100)가 해당 작업을 수행중이거나 락을 걸어둔 상태가 아니라면 다른 사용자들이 접근하여 수정할 수 있다.
이러한 공유 객체들의 태스크들의 수행에 따라 해당되는 속성들의 값의 변경이 이루어질 수 있다. 즉, 표 1에 도시된 태스크가 비소유권자인 요청자(110)에 의해 수행될 수 있는지 여부는 아래의 표 3과 같다.
Figure pat00003
상기의 표 3에 도시된 바와 같이, 비허용 태스크는 객체 소유자(100)만 수행할 수 있고, 상황별 허용 태스크는 소유자(100)가 수행하는 태스크에 따라 요청자(110)에도 허용이 가능한 태스크를 의미하며, 허용 태스크는 소유자(100)와 상관없이 수행 가능한 태스크를 의미한다.
이러한 상황별 허용 태스크, 비허용 태스크 및 허용 태스크에 대한 정보는 테이블(130)에 저장되어 있으며, 테이블(130)에 저장된 정보는 공유 객체를 소유한 소유자(100)가 수행하는 태스크에 따라 변경될 수 있다.
한편, 인터페이스 설정부(260)는 테이블(130)에 저장된 정보를 기반으로 요청자(110)가 수행할 수 있는 태스크와 수행할 수 없는 태스크를 구분한 사용자 인터페이스를 설정한 후 이를 요청자(110)의 단말기에 디스플레이할 수 있다. 예를 들어, 비허용 태스크에 관련된 메뉴는 비활성 상태로, 허용 태스크에 관련된 메뉴는 활성 상태로, 상황별 허용 태스크에 관련된 메뉴는 특정 페턴으로 설정한 사용자 인터페이스를 생성하며, 생성된 사용자 인터페이스는 요청자(110)의 단말기에 제공될 수 있다.
태스크 처리부(230)는 요청자(110)의 요청 태스크를 처리하기 위한 것으로, 요청자(110)의 요청 태스크와 테이블(130)에 저장된 정보간의 비교를 통해 요청 태스크를 허용 또는 거부할 수 있다.
한편, 요청자(110)의 요청 태스크가 허용되지 않지만 요청자(110)로부터 독립 수행 요청이 있는 경우에 개인 공간 생성부(250)는 개인 작업 공간(140)을 생성하며, 공유 객체의 현재까지 작업이 진행된 사본을 복사한 후 이를 생성된 개인 작업 공간(140)에 복사하여 요청자(110)의 작업을 지원할 수 있다. 개인 작업 공간(140)에서 진행되는 작업 결과는 요청자(110)의 단말기에 저장되거나 동시성 제어 장치의 별도 저장 공간, 예컨대 메모리, 하드디스크 등과 같은 저장매체(미도시됨)에 저장될 수 있으며, 공동 작업 공간(120) 내 공유 객체에 반영되지 않는다.
이와 같이, 공동 작업 공간(120)에서 작업을 진행 중이던 공동 작업의 내용을 복사하여 개인적인 작업을 가능하게 해주는 개인 작업 공간(140)을 생성한 후 이를 요청자(110)에게 제공해줌으로써, 공동 작업 공간(120)에서 수행하지 못했던 태스크를 가능하게 해줄 수 있다. 이에 대해 상세히 설명하면 아래와 같다.
도 3에 도시된 바와 같이, 소유권 별로 공동 작업이 이루어지는 피처들을 그룹으로 정의하고, 이 그룹에 대해 소유권을 갖지는 사용자(요청자)가 개인 작업을 요청하면, 개인 공간 생성부(250)에서는 순서대로 개인 작업 공간(140)을 생성하여 요청자(110)에게 제공할 뿐만 아니라 생성된 개인 작업 공간(140)을 관리할 수 있다. 다시 말해서, 원본의 피처 그룹(300)을 소유한 소유자(100), 제 1 피처 그룹(310)에 대한 개인 작업을 요청한 요청자1(PV1), 제 2 피처 그룹(320)에 대한 개인 작업을 요청한 요청자2(PV2)가 있을 경우에는 제 1 피처 그룹과 제 2 피처 그룹에 대응되는 개인 작업 공간(140)을 각각 생성한 후 이를 요청자1,2(PV1, PV2)에 제공한다. 이러한 개인 작업 공간(140)은 다른 사용자들에게 공유되지 않고 개인 작업을 요청한 요청자1,2(PV1, PV2)들만 확인할 수 있다.
한편, 개인 작업 공간(140)에서 작업이 완료되면, 요청자(110)의 개인 작업 공간(140) 내 작업 결과는 공동 작업 공간(120)에 업데이트될 수 있다.
본 발명의 실시 예에 따른 동시성 제어 장치는 소유자(100) 및 요청자(110)의 단말기들과 통신망(미도시됨)을 통해 연동되는 별도의 서버에 프로그램 형식으로 설치되거나, 소유자(100) 및 요청자(110)의 단말기에 설치될 수 있다.
또한, 본 발명의 실시 예에 따른 동시성 제어 장치는 소유자(100) 및 요청자(110)의 단말기들에 프로그램 형식으로 설치될 뿐만 아니라 클라우드 환경에서 서로의 자원 공유를 통해 동시성 제어를 수행할 수 있다.
상기와 같은 구성을 갖는 태스크 기반의 동시성 제어 장치가 동작하는 과정에 대해 도 4를 참조하여 설명한다.
도 4는 본 발명의 실시 예에 따른 태스크 기반의 동시성 제어 과정을 도시한 흐름도이다.
도 4에 도시된 바와 같이, 먼저 소유자(100)의 공유 객체 요청(S400)에 따라 동시성 제어 장치의 공동 작업 처리부(200)는 공유 객체를 공유 객체 데이터베이스(210)에서 검색한 후 이를 이용하여 공동 작업 공간(120)을 생성하며, 공동 작업 공간(120)을 소유자(100)를 포함한 다수의 사용자 단말기에 제공한다(S402). 여기에서, 공유 객체는 피처들 또는 피처의 그룹 형태일 수 있다.
그런 다음, 테이블 처리부(240)는 소유자(100)의 태스크를 분석하며, 분석된 태스크를 기반으로 비허용 태스크, 허용 태스크 및 상황별 허용 태스크의 정보를 생성한 후 이를 테이블(130)에 저장한다(S404, S406).
이후, 다수의 사용자 중 임의의 사용자(이후, 요청자라고 함)의 단말기로부터 태스크 요청이 수신되면(S408), 태스크 처리부(230)는 요청자(110)가 요청한 태스크와 테이블(130)에 저장된 정보를 비교하여 태스크를 허용하거나 거부함으로써, 요청자(110)가 요청한 태스크를 처리한다(S410).
한편, 요청자(110)로부터 개인 작업 요청이 수신되면(S412), 개인 공간 생성부(250)는 공동 작업 공간(120)에 대응되는 사본을 생성(S414)한 후 이를 기반으로 개인 작업 공간(140)을 생성하고, 생성된 개인 작업 공간(140)을 요청자(110)에 제공한다(S416).
또한, 소유자(100)의 태스크가 변경되면(S418), 테이블 처리부(240)는 변경된 태스크를 기반으로 테이블(130) 내 정보를 업데이트한다.
본 발명의 실시 예에 따른 제어 방법에서는 요청자(110)로부터 수신된 태스크와 테이블(130) 내 정보간의 비교를 통해 요청자(110)의 태스크 허용 여부를 결정하는 것으로 예를 들어 설명하였지만, 테이블(130) 내 정보를 기반으로 요청자(110)에게 사용자 인터페이스, 예컨대 메뉴를 활성 및 비활성 상태로 디스플레이해줄 수 있다. 즉, 요청자(110)는 자신에게 활성된 메뉴만을 이용하여 공동 작업 공간(120) 내 공유 객체를 핸드링할 수 있다. 이런 경우, 소유자(100)의 태스크가 변경되면, 이에 따라 메뉴의 활성 및 비활성 상태가 변경될 수 있다.
한편, 본 발명의 실시 예에 따른 동시성 제어 장치 및 방법에서는 소유자(100)의 태스크에 기반하여 테이블(130) 내 정보를 모두 변경하는 것으로 예를 들어 설명하였지만, 테이블(130)에 공유 객체를 작업하기 위한 태스크별 허용 및 비허용 태스크를 설정된 상태에서 소유자(100)의 태스크에 따라 상황별 허용 태스크의 정보만을 변경할 수 있다.
이와 같이, 본 발명의 실시 예에 따르면, 계층 구조를 갖는 공유 객체들에 대한 태스크들을 정의하고, 이들 중 객체 소유권이 없더라도 허용될 수 있는 태스크 타입을 정의하여 비소유권자의 행동 제약을 완화시켰으며, 소유권이 없는 사용자들이 허용되지 않은 태스크를 수행하고자 할 대 개인 작업 공간을 지원함으로써, 사용자들에게 보다 많은 참여 기회를 제공할 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 예를 들어 당업자는 본 발명을 구성하는 요소 등을 적용 분야에 따라 변경하거나, 개시된 실시형태들을 조합 또는 치환하여 본 발명의 실시예에 명확하게 개시되지 않은 형태로 실시할 수 있으나, 이 역시 본 발명의 범위를 벗어나지 않는 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것으로 한정적인 것으로 이해해서는 안 되며, 이러한 변형된 실시예들은 본 발명의 특허청구범위에 기재된 기술사상에 포함된다고 하여야 할 것이다.
100 : 소유자 110 : 요청자
120 : 공동 작업 공간 130 : 테이블
140 : 개인 작업 공간
200 : 공동 작업 처리부
210 : 공유 객체 데이터베이스
230 : 태스크 처리부
240 : 테이블 처리부
250 : 개인 공간 생성부
260 : 인터페이스 설정부

Claims (20)

  1. 다수의 사용자에게 상기 공유 객체에 대한 공동 작업 공간을 제공하며, 상기 다수의 사용자들의 태스크 요청에 따른 결과를 상기 공동 작업 공간에 반영하는 공동 작업 처리부와,
    상기 공유 객체에 대한 상황별 허용 태스크, 비허용 태스크 및 허용 태스크의 정보가 설정된 테이블과,
    상기 소유자 외 다른 사용자로부터 임의의 태스크 요청이 있는 경우 상기 테이블에 설정된 정보를 기반으로 상기 요청한 태스크를 허용하는 태스크 처리부를 포함하는
    태스크 기반의 동시성 제어 장치.
  2. 제 1 항에 있어서,
    상기 테이블에는, 상기 공유 객체에 대한 태스크별 허용 태스크와 비허용 태스크의 정보가 설정되어 있으며, 상기 공유 객체의 소유자가 수행하는 태스크의 상황에 따른 상황별 허용 태스크, 비허용 태스크의 정보가 설정되어 있는 것을 특징으로 하는
    태스크 기반의 동시성 제어 장치.
  3. 제 2 항에 있어서,
    상기 제어 장치는,
    상기 공유 객체의 소유자가 상기 공유 객체를 핸드링하기 위한 태스크를 분석하며, 상기 태스크의 분석 결과에 의거하여 상기 테이블에 설정된 상황별 허용 태스크의 정보를 변경하는 테이블 처리부를 더 포함하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 장치.
  4. 제 1 항에 있어서,
    상기 제어 장치는,
    상기 공유 객체의 소유자가 상기 공유 객체를 핸드링하기 위한 태스크를 분석하며, 상기 태스크의 분석 결과에 의거하여 상기 테이블에 설정된 정보를 변경하는 테이블 처리부를 더 포함하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 장치.
  5. 제 1 항에 있어서,
    상기 제어 장치는,
    상기 테이블에 설정된 정보를 기반으로 상기 다른 사용자가 수행할 수 있는 테스크와 수행할 수 없는 태스크를 구분한 사용자 인터페이스를 설정한 후 이를 상기 다른 사용자에게 제공하는 인터페이스 설정부를 더 포함하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 장치.
  6. 제 5 항에 있어서,
    상기 인터페이스 설정부는,
    상기 테이블에 설정된 상황별 허용 태스크의 정보를 기반으로 상기 상황별 허용 태스크와 관련된 메뉴를 기 설정된 패턴으로 설정한 사용자 인터페이스를 상기 다른 사용자에게 제공하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 장치.
  7. 제 1 항에 있어서,
    상기 제어 장치는,
    상기 다른 사용자로부터 개인 작업 요청이 있는 경우 상기 공동 작업 공간 내 공유 객체를 복사한 후 이를 기반으로 개인 작업 공간을 생성하며, 상기 개인 작업 공간을 상기 다른 사용자에게 제공하는 개인 공간 생성부를 더 포함하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 장치.
  8. 제 7 항에 있어서,
    상기 개인 공간 생성부는,
    상기 개인 작업 공간에서 상기 다른 사용자의 요청 태스크를 처리한 결과를 상기 공동 작업 공간에 반영하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 장치.
  9. 제 7 항에 있어서,
    상기 개인 공간 생성부는,
    상기 소유자의 선택에 따라 상기 개인 작업 공간에서 상기 다른 사용자의 요청 태스크를 처리한 결과를 상기 공동 작업 공간에 반영하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 장치.
  10. 제 7 항 내지 제 9 항 중 어느 한 항에 있어서,
    상기 개인 공간 생성부는,
    상기 개인 작업 공간에서 상기 다른 사용자의 요청 태스크를 처리한 결과를 상기 다른 사용자의 단말기 내 저장매체에 저장하거나, 상기 제어 장치 내의 저장매체에 저장하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 장치.
  11. 제 1 항에 있어서,
    상기 공유 객체는, 트리 구조를 갖는 다수의 피처들로 구성되며, 상기 피처들의 특성에 따라 그룹화되어 있는 것을 특징으로 하는
    태스크 기반의 동시성 제어 장치.
  12. 다수의 사용자에게 공유 객체를 작업할 수 있는 공동 작업 공간을 제공하는 단계와,
    상기 공유 객체의 소유자가 수행하는 태스크를 분석하는 단계와,
    상기 분석된 태스크를 기반으로 상황별 허용 태스크, 허용 태스크 및 비허용 태스크의 정보를 생성하여 테이블에 저장하는 단계와,
    상기 소유자 외의 사용자로부터 태스크 요청이 있는 경우 상기 테이블에 저장된 정보를 기반으로 허용 여부를 결정하는 단계를 포함하는
    태스크 기반의 동시성 제어 방법.
  13. 제 12 항에 있어서,
    상기 방법은,
    상기 소유자의 태스크가 변경됨에 따라 상기 테이블에 저장된 정보를 변경하는 단계를 더 포함하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 방법.
  14. 제 12 항에 있어서,
    상기 방법은,
    상기 소유자의 태스크가 변경됨에 따라 상기 테이블에 저장된 상황별 허용 태스크의 정보를 변경하는 단계를 더 포함하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 방법.
  15. 제 12 항에 있어서,
    상기 방법은,
    상기 테이블에 설정된 정보를 기반으로 상기 다른 사용자가 수행할 수 있는 테스크와 수행할 수 없는 태스크를 구분한 사용자 인터페이스를 설정하여 상기 다른 사용자에게 제공하는 단계를 더 포함하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 방법.
  16. 제 15 항에 있어서,
    상기 사용자 인터페이스는,
    상기 상황별 허용 태스크와 관련된 메뉴에 대응되는 기 설정된 패턴을 포함하고 있는 것을 특징으로 하는
    태스크 기반의 동시성 제어 방법.
  17. 제 12 항에 있어서,
    상기 제어 방법은,
    상기 다른 사용자로부터 개인 작업 요청이 있는 경우 상기 공동 작업 공간 내 공유 객체를 복사한 후 이를 기반으로 개인 작업 공간을 생성하는 단계와,
    상기 개인 작업 공간을 상기 다른 사용자에게 제공하는 단계를 더 포함하는 것을 징으로 하는
    태스크 기반의 동시성 제어 방법.
  18. 제 17 항에 있어서,
    상기 제어 방법은,
    상기 개인 작업 공간에서 상기 다른 사용자의 요청 태스크를 처리한 결과를 이용하여 상기 공동 작업 공간을 업데이트하는 단계를 더 포함하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 방법.
  19. 제 18 항에 있어서,
    상기 업데이트하는 단계는,
    상기 소유자의 선택에 따라 상기 개인 작업 공간에서 상기 다른 사용자의 요청 태스크를 처리한 결과를 이용하여 상기 공동 작업 공간을 업데이트하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 방법.
  20. 제 17 항 내지 제 19 항 중 어느 한 항에 있어서,
    상기 제어 방법은,
    상기 개인 작업 공간에서 상기 다른 사용자의 요청 태스크를 처리한 결과를 상기 다른 사용자의 단말기 내 저장매체에 저장하거나, 상기 제어 장치 내의 저장매체에 저장하는 단계를 더 포함하는 것을 특징으로 하는
    태스크 기반의 동시성 제어 방법.
KR1020110052746A 2011-06-01 2011-06-01 태스크 기반의 동시성 제어 장치 및 방법 KR101280805B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110052746A KR101280805B1 (ko) 2011-06-01 2011-06-01 태스크 기반의 동시성 제어 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110052746A KR101280805B1 (ko) 2011-06-01 2011-06-01 태스크 기반의 동시성 제어 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20120133857A true KR20120133857A (ko) 2012-12-11
KR101280805B1 KR101280805B1 (ko) 2013-07-05

Family

ID=47517157

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110052746A KR101280805B1 (ko) 2011-06-01 2011-06-01 태스크 기반의 동시성 제어 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101280805B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014208909A1 (ko) * 2013-06-28 2014-12-31 삼성전자 주식회사 시뮬레이션 장치 및 분산 시뮬레이션 시스템
CN115049356A (zh) * 2022-05-23 2022-09-13 中国人民解放军火箭军工程大学 一种基于对象所有权动态分配与时效限制的协同操作并发冲突控制方法
KR102528581B1 (ko) * 2021-12-21 2023-05-04 주식회사 야타브엔터 적응형 동시성 제어가 구현 가능한 확장 현실 서버

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU4331699A (en) 1998-06-03 1999-12-20 Chopp Computer Corporation Method for increased concurrency in a computer system
US8132174B2 (en) 2008-12-19 2012-03-06 Sap Aktiengeselleschaft Concurrency management in cluster computing of business applications

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014208909A1 (ko) * 2013-06-28 2014-12-31 삼성전자 주식회사 시뮬레이션 장치 및 분산 시뮬레이션 시스템
KR20150002283A (ko) * 2013-06-28 2015-01-07 삼성전자주식회사 시뮬레이션 장치 및 분산 시뮬레이션 시스템
US10379983B2 (en) 2013-06-28 2019-08-13 Samsung Electronics Co., Ltd. Simulation device and distribution simulation system
KR102528581B1 (ko) * 2021-12-21 2023-05-04 주식회사 야타브엔터 적응형 동시성 제어가 구현 가능한 확장 현실 서버
CN115049356A (zh) * 2022-05-23 2022-09-13 中国人民解放军火箭军工程大学 一种基于对象所有权动态分配与时效限制的协同操作并发冲突控制方法
CN115049356B (zh) * 2022-05-23 2023-09-29 中国人民解放军火箭军工程大学 一种基于对象所有权动态分配与时效限制的协同操作并发冲突控制方法

Also Published As

Publication number Publication date
KR101280805B1 (ko) 2013-07-05

Similar Documents

Publication Publication Date Title
Du et al. Zero latency: Real-time synchronization of BIM data in virtual reality for collaborative decision-making
US11556224B1 (en) System and method for cooperative sharing of resources of an environment
Fernández-Macías Automation, digitalisation and platforms: Implications for work and employment
US10671773B2 (en) Automatic partitioning of a 3D scene into a plurality of zones processed by a computing resource
US5107443A (en) Private regions within a shared workspace
US10261985B2 (en) Output rendering in dynamic redefining application
Abdelmaguid A neighborhood search function for flexible job shop scheduling with separable sequence-dependent setup times
US9785484B2 (en) Distributed application interfacing across different hardware
Kuo et al. A framework of information visualization for multi-system construction
WO2017004293A1 (en) Recording of inter-application data flow
Red et al. ν-cax: A research agenda for collaborative computer-aided applications
Deng et al. Research on Artificial Intelligence Interaction in Computer‐Aided Arts and Crafts
KR101280805B1 (ko) 태스크 기반의 동시성 제어 장치 및 방법
Poinet Enhancing Collaborative Practices in Architecture, Engineering and Construction through Multi‑Scalar Modelling Methodologies
Maher et al. Designworld: an augmented 3D virtual world for multidisciplinary, collaborative design
Guo et al. Hybrid method to solve HP model on 3D lattice and to probe protein stability upon amino acid mutations
Oh et al. Scheduling of build and post processes for decomposed parts in additive manufacturing
Coppens et al. Towards collaborative immersive environments for parametric modelling
Red et al. Architectural limitations in multi-user computer-aided engineering applications
Zhen et al. A real-time simulation grid for collaborative virtual assembly of complex products
Lee et al. Supporting fine-grained concurrent tasks and personal workspaces for a hybrid concurrency control mechanism in a networked virtual environment
Bustos et al. : A Proposal for a Low-Latency, Distributed Working Memory for CORTEX
Heller et al. A management system for dynamic and interorganizational design processes in chemical engineering
Trauth et al. MBSE Culture Configuration and Integration At Sandia National Laboratories.
Jesus et al. Towards interactive procedural modelling of buildings

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160627

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170612

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180604

Year of fee payment: 6