KR20220049498A - 상태 기계 처리, 상태 처리 방법, 장치, 전자 설비 및 저장 매체 - Google Patents

상태 기계 처리, 상태 처리 방법, 장치, 전자 설비 및 저장 매체 Download PDF

Info

Publication number
KR20220049498A
KR20220049498A KR1020220041864A KR20220041864A KR20220049498A KR 20220049498 A KR20220049498 A KR 20220049498A KR 1020220041864 A KR1020220041864 A KR 1020220041864A KR 20220041864 A KR20220041864 A KR 20220041864A KR 20220049498 A KR20220049498 A KR 20220049498A
Authority
KR
South Korea
Prior art keywords
state
state machine
sub
machine
individual
Prior art date
Application number
KR1020220041864A
Other languages
English (en)
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 아폴로 인텔리전트 커넥티비티 (베이징) 테크놀로지 씨오., 엘티디.
Publication of KR20220049498A publication Critical patent/KR20220049498A/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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4498Finite state machines
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result writeback, i.e. updating the architectural state or memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Selective Calling Equipment (AREA)
  • Stored Programmes (AREA)

Abstract

본 개시는 상태 기계 처리, 상태 처리 방법, 장치, 전자 설비 및 저장 매체를 제공하고, 컴퓨터 기술, 차량 네트워크 등 인공지능 분야에 관한 것이다. 해당 방법은, 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는 단계; 각 상기 개별 상태에 대해 분류하여, 적어도 하나의 국부 상태 집합을 획득하는 단계; 각 상기 국부 상태 집합에 대해 서브 상태 기계를 구축하는 단계-여기서, 각 상기 서브 상태 기계는 하나의 상기 국부 상태 집합에서의 개별 상태를 관리함-; 각 상기 서브 상태 기계 및 상기 글로벌 상태에 따라 계층적 유한 상태 기계를 구축하는 단계를 포함한다. 본 개시의 실시예는 상태 기계 및 각 상태의 복잡성을 저감하고, 상태 기계의 개발 및 유지보수 비용을 감소하며, 상태 기계가 상태에 대한 관리 및 제어의 유연성을 향상시킨다.

Description

상태 기계 처리, 상태 처리 방법, 장치, 전자 설비 및 저장 매체{STATE MACHINE PROCESSING METHOD AND DEVICE, STATE PROCESSING METHOD AND DEVICE, ELECTRONIC EQUIPMENT AND STORAGE MEDIUM}
본 개시는 컴퓨터 기술, 차량 네트워크 등 인공지능 분야에 관한 것이다.
상태 기계는 컴퓨터 분야에서 매우 널리 응용되고, 많은 시스템이 상태 기계를 사용한다. 상태 기계는 한 그룹의 노드(상태) 및 한 그룹의 대응하는 전달 함수로 조성되고, 이는 복수의 상태 및 상태 사이의 천이를 정의하며, 정의된 복수의 상태에는, 적어도 하나의 초기 상태 및 적어도 하나의 최종 상태가 존재하고, 상태 기계는 최초 상태부터 실행되기 시작하며, 최종 상태로 천이될 때, 상태 기계는 실행을 정지한다. 트리거 이벤트를 수신할 때, 상태 기계는 각각의 상태 파싱 모듈을 사용하여 그의 현재 상태를 파싱하고, 상태 기계는 각각의 제어 모듈을 사용하여 수신된 트리거 이벤트 및 현재 상태에 따라, 대응하는 상태 노드 간의 점핑을 제어하여, 상태 기계가 다음 상태로 점핑하는 것을 실현한다. 이로부터 알다시피, 상이한 상태에 대해 설계가 합리적인 상태 기계를 정의하는 것은 상태의 관리 성능에 대해 매우 중요하다.
본 개시의 실시예는 상태 기계 처리, 상태 처리 방법, 장치, 전자 설비 및 저장 매체를 제공하여, 상태 기계 및 각 상태의 복잡성을 감소할 수 있고, 상태 기계의 개발 및 유지보수 비용을 감소하며, 상태 기계가 상태에 대한 관리 및 제어의 유연성을 향상시킨다.
제1 측면으로, 본 개시의 실시예는 상태 기계 처리 방법을 제공하고, 해당 방법은,
상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는 단계;
각 상기 개별 상태에 대해 분류하여, 적어도 하나의 국부 상태 집합을 획득하는 단계;
각 상기 국부 상태 집합에 대해 서브 상태 기계를 구축하는 단계-여기서, 각 상기 서브 상태 기계는 하나의 상기 국부 상태 집합에서의 개별 상태를 관리함-;
각 상기 서브 상태 기계 및 상기 글로벌 상태에 따라 계층적 유한 상태 기계를 구축하는 단계를 포함한다.
제2 측면으로, 본 개시의 실시예는 상태 처리 방법을 제공하고, 해당 방법은,
상태 처리 대상의 상태 트리거 이벤트를 결정하는 단계;
상기 상태 트리거 이벤트 및 상기 상태 처리 대상의 계층적 유한 상태 기계에 따라 상기 상태 트리거 이벤트에 대해 응답하는 단계-여기서, 상기 계층적 유한 상태 기계는 제1 측면에 따른 상태 기계 처리 방법을 통해 구축됨-;
상기 상태 트리거 이벤트의 응답 결과에 따라 현재 업데이트된 상태를 결정하는 단계를 포함한다.
제3 측면으로, 본 개시의 실시예는 상태 기계 처리 장치를 제공하고, 해당 장치는,
상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는데 사용되는 상태 결정 모듈;
각 상기 개별 상태에 대해 분류하여, 적어도 하나의 국부 상태 집합을 획득하는데 사용되는 개별 상태 분류 모듈;
각 상기 국부 상태 집합에 대해 서브 상태 기계를 구축하는데 사용되는 서브 상태 기계 구축 모듈-여기서, 각 상기 서브 상태 기계는 하나의 상기 국부 상태 집합에서의 개별 상태를 관리함-;
각 상기 서브 상태 기계 및 상기 글로벌 상태에 따라 계층적 유한 상태 기계를 구축하는데 사용되는 계층적 유한 상태 기계 구축 모듈을 포함한다.
제4 측면으로, 본 개시의 실시예는 상태 처리 장치를 제공하고, 해당 장치는,
상태 처리 대상의 상태 트리거 이벤트를 결정하는데 사용되는 상태 트리거 이벤트 결정 모듈;
상기 상태 트리거 이벤트 및 상기 상태 처리 대상의 계층적 유한 상태 기계에 따라 상기 상태 트리거 이벤트에 대해 응답하는데 사용되는 상태 트리거 이벤트 응답 모듈-여기서, 상기 계층적 유한 상태 기계는 어느 한 실시예에 따른 상태 기계 처리 방법을 통해 구축됨-;
상기 상태 트리거 이벤트의 응답 결과에 따라 현재 업데이트된 상태를 결정하는데 사용되는 현재 업데이트된 상태 결정 모듈을 포함한다.
제5 측면으로, 본 개시의 실시예는 전자 설비를 제공하고, 해당 전자 설비는,
적어도 하나의 프로세서; 및
상기 적어도 하나의 프로세서와 통신적으로 연결되는 메모리를 포함하되, 여기서,
상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되고, 상기 명령은 상기 적어도 하나의 프로세서에 의해 실행되어, 상기 적어도 하나의 프로세서가 제1 측면의 실시예에 의해 제공된 상태 기계 처리 방법 또는 제2 측면의 실시예에 의해 제공된 상태 처리 방법을 실행하도록 한다.
제6 측면으로, 본 개시의 실시예는 컴퓨터 명령을 저장하는 비일시적 컴퓨터 판독가능 저장매체를 더 제공하고, 상기 컴퓨터 명령은 상기 컴퓨터가 제1 측면의 실시예에 의해 제공된 상태 기계 처리 방법 또는 제2 측면의 실시예에 의해 제공된 상태 처리 방법을 실행하도록 하는데 사용된다.
제7 측면으로, 본 개시의 실시예는 컴퓨터 프로그램 제품을 더 제공하고, 해당 컴퓨터 프로그램 제품은 컴퓨터 프로그램을 포함하며, 상기 컴퓨터 프로그램은 프로세서에 의해 실행될 때 제1 측면의 실시예에 의해 제공된 상태 기계 처리 방법 또는 제2 측면의 실시예에 의해 제공된 상태 처리 방법을 구현한다.
본 개시의 실시예는 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는 것을 통해, 각 개별 상태를 분류하여 적어도 하나의 국부 상태 집합을 획득하고, 각 국부 상태 집합에 대해 국부 상태 집합에서의 개별 상태를 관리할 수 있는 서브 상태 기계를 구축하여, 각 서브 상태 기계 및 글로벌 상태에 따라 계층적 유한 상태 기계를 구축한다. 계층적 유한 상태 기계가 구축 완료된 후, 상태 처리 대상의 상태 트리거 이벤트를 결정할 때, 상태 트리거 이벤트 및 상태 처리 대상의 계층적 유한 상태 기계에 따라 상태 트리거 이벤트에 대해 응답하고, 상태 트리거 이벤트의 응답 결과에 따라 현재 업데이트된 상태를 결정하여, 기존의 상태 관리 방법에 존재하는 상태 기계 및 각 상태의 복잡성이 높고, 상태 기계의 개발 및 유지보수 비용이 높으며, 상태에 대한 관리 및 제어 유연성이 떨어지는 등 문제를 해결하며, 따라서 상태 기계 및 각 상태의 복잡성을 감소하고, 상태 기계의 개발 및 유지보수 비용을 감소하며, 상태 기계가 상태에 대한 관리 및 제어 유연성을 향상시킨다.
본 문에서 설명된 내용은 본 개시의 실시예의 핵심적인 특징 또는 중요한 특징을 식별하기 위한 것이 아니며, 본 개시의 범위를 한정하려는 의도가 아님을 이해하여야 한다. 본 개시의 기타 특징은 하기 명세서를 통해 쉽게 이해될 수 있다.
도면은 본 방안을 더 잘 이해하기 위함이며, 본 개시를 한정하지 않는다. 여기서,
도 1은 종래 기술에서 블루투스 전화의 유한 상태 기계가 일부 상태를 관리하는 효과 개략도이다.
도 2는 본 개시의 실시예에 의해 제공된 상태 기계 처리 방법의 흐름도이다.
도 3은 본 개시의 실시예에 의해 제공된 상태 기계 처리 방법의 흐름도이다.
도 4는 본 개시의 실시예에 의해 제공된 블루투스 전화 설비의 계층적 유한 상태 기계의 구조 개략도이다.
도 5는 본 개시의 실시예에 의해 제공된 상태 처리 방법의 흐름도이다.
도 6은 본 개시의 실시예에 의해 제공된 상태 기계 처리 방법의 흐름도이다.
도 7은 본 개시의 실시예에 의해 제공된 상태 기계 처리 장치의 구조도이다.
도 8은 본 개시의 실시예에 의해 제공된 상태 기계 처리 장치의 구조도이다.
도 9는 본 개시의 실시예의 상태 기계 처리 방법 또는 상태 처리 방법을 실현하기 위한 전자 설비의 구조 개략도이다.
이하 도면을 결합하여 본 개시의 예시적인 실시예를 설명하도록 한다. 여기서 본 개시의 실시예를 포함하는 각종 상세한 설명은 이해를 돕기 위한 것이며, 이들을 단지 예시적인 것으로 간주하여야 한다. 따라서, 본 분야의 당업자는 본 개시의 범위 및 요지를 벗어나지 않고 여기서 설명된 실시예에 대하여 다양한 변경 및 수정이 가능함을 이해할 것이다. 마찬가지로, 명확하고 간결하게 하기 위해, 이하의 설명에서는 공지된 기능 및 구조에 대한 설명을 생략하도록 한다.
종래 기술에서, 상이한 상태 정의에 대해, 상이한 상태 기계 제어 방법을 각각 설계해야 하고, 모든 상태 제어는 기본적으로 하나의 전체적인 크고 완전한 상태 기계를 사용하여 관리하므로, 최종적으로 상태 기계에 의해 표시되는 상태 변화는 매우 복잡하다. 이러한 상태 기계의 처리 방식은 다음과 같은 하나의 명백한 결함이 존재한다. 글로벌 영향 이벤트(모든 상태에 영향을 미칠 수 있는 이벤트)가 트리거링될 때, 현재 상태에서 글로벌 영향 이벤트에 대응하는 상태로 전환하는 재설정 작업을 각각 수행해야 한다. 이로부터 알 수 있듯이, 통일된 상태 기계를 통해 모든 상태를 관리하는 것은 상태 및 상태 기계의 복잡성을 향상시킬 뿐만 아니라, 상태 기계의 관리 및 유지보수 비용을 크게 증가시키며, 상태 기계 로직에 허점이 생길 가능성을 향상시킨다. 그리고, 상태 기계의 정의가 변경되면(예를 들어, 하나의 상태를 추가 또는 감소하는 등), 상태 기계 제어 프로그램 코드의 대량적인 수정이 발생되며, 이는 마찬가지로 상태 기계에 기반한 응용 시스템의 개발 난이도 및 개발 비용을 크게 증가시킨다.
도 1은 종래 기술에서 블루투스 전화의 유한 상태 기계가 일부 상태를 관리하는 효과 개략도이다. 도 1에 도시된 바와 같이, 블루투스 전화 관리 시스템으로 예를 들어 설명하면, 도 1에서의 직사각형 블록은 각각의 상태를 나타내고, 연결선은 상태 사이의 응답 관계 및 구체적인 상태 트리거 이벤트를 표시한다. 종래의 블루투스 전화 관리 시스템은 모두 하나의 전체적인 크고 완전한 상태 기계를 사용하여 모든 상태에 대해 관리하고, 최종적으로 상태 기계에 의해 표시되는 상태 변화는 매우 복잡하며, 예를 들어, 블루투스 전화의 현재 상태가 연락처 동기화 상태인 경우 연락처 다이어링 상태를 동시에 처리할 수 없다. 블루투스 전화의 경우, 블루투스 연결이 해제되는 이벤트는 글로벌 영향 이벤트이다. 블루투스 전화의 모든 상태는 모두 블루투스 연결 해제 이벤트를 수신할 때, 블루투스 미연결 상태로 전환되고 자체의 이전 상태로의 재설정 작업을 수행해야 한다. 도 1에서 알 수 있듯이 종래의 상태 기계의 복잡성이 비교적 높다. 대표적으로, 각 상태에서 모두 "블루투스 연결 해제"인 이벤트를 수신할 수 있으므로, 이는 거의 각 상태가 모두 해당 이벤트를 처리해야 함을 의미한다. 아울러, 대량의 상태가 동일한 이벤트에 의해 검출되고, 예를 들어 "전화 수신 거부", "통화 종료" 등 상태는 모두 "카운트다운 종료" 이벤트에 의해 검출되며; 마찬가지로, 대량의 상태가 동일한 이벤트에 의해 체크인되기 때문에, 예를 들어 "블루투스 미연결" 상태에는 모두 "블루투스 연결 해제"가 체크인 되기 때문에, 도 1에 도시된 바와 같은 상태 기계를 구현함에 있어서도 비교적 높은 코드 중복도(redundancy)가 필요하다. 그러나, 해당 동일한 조작 사이에는, 통일된 처리가 수행되지 않아, 대량의 코드 중복이 존재하며, 상태 기계의 복잡성을 더욱 향상시킨다. 상태 기계가 과도하게 복잡하고 중복되기 때문에, 상태 기계가 상태에 대한 관리 및 조정의 유연성이 떨어지며, 아울러, 상태 기계의 개발 및 유지보수 비용이 향상된다.
하나의 예시에서, 도 2는 본 개시의 실시예에 의해 제공된 상태 기계 처리 방법의 흐름도이고, 본 실시예는 계층적 유한 상태 기계를 구축하여 고효율적으로 상태를 관리하는 경우에 적용될 수 있고, 해당 방법은 상태 기계 처리 장치에 의해 수행될 수 있으며, 해당 장치는 소프트웨어 및/또는 하드웨어의 방식에 의해 실행될 수 있고, 일반적으로 전자 설비에 통합될 수 있다. 대응하게, 도 2에 도시된 바와 같이, 해당 방법은 다음의 단계를 포함한다.
단계(S110), 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태(individual state)를 결정한다.
여기서, 상태 처리 대상은 상태 기계를 사용하여 시스템의 각 상태를 처리하는 대상일 수 있고, 블루투스 기능을 구비한 단말 설비 등과 같은 구체적인 전자 설비일 수 있으며, 다중 레벨의 상태 관리 속성을 구비한 서비스 프로세스 등 가상의 시스템 대상일 수도 있다. 복수의 상태 천이를 구비한 대상이기만 하면 전부 상태 처리 대상이 될 수 있으며, 본 개시의 실시예는 상태 처리 대상의 구체적인 유형에 대해 한정하지 않는다. 글로벌 상태는 글로벌 영향 이벤트에 의해 트리거링된 상태일 수 있고, 글로벌 영향 이벤트는 모든 상태에 영향을 미치는 이벤트일 수 있으며, 예를 들어 블루투스 설비에서의 블루투스 연결 해제 이벤트 등일 수 있으며, 대응하게, 글로벌 상태는 블루투스 미연결 상태일 수 있다. 개별 상태는 비글로벌 영향 이벤트에 의해 트리거링된 상태일 수 있고, 비글로벌 영향 이벤트는 특정 상태에만 영향을 미치는 이벤트일 수 있으며, 예를 들어 블루투스 전화의 통화 중 상태 등일 수 있다. 글로벌 상태 및 개별 상태는 상태 처리 대상의 구체적인 유형에 따라 결정해야 하고, 본 개시의 실시예는 글로벌 상태 및 개별 상태의 구체적인 상태 유형에 대해 한정하지 않는다.
본 개시의 실시예에서, 상태 기계를 구축하기 전, 먼저 상태 처리 대상의 유형 및 기능에 대해 분석하여, 상태 처리 대상의 전부 상태에서 두 가지 상이한 상태 유형, 즉, 글로벌 상태 및 개별 상태를 결정할 수 있다. 글로벌 상태 및 개별 상태에 대응하는 상태 트리거 이벤트 유형이 상이하기 때문에, 각 상태에 대응하는 상태 트리거 이벤트에 따라 전체 상태에 대해 분류하여, 상태 처리 대상의 글로벌 상태 및 개별 상태를 획득할 수 있다.
단계(S120), 각 상기 개별 상태에 대해 분류하여, 적어도 하나의 국부 상태 집합을 획득한다.
여기서, 국부 상태 집합은 적어도 하나의 개별 상태를 포함하는 집합일 수 있다.
대응하게, 상태 처리 대상의 전부 상태에 대해 분류를 완료한 후, 개별 상태 사이의 연관성에 따라 상태 처리 대상의 각 개별 상태에 대해 분석 및 그룹핑 처리를 수행하여, 각각의 개별 상태를 대응하는 국부 상태 집합으로 분할한다. 선택적으로, 상태 처리 대상이 전자 설비인 경우, 각 국부 상태 집합은 설비 중 특정 기능에 대응하는 개별 상태를 포함할 수 있다. 상태 처리 대상이 비즈니스 프로세스인 경우, 각 국부 상태 집합은 비즈니스 프로세스 중 특정 링크에 대응하는 개별 상태를 포함할 수 있다.
예시적으로, 상태 처리 대상이 블루투스 전화인 경우, 발신 전화와 관련된 상태, 예를 들어 통화 중, 호출 중 및 발신 취소 등 개별 상태를 하나의 국부 상태 집합으로 분할할 수 있고, 해당 국부 상태 집합은 발신 전화와 관련된 모든 상태를 포함할 수 있다. 마찬가지로, 수신 통화와 관련된 개별 상태도 하나의 국부 상태 집합으로 분할할 수 있다. 상태 처리 대상이 비즈니스 프로세스인 경우, 프로세스 시작 노드와 관련된 상태, 예를 들어 설비 가동, 구성 초기화 등 개별 상태를 하나의 국부 상태 집합으로 분할할 수 있고, 해당 국부 상태 집합은 프로세스 시작 링크와 관련된 모든 상태를 포함할 수 있다.
단계(S130), 각 상기 국부 상태 집합에 대해 서브 상태 기계를 구축하고, 여기서, 각 상기 서브 상태 기계는 하나의 상기 국부 상태 집합에서의 개별 상태를 관리한다.
여기서, 서브 상태 기계는 국부 상태 집합에서의 모든 개별 상태를 관리하는 상태 기계일 수 있다.
국부 상태 집합을 획득한 후, 각 국부 상태 집합에 대해 대응하는 서브 상태 기계를 각각 구축할 수 있다. 선택적으로, 각 국부 상태 집합은 하나의 서브 상태 기계에 대응될 수 있다. 즉, 각 서브 상태 기계는 특정 국부 상태 집합에서의 개별 상태를 관리하는 것에 집중할 수 있지만, 기타 국부 상태 집합에서의 개별 상태를 관리할 수 없으며, 글로벌 상태 역시 관리할 수 없다.
예시적으로, 상태 처리 대상이 블루투스 전화인 경우, 블루투스 전화의 국부 상태 집합 A가 발신 전화와 관련된 모든 개별 상태를 포함하면, 해당 국부 상태 집합 A에 대해 하나의 서브 상태 기계 A를 구축할 수 있다. 서브 상태 기계 A는 발신 전화와 관련된 모든 개별 상태를 관리하도록 사용된다.
단계(S140), 각 상기 서브 상태 기계 및 상기 글로벌 상태에 따라 계층적 유한 상태 기계를 구축한다.
여기서, 계층적 유한 상태 기계는 서브 상태 기계 및 글로벌 상태에 의해 구축 형성된 상태 기계일 수 있다.
대응하게, 상태 처리 대상의 각 국부 상태 집합에 대해 대응하는 서브 상태 기계를 각각 구축한 후, 모든 글로벌 상태 및 각 서브 상태 기계를 결합하여 하나의 계층적 유한 상태 기계를 구축 형성할 수 있다. 즉, 계층적 유한 상태 기계는 적어도 하나의 서브 상태 기계 및 적어도 하나의 글로벌 상태로 구성될 수 있다. 계층적 유한 상태 기계에서, 탑 레이어(top-layer) 상태 기계를 통해 모든 글로벌 상태 및 서브 상태 기계의 상태에 대해 통일로 관리할 수 있고, 선택적으로, 개별 상태는 대응하는 서브 상태 기계에 의해 관리될 수 있다.
비글로벌 영향 이벤트에 관련된 상태 트리거 이벤트 후, 계층적 유한 상태 기계에서의 각 상태 기계는 정상적인 상태 처리 방식에 따라 처리를 수행할 수 있음을 이해할 수 있다. 예시적으로, 비즈니스 프로세스를 상태 처리 대상으로 예를 들어 설명하면, 특정 비즈니스의 서브 태스크에 의해 송신된 특정 조작 단계가 완료되었다는 메시지를 수신할 때, 특정 조작 단계가 완료되었다는 메시지에 따라, 서브 상태 기계를 통해, 전이될 서브 태스크에 대응하는 개별 상태를 획득할 수 있다. 아울러, 획득된 전이될 서브 태스크에 대응하는 개별 상태에 따라, 서브 상태 기계의 상태를 변경해야 한다. 블루투스 전화 설비를 상태 처리 대상으로 예를 들어 설명하면, 비글로벌 영향 이벤트의 상태 트리거 이벤트를 수신한 후, 상태 트리거 이벤트에 대응하는 타겟 개별 상태를 결정하고, 타겟 개별 상태의 상태 식별자 비트를 클로즈 상태에서 오픈 상태로 전환하여, 해당 타겟 개별 상태가 현재 활성화된 상태임을 표시하고, 아울러, 타겟 개별 상태를 관리하는 서브 상태 기계는 자신의 상태 식별자 비트를 클로즈 상태에서 오픈 상태로 전환하여, 해당 서브 상태 기계가 현재 활성화된 상태임을 표시할 수 있다. 추가로, 글로벌 영향 이벤트의 상태 트리거 이벤트를 수신하면, 탑 레어 상태 기계가 현재 글로벌 상태의 기초상에 해당 상태 트리거 이벤트에 응답하며, 상태가 전이될 타겟 서브 상태 기계를 결정하여, 타겟 서브 상태 기계를 활성화하며, 해당 타겟 서브 상태 기계에 의해 후속의 상태 처리 프로세스가 수행되도록 한다.
또한 설명해야 할 것은, 계층적 유한 상태 기계는 상태를 분류하고 서브 상태 기계로 통합하는 상태 처리 방식을 사용하기 때문에, 각 서브 상태 기계는 상태의 국부적인 처리를 동기적으로 수행할 수 있고, 아울러, 글로벌 상태와 개별 상태 사이에서도 상태의 계층별(hierarchical) 처리를 동기적으로 수행할 수 있다. 예시적으로, 블루투스 전화 설비를 상태 처리 대상으로 예를 들어 설명하면, 현재 상태는 동시에 발신 전화 서브 상태 기계에서의 통화 중인 개별 상태 및 주소록 동기화 서브 상태 기계에서의 주소록 동기화인 개별 상태일 수 있으며, 즉, 통화 중 및 주소록 동기화 두 개의 개별 상태는 병렬로 처리될 수 있다. 마찬가지로, 현재 상태는 또한 동시에 블루투스가 연결된 글로벌 상태 및 주소록 동기화인 개별 상태일 수 있으며, 즉, 블루투스가 연결된 글로벌 상태 및 주소록 동기화인 개별 상태는 병렬로 처리될 수 있다. 이로써, 계층적 유한 상태 기계를 사용하여 상태를 처리함으로써, 상태 전송의 논리 제한을 방지하며, 상태 처리의 유연성을 향상시킬 수 있다.
이로부터 알다시피, 계층적 유한 상태 기계는 상태를 분류하고 서브 상태 기계로 통합하는 방식을 통해, 종래 기술에서 통일된 상태 기계의 집중식 상태 관리 방식을 타파하고, 상태 관리 기능을 계층별로 디커플링 처리하여, 상태에 대한 분산형 및 타겟형 관리를 수행하여, 상태 및 상태 기계의 복잡성 및 중복 정도를 감소하고, 상태 기계의 개발 및 유지보수 비용을 감소한다. 계층적 유한 상태 기계는 서브 상태 기계를 사용하여 개별 상태를 각각 관리할 수 있으므로, 개별 상태는 기타 서브 상태 기계의 영향을 받지 않고, 즉, 관련이 없는 기타 개별 상태의 영향을 받지 않아, 상태 기계가 상태에 대한 관리 및 제어의 유연성을 향상한다.
본 개시의 실시예는 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는 것을 통해, 각 개별 상태를 분류하여 적어도 하나의 국부 상태 집합을 획득하고, 각 국부 상태 집합에 대해 국부 상태 집합에서의 개별 상태를 관리할 수 있는 서브 상태 기계를 구축하여, 각 서브 상태 기계 및 글로벌 상태에 따라 계층적 유한 상태 기계를 구축함으로써, 계층적 유한 상태 기계를 사용하여 상태를 고효율적으로 관리하며, 기존의 상태 관리 방법에 존재하는 상태 기계 및 각 상태의 복잡성이 높고, 상태 기계의 개발 및 유지보수 비용이 높으며, 상태에 대한 관리 및 제어 유연성이 떨어지는 등 문제를 해결하며, 따라서 상태 기계 및 각 상태의 복잡성을 감소하고, 상태 기계의 개발 및 유지보수 비용을 감소하며, 상태 기계가 상태에 대한 관리 및 제어 유연성을 향상시킨다.
하나의 예시에서, 도 3은 본 개시의 실시예에 의해 제공된 상태 기계 처리 방법의 흐름도이고, 본 개시의 실시예는 상기 각 실시예의 기술 방안의 기초상에, 최적화 및 개선을 수행하여, 글로벌 상태 및 개별 상태를 결정하고, 각 개별 상태를 분류하며, 각 국부 상태 집합에 대해 서브 상태 기계 및 계층적 유한 상태 기계를 구축하는 다양한 구체적이고 선택적인 실현 방식을 제공한다.
도 3에 도시된 바와 같은 상태 기계 처리 방법은 다음의 단계를 포함한다.
단계(S210), 상기 상태 처리 대상의 각 상태의 상태 응답 관계 및 상태 트리거 이벤트를 순차적으로 결정한다.
여기서, 상태 응답 관계는 각 상태 사이의 응답 또는 전환하는 관계일 수 있다. 상태 트리거 이벤트는 상태 전환에 영향을 미칠 수 있는 이벤트일 수 있다.
본 개시의 실시예에서, 상태 처리 대상에 대해 글로벌 상태 및 개별 상태를 구분하기 전에, 상태 처리 대상의 각 상태의 상태 응답 관계 및 상태 트리거 이벤트를 순차적으로 결정할 수 있다. 글로벌 상태와 기타 모든 개별 상태 사이에는 모두 대응하는 상태 응답 관계가 존재함을 이해할 수 있다.
예시적으로, 도 1에 도시된 바와 같이, 블루투스 전화 설비로 예를 들어 구체적으로 설명하면, 블루투스 전화가 현재 통화 중인 개별 상태일 때, 블루투스 연결 해제 이벤트를 수신하면, 통화 중인 개별 상태를 블루투스 미연결인 글로벌 상태로 전환해야 한다. 대응하게, 통화 중인 개별 상태와 블루투스 미연결인 글로벌 상태 사이에는 상태 응답 관계를 구비한다. 마찬가지로, 현재 통화 중인 개별 상태일 때, 전화 끊기 이벤트를 수신하면, 통화 중인 개별 상태를 통화 종료인 개별 상태로 전환해야 한다. 대응하게, 통화 중인 개별 상태와 통화 종료인 개별 상태 사이에도 마찬가지로 상태 응답 관계를 구비한다. 이해해야 할 것은, 각각의 상태는 모두 대응하는 상태 트리거 이벤트가 있고, 예를 들면, 통화 중인 상태 트리거 이벤트의 경우 상대방이 전화를 받은 것일 수 있으며, 블루투스 미연결인 상태 트리거 이벤트의 경우 블루투스 연결이 해제된 것 등일 수 있다.
단계(S220), 타겟 상태가 글로벌 상태 응답 관계를 구비하는 것 및/또는 상기 타겟 상태와 타겟 상태 트리거 이벤트 사이에 영향 관계가 존재하는 것을 결정하는 경우, 상기 타겟 상태를 상기 글로벌 상태로 결정한다.
여기서, 글로벌 상태 응답 관계는 자신을 제외한 기타 상태 사이에 모두 상태 영향 관계가 존재하는 것일 수 있다. 타겟 상태 트리거 이벤트는 글로벌 상태를 결정할 수 있는 상태 트리거 이벤트 유형일 수 있고, 예를 들어 글로벌 영향 이벤트일 수 있다.
대응하게, 특정 타겟 상태와 기타 모든 상태 사이에 모두 상태 응답 관계가 존재하는 것이 결정되면, 즉, 해당 타겟 상태가 글로벌 상태 응답 관계를 구비하는 것, 및/또는, 해당 타겟 상태와 타겟 상태 트리거 이벤트 사이에 영향 관계가 존재하는 것이 결정되면, 해당 타겟 상태를 글로벌 상태로 결정할 수 있다.
예시적으로, 도 1에 도시된 바와 같이, 블루투스가 연결된 및 블루투스가 미연결된 두 개의 상태와 기타 모든 상태 사이에는 모두 직접적이나 간접적으로 상태 영향 관계가 존재하고, 즉, 블루투스가 연결된 상태는 글로벌 상태 영향 관계를 구비하며, 블루투스가 연결된 상태를 글로벌 상태로 결정할 수 있다. 이해해야 할 것은, 블루투스 연결 해제 이벤트는 타겟 상태 트리거 이벤트로, 글로벌 영향 작용을 구비할 수 있다. 도 1에 도시된 바와 같이, 블루투스 미연결과 각 상태 사이에는 모두 블루투스 연결 해제의 영향 관계가 존재하기 때문에, 블루투스 연결 해제와 블루투스 미연결 상태 사이의 영향 관계에 따라 블루투스 미연결 상태를 글로벌 상태로 결정할 수도 있다.
단계(S230), 상기 상태 처리 대상에서 상기 글로벌 상태를 제외한 기타 상태를 상기 개별 상태로 결정한다.
대응하게, 글로벌 상태를 결정한 후, 글로벌 상태를 제외한 기타 상태를 개별 상태로 결정할 수 있다. 도 1에 도시된 바와 같이, 블루투스가 연결된 및 블루투스 미연결된 두 개의 상태에 의해 글로벌 상태가 결정되면, 다이어링 확인 중, 호출 중, 전화 수신 거부 등 상태가 모두 개별 상태임을 확인한다.
상기 방안에서, 글로벌 상태 응답 관계 및 타겟 상태 트리거 이벤트에 따라 글로벌 상태의 상태 유형을 신속하게 결정하여, 글로벌 상태 및 개별 상태 분류의 고효율성을 향상시킨다.
단계(S240), 각 상기 개별 상태의 상태 매핑 기능을 결정한다.
여기서, 상태 매핑 기능은 개별 상태에 대응되게 실현되는 기능일 수 있다.
단계(S250), 상기 상태 매핑 기능이 동일한 개별 상태를 각 상태 집합에 추가하여, 각 상기 국부 상태 집합을 획득한다.
구체적으로, 각 개별 상태의 상태 매핑 기능에 따라 각 개별 상태에 대해 분류하여, 대응하는 국부 상태 집합을 획득할 수 있다.
예시적으로, 도 1에 도시된 바와 같이, 블루투스 전화의 경우, 다이어링 확인 중, 호출 중, 통화 중 및 통화 종료 상태에 대응하는 상태 매핑 기능이 모두 발신 전화 기능이며, 따라서, 다이어링 확인 중, 호출 중, 통화 중 및 통화 종료 등 개별 상태를 상태 집합에 추가하여, 발신 전화 기능에 대응하는 국부 상태 집합을 획득할 수 있다. 마찬가지로, 수신 벨 울림, 통화 중, 전화 수신 거부, 통화 종료 상태에 대응하는 상태 매핑 기능은 모두 수신 전화 기능이며, 따라서, 수신 벨 울림, 통화 중, 전화 수신 거부, 통화 종료 등 개별 상태를 상태 집합에 추가하여, 수신 전화 기능에 대응하는 다른 하나의 국부 상태 집합을 획득할 수 있다. 마찬가지로, 주소록 동기화 중, 주소록이 빔(empty), 주소록 동기화 실패 및 주소록 동기화 성공 상태에 대응하는 상태 매핑 기능은 모두 주소록 동기화 기능이며, 따라서, 주소록 동기화 중, 주소록이 빔, 주소록 동기화 실패 및 주소록 동기화 성공 등 개별 상태를 상태 집합에 추가하여, 주소록 동기화 기능에 대응하는 다른 하나의 국부 상태 집합을 획득할 수 있다.
상기 기술 방안에서, 각 개별 상태의 상태 매핑 기능에 따라 국부 상태 집합을 구분하는 것을 통해, 상태 관리 기능의 디커플링을 구현할 수 있다.
단계(S260), 각 상기 국부 상태 집합에 대응하는 서브 상태 기계 식별자를 결정한다.
여기서, 서브 상태 기계 식별자는 서브 상태 기계를 유일하게 식별하는데 사용될 수 있다.
단계(S270), 각 상기 서브 상태 기계 식별자에 따라 각 상기 국부 상태 집합에서의 개별 상태에 대해 매핑 관계를 수립한다.
대응하게, 각 국부 상태 집합을 획득한 후, 국부 상태 집합의 개수에 따라 각 국부 상태 집합에 대응하는 서브 상태 기계 식별자를 결정하고, 각 서브 상태 기계 식별자에 따라 각 국부 상태 집합에서의 개별 상태에 대해 매핑 관계를 수립하여, 복수의 서브 상태 기계를 구축할 수 있다.
상기 예시로 계속하여 설명하면, 블루투스 전화는 세 개의 국부 상태 집합, 즉, 발신 전화 기능에 대응하는 국부 상태 집합, 수신 전화 기능에 대응하는 국부 상태 집합 및 주소록 동기화 기능에 대응하는 국부 상태 집합을 포함할 수 있다. 따라서, 블루투스 전화에 대해 발신 전화 서브 상태 기계, 수신 전화 서브 전자 상태 기계 및 주소록 동기화 서브 상태 기계, 세 개의 서브 상태 기계 식별자를 구성할 수 있다. 나아가, 발신 전화 서브 상태 기계 식별자와 발신 전화 기능에 대응하는 국부 상태 집합 사이의 매핑 관계를 수립하여, 발신 전화 서브 상태 기계를 획득하고, 수신 전화 서브 상태 기계 식별자와 수신 전화 기능에 대응하는 국부 상태 집합 사이의 매핑 관계를 수립하여, 수신 전화 서브 상태 기계를 획득하며, 주소록 동기화 서브 상태 기계 식별자와 주소록 동기화 기능에 대응하는 국부 상태 집합 사이의 매핑 관계를 수립하여, 주소록 동기화 서브 상태 기계를 획득할 수 있다.
단계(S280), 각 상기 서브 상태 기계에 포함된 각 상기 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 결정한다.
서브 상태 기계의 관리 기능을 완전하게 하기 위해, 각 국부 상태 집합과 각 서브 상태 기계 식별자 사이에 매핑 관계를 수립한 후, 각 서브 상태 기계에 포함된 각 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 결정하여, 서브 상태 기계의 구축을 완료한다.
예시적으로, 발신 전화 서브 상태 기계로 예를 들어 계속하여 설명하면, 다이어링 확인 중인 개별 상태와 호출 중인 개별 상태 사이에 상태 응답 관계를 설정하고, 아울러, 다이어링 확인 중인 개별 상태에서 호출 중인 개별 상태로 전환되는 상태 트리거 이벤트를 다이어링 확인 이벤트로 설정하며; 호출 중인 개별 상태와 통화 중인 개별 상태 사이에 상태 응답 관계를 설정하고, 아울러, 호출 중인 개별 상태에서 통화 중인 개별 상태로 전환되는 상태 트리거 이벤트를 상대방이 전화를 받은 이벤트로 설정하며; 통화 중인 개별 상태와 통화 종료인 개별 상태 사이에 상태 응답 관계를 설정하고, 아울러, 통화 중인 개별 상태에서 통화 종료인 개별 상태로 전환되는 상태 트리거 이벤트를 전화를 끊은 이벤트로 설정한다.
상기 기술 방안은 분류가 완료된 국부 상태 집합을 사용하여 서브 상태 기계를 구축하는 것을 통해, 서브 상태 기계의 구축 효율과 품질을 향상시키고, 논리 허점 문제가 발생하는 것을 방지할 수 있다.
단계(S290), 각 상기 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트를 결정한다.
단계(S2A0), 각 상기 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트에 따라 상기 계층적 유한 상태 기계를 구축한다.
글로벌 상태와 모든 상태 사이에 대응하는 상태 응답 관계가 모두 존재하는 것을 고려하여, 글로벌 상태에 대해 서브 상태 기계를 단독적으로 구성할 필요가 없고, 탑 레어 상태 기계로 모든 글로벌 상태에 대해 통일로 관리할 수 있다. 여기서, 탑 레어 상태 기계는 계층적 유한 상태 기계에서 글로벌 관리 권한을 가지는 상태 기계일 수 있으며, 따라서, 각 서브 상태 기계의 상태에 대해 관리할 수도 있다. 선택적으로, 탑 레어 상태 기계로 각 글로벌 상태와 각 서브 상태 기계 사이의 상태 응답 관계 및 상태 트리거 이벤트를 결정하여, 글로벌 상태 및 각 서브 상태 기계에 대해 통일된 관리 및 제어를 수행한다. 대응하게, 탑 레어 상태 기계, 글로벌 상태 및 각 서브 상태 기계는 하나의 완료된 계층적 유한 상태 기계를 구성할 수 있다.
예시적으로, 상기 블루투스 전화로 예를 들어 계속하여 설명하면, 상기 예시는 블루투스 전화의 글로벌 상태가 블루투스가 연결됨 및 블루투스가 미연결됨을 포함할 수 있음을 분석한다. 아울러, 블루투스 전화 기능에 따라, 연락처에 다이어링 가능한 상태도 글로벌 상태일 수 있음을 알 수 있다. 따라서, 블루투스 전화의 글로벌 상태는, 블루투스가 연결됨, 블루투스가 미연결됨 및 연락처에 다이어링 가능한 것을 포함할 수 있다. 블루투스 전화의 글로벌 상태 및 각 서브 상태 기계를 결정한 후, 각 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트를 각각 결정할 수 있고, 나아가, 각 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트에 따라 상기 계층적 유한 상태 기계를 구축한다. 예를 들어, 블루투스가 연결됨과 발신 전화 서브 상태 기계 사이에는 상호적인 상태 응답 관계가 존재하고, 현재 상태가 블루투스가 연결된 상태일 때, 번호를 다이어링하는 상태 트리거 이벤트가 발생되면, 블루투스가 연결된 상태에서 발신 전화 서브 상태 기계에서의 특정 개별 상태(다이어링 확인 중-호출 중-통화 중 등)로 전환될 수 있으며, 전자 상태 기계에서 통화 종료가 현재 상태이고, 카운트다운 종료 이벤트가 발생되면, 통화 종료 상태에서 블루투스가 연결된 상태로 리턴 및 전환될 수 있다. 마찬가지로, 기타 글로벌 상태 사이에도 상태 응답 관계 및 대응하는 상태 트리거 이벤트를 각각 결정할 수 있고, 각 글로벌 상태와 각 서브 상태 기계 사이에도 상태 응답 관계 및 대응하는 상태 트리거 이벤트를 각각 결정할 수 있다.
설명해야 할 것은, 각 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트에 따라 계층적 유한 상태 기계를 구축할 때, 각 서브 상태 기계에 대해 각각 상이한 상태 트리거 이벤트에 대한 처리 방식을 결정할 수 있다. 예시적으로, 글로벌 영향 이벤트에 대해, 서브 상태 기계는 일괄적인 처리 모드를 설정할 수 있다. 블루투스 전화로 예를 들어 설명하면, 블루투스 연결 해제 이벤트가 발생할 때, 이전 상태가 발신 전화 서브 상태 기계에서의 통화 중 상태이면, 탑 레어 상태 기계는 발신 전화 서브 상태 기계가 블루투스 연결 해제 이벤트에 대해 응답하도록 지시할 수 있다. 대응하게, 발신 전화 서브 상태 기계는 자신이 관리하는 모든 개별 상태에 대해 상태 재설정 작업을 일괄적 및 통일적으로 수행하여, 상태 처리 방식을 단순화할 수 있다. 아울러, 상태 기계에 대해 개발 또는 유지보수를 수행해야 할 때, 모든 상태를 수정할 필요가 없이, 단지 대응하는 서브 상태 기계를 포지셔닝하여 국부적인 개발 또는 유지보수를 수행하면 되므로, 상태 기계의 개발 및 유지보수 비용을 감소한다.
본 개시의 하나의 선택적인 실시예에서, 상태 기계 처리 방법은, 업데이트된 개별 상태를 결정하는 단계; 상기 업데이트된 개별 상태의 상태 매핑 기능을 결정하는 단계; 상기 업데이트된 개별 상태의 상태 매핑 기능에 따라 업데이트될 서브 상태 기계를 결정하는 단계; 상기 업데이트될 서브 상태 기계에 포함된 각 상기 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 업데이트하는 단계를 더 포함할 수 있다.
여기서, 업데이트된 개별 상태는 업데이트 처리를 해야 하는 개별 상태일 수 있고, 업데이트될 서브 상태 기계는 업데이트 처리를 해야 하는 서브 상태 기계일 수 있다. 선택적으로, 업데이트 처리는 추가, 삭제 또는 수정 등 처리 방식을 포함하지만 이에 제한되지 않는다.
본 개시의 실시예에서, 상태 처리 대상에 업데이트된 개별 상태가 나타날 때, 이미 존재하는 통화 중 상태에 대해 업데이트 해야 하거나, 현재 존재하지 않는 하나의 개별 상태를 새로 추가하야 하면, 해당 업데이트된 개별 상태의 상태 매핑 기능을 결정할 수 있고, 즉 해당 업데이트된 개별 상태에 대응하는 연관 기능을 결정할 수 있으며, 나아가, 업데이트된 개별 상태의 상태 매핑 기능에 따라 업데이트될 서브 상태 기계를 결정하고, 업데이트될 서브 상태 기계에 포함된 각 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 업데이트한다.
예시적으로, 여전히 상기 블루투스 전화로 예를 들어 계속하여 설명한다. 현재 블루투스 전화에 다이어링 취소 이벤트 응답 상태가 존재하지 않는 것을 발견하면, 다이어링 취소를 업데이트된 개별 상태로 결정할 수 있다. 이해해야 할 것은, 다이어링 취소는 발신 전화 기능에 속하고, 따라서, 다이어링 취소의 업데이트된 개별 상태를 발신 전화 서브 상태 기계에 추가하며, 아울러, 발신 전화 서브 상태 기계를 업데이트될 서브 상태 기계로 결정하여, 발신 전화 서브 상태 기계에 포함된 모든 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 업데이트할 수 있다. 마찬가지로, 업데이트해야 하는 글로벌 상태가 존재하면, 업데이트될 글로벌 상태를 탑 레어 상태 기계에 추가하여, 탑 레어 상태 기계에 포함된 모든 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 업데이트한다.
상기 기술 방안에서, 서브 상태 기계를 업데이트하는 것을 통해, 실제 수요에 따라 각 서브 상태 기계의 관리 및 제어 기능을 지속으로 완전화하여, 계층적 유한 상태 기계가 상태에 대한 관리 및 제어 능력을 향상시킨다.
도 4는 본 개시의 실시예에 의해 제공된 블루투스 전화 설비의 계층적 유한 상태 기계의 구조 개략도이다. 본 개시의 하나의 선택적인 실시예에서, 도 4에 도시된 바와 같이, 상태 처리 대상은 차량 네트워크 기술에서의 차량 블루투스 전화 설비 등과 같은 블루투스 전화 설비를 포함할 수 있고; 상기 글로벌 상태는 블루투스가 연결됨, 블루투스가 미연결됨 및 연락처에 다이어링 가능한 것을 포함할 수 있으며; 상기 서브 상태 기계는 발신 전화 서브 상태 기계, 수신 전화 서브 상태 기계 및 주소록 동기화 서브 상태 기계를 포함할 수 있다.
도 4에 도시된 바와 같이, 발신 전화 서브 상태 기계는 블루투스 전화 설비의 모든 발신 전화 기능에 관련된 개별 상태를 관리할 수 있고, 수신 전화 서브 상태 기계는 블루투스 전화 설비의 모든 수신 전화 기능에 관련된 개별 상태를 관리할 수 있으며, 주소록 동기화 서브 상태 기계는 블루투스 전화 설비의 모든 주소록 동기화 기능에 관련된 개별 상태를 관리할 수 있다. 각 서브 상태 기계와 글로벌 상태 사이에는 구체적인 상태 트리거 이벤트에 따라 대응하는 연결 관계를 구축하여, 각 글로벌 상태와 공동으로 계층적 유한 상태 기계를 구축할 수 있다.
이러한 설정의 장점은, 서브 상태 기계를 추가하는 방식을 통해 상태를 분류하여, 동일한 서브 상태 기계 내의 상태 개수를 감소할 수 있고, 아울러, 상이한 서브 상태 기계 사이의 상태 변화를 규범화한다. 예를 들어, 현재 발신 전화 서브 상태 기계에서의 다이어링 확인 중인 개별 상태일 때, 블루투스 연결 해제 이벤트가 트리거링되면, 발신 전화 서브 상태 기계 내의 다이어링 확인 중인 개별 상태가 재설정 조작을 하도록 통지할 필요가 없이, 발신 전화 서브 상태 기계가 외층에서 즉시 모든 개별 상태에 대해 일괄된 재설정 처리를 수행하여, 상태 관리의 복잡성을 저감한다. 아울러, 서브 상태 기계에서의 모든 상태와 처리해야 하는 상규적인 이벤트(예를 들어, "블루투스 연결 해제")를 통일로 처리하여, 대량의 반복적으로 조작되는 논리를 통일함으로써, 상태 기계의 중복 코드량을 감소할 수 있을 뿐만 아니라, 서브 상태 기계에서의 모든 상태의 복잡성을 추가로 감소할 수도 있다.
상기 기술 방안은, 상태의 상태 응답 관계 및 상태 트리거 이벤트를 사용하여 상태에 대해 분류하는 것을 통해, 글로벌 상태 및 개별 상태를 결정하여, 각 개별 상태에 대해 분류하여 적어도 하나의 국부 상태 집합을 획득하고, 각 국부 상태 집합에 대해 국부 상태 집합에서의 개별 상태를 관리할 수 있는 서브 상태 기계를 구축하여, 각 서브 상태 기계 및 글로벌 상태에 따라 계층적 유한 상태 기계를 구축함으로써, 계층적 유한 상태 기계를 이용하여 상태를 고효율적으로 관리하며, 기존의 상태 관리 방법에 존재하는 상태 기계 및 각 상태의 복잡성이 높고, 상태 기계 개발 및 유지보수 비용이 높으며, 상태의 관리 및 제어 유연성이 떨어지는 등 문제를 해결하며, 이로써, 상태 기계 및 각 상태의 복잡성을 저감하고, 상태 기계의 개발 및 유지보수 비용을 감소하며, 상태 기계가 상태를 관리 및 제어하는 유연성을 향상시킨다.
하나의 예시에서, 도 5는 본 개시의 실시예에 의해 제공된 상태 처리 방법의 흐름도이고, 본 실시예는 계층적 유한 상태 기계를 사용하여 상태를 고효율적으로 관리하는 경우에 적용될 수 있고, 해당 방법은 상태 처리 장치에 의해 수행될 수 있으며, 해당 장치는 소프트웨어 및/또는 하드웨어의 방식에 의해 구현될 수 있고, 일반적으로 전자 설비에 통합될 수 있다. 대응하게, 도 5에 도시된 바와 같이, 해당 방법은 다음의 단계를 포함한다.
단계(S310), 상태 처리 대상의 상태 트리거 이벤트를 결정한다.
이해해야 할 것은, 상태 처리 대상은 상태 트리거 이벤트를 수신할 때만, 내부 상태의 전환 처리를 유발한다. 따라서, 상태 처리 대상은 계층적 유한 상태 기계를 사용하여 상태를 처리할 때, 상태 트리거 이벤트를 먼저 결정해야 한다.
단계(S320), 상기 상태 트리거 이벤트 및 상기 상태 처리 대상의 계층적 유한 상태 기계에 따라 상기 상태 트리거 이벤트에 대해 응답한다.
여기서, 상기 계층적 유한 상태 기계는 상기 임의의 실시예에 따른 상태 기계 처리 방법을 통해 구축된다.
단계(S330), 상기 상태 트리거 이벤트의 응답 결과에 따라 현재 업데이트된 상태를 결정한다.
여기서, 현재 업데이트된 상태는 계층적 유한 상태 기계가 상태 트리거 이벤트의 응답 결과에 따라 결정한 업데이트된 상태일 수 있고, 글로벌 상태일 수 있으며, 개별 상태일 수도 있고, 본 개시의 실시예는 이에 대해 한정하지 않는다.
대응하게, 상태 트리거 이벤트를 결정한 후, 상태 트리거 이벤트의 유형에 따라, 상태 처리 대상의 계층적 유한 상태 기계를 사용하여 상태 트리거 이벤트에 대해 응답하여, 응답 결과에 따라 현재 업데이트된 상태를 결정할 수 있다.
예시적으로, 비즈니스 프로세스를 상태 처리 대상으로 예를 들어 설명하면, 특정 비즈니스의 서브 태스크에 의해 송신된 특정 작업 단계가 완료되었다는 메시지를 수신할 때, 특정 작업 단계가 완료되었다는 메시지에 따라, 서브 상태 기계를 통해, 전이될 서브 태스크에 대응하는 개별 상태를 획득할 수 있다. 아울러, 획득된 전이될 서브 태스크에 대응하는 개별 상태에 따라, 서브 상태 기계의 상태를 변경해야 한다. 블루투스 전화 설비를 상태 처리 대상으로 예를 들어 설명하면, 비글로벌 영향 이벤트의 상태 트리거 이벤트를 수신하고, 해당 상태 트리거 이벤트가 성공적으로 응답한 것이 결정되면, 상태 트리거 이벤트에 대응하는 타겟 개별 상태를 결정하고, 타겟 개별 상태의 상태 식별자 비트를 클로즈 상태에서 오픈 상태로 전환하여, 해당 타겟 개별 상태가 현재 활성화된 상태임을 표시하고, 아울러, 타겟 개별 상태를 관리하는 서브 상태 기계는 자신의 상태 식별자 비트를 클로즈 상태에서 오픈 상태로 전환하여, 해당 서브 상태 기계가 현재 활성화된 상태임을 표시한다. 추가로, 글로벌 영향 이벤트의 상태 트리거 이벤트를 수신하면, 탑 레어 상태 기계가 현재 글로벌 상태의 기초상에 해당 상태 트리거 이벤트에 응답하며, 상태가 전송될 타겟 서브 상태 기계를 결정하여, 타겟 서브 상태 기계를 활성화하며, 해당 타겟 서브 상태 기계에 의해 후속의 상태 처리 프로세스가 수행되도록 한다.
본 개시의 실시예는 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는 것을 통해, 각 개별 상태를 분류하여 적어도 하나의 국부 상태 집합을 획득하고, 각 국부 상태 집합에 대해 국부 상태 집합에서의 개별 상태를 관리할 수 있는 서브 상태 기계를 구축하여, 각 서브 상태 기계 및 글로벌 상태에 따라 계층적 유한 상태 기계를 구축한다. 계층적 유한 상태 기계가 구축 완료된 후, 상태 처리 대상의 상태 트리거 이벤트를 결정할 때, 상태 트리거 이벤트 및 상태 처리 대상의 계층적 유한 상태 기계에 따라 상태 트리거 이벤트에 대해 응답하고, 상태 트리거 이벤트의 응답 결과에 따라 현재 업데이트된 상태를 결정하여, 기존의 상태 관리 방법에 존재하는 상태 기계 및 각 상태의 복잡성이 높고, 상태 기계의 개발 및 유지보수 비용이 높으며, 상태에 대한 관리 및 제어 유연성이 떨어지는 등 문제를 해결하며, 따라서 상태 기계 및 각 상태의 복잡성을 감소하고, 상태 기계의 개발 및 유지보수 비용을 감소하며, 상태 기계가 상태에 대한 관리 및 제어 유연성을 향상시킨다.
하나의 예시에서, 도 6은 본 개시의 실시예에 의해 제공된 상태 기계 처리 방법의 흐름도이고, 본 개시의 실시예는 상기 각 실시예의 기술 방안의 기초상에, 최적화 및 개선을 수행하여, 상기 상태 트리거 이벤트 및 상기 상태 처리 대상의 계층적 유한 상태 기계에 따라 상기 상태 트리거 이벤트에 대해 응답하는 구체적이고 선택적인 실현 방식을 제공한다.
도 6에 도시된 바와 같은 상태 처리 방법은 다음의 단계를 포함한다.
단계(S410), 상태 처리 대상의 상태 트리거 이벤트를 결정한다.
여기서, 상기 상태 트리거 이벤트는 타겟 글로벌 영향 이벤트를 포함한다. 타겟 글로벌 영향 이벤트는 서브 상태 기계가 자신이 포함하는 개별 상태에 대해 일괄적으로 업데이트하도록 지시할 수 있는 글로벌 영향 이벤트일 수 있다.
단계(S420), 현재 활성화 서브 상태 기계를 결정한다.
여기서, 현재 활성화 서브 상태 기계는 현재 활성화 상태인 서브 상태 기계일 수 있다.
단계(S430), 상기 타겟 글로벌 영향 이벤트와 상기 현재 활성화 서브 상태 기계의 상태 응답 관계에 따라 상기 현재 활성화 서브 상태 기계가 상태 업데이트를 수행하도록 지시한다.
타겟 글로벌 영향 이벤트가 서브 상태 기계가 자신이 포함하는 개별 상태에 대해 일괄적으로 업데이트하도록 지시할 수 있기 때문에, 상태 트리거 이벤트의 유형이 타겟 글로벌 영향 이벤트임을 결정하면, 타겟 글로벌 영향 이벤트와 현재 활성화 서브 상태 기계 사이의 상태 응답 관계를 결정할 수 있고, 해당 상태 응답 관계에 따라 현재 활성 서브 상태 기계가 상태 업데이트를 수행하도록 지시한다. 선택적으로, 계층적 유한 상태 기계에서의 탑 레어 상태 기계를 통해 해당 상태 응답 관계에 따라 현재 활성화 서브 상태 기계가 상태 업데이트를 수행하도록 지시할 수 있다.
단계(S440), 상기 현재 활성화 서브 상태 기계를 통해 상기 현재 활성화 서브 상태 기계에 포함된 각 개별 상태를 일괄적으로 업데이트한다.
대응하게, 현재 활성화 서브 상태 기계는 상태 업데이트 지시 메시지를 수신한 후, 자신이 포함하는 모든 개별 상태에 대해 일괄적으로 업데이트를 수행할 수 있다.
블루투스 전화로 예를 들어 설명하면, 발생한 타겟 글로벌 영향 이벤트가 블루투스 연결 해제 이벤트일 때, 현재 활성화 서브 상태 기계가 발신 전화 서브 상태 기계이고, 발신 전화 서브 상태 기계 중 현재 활성화된 개별 상태가 통화 중 상태이면, 탑 레어 상태 기계는 발신 전화 서브 상태 기계가 블루투스 연결 해제 이벤트에 대해 응답하도록 지시할 수 있다. 대응하게, 발신 전화 서브 상태 기계는 자신이 관리하는 모든 개별 상태에 대해 상태 재설정 작업을 일괄적 및 통일적으로 수행할 수 있으며, 예를 들어, 모든 개별 상태의 상태 식별자 비트를 전부 클로즈 상태로 전환하도록 일괄적으로 제어하여, 상태 처리 방식을 단순화하고, 상태 처리 효율 및 정확도를 향상시킨다.
단계(S450), 계층적 유한 상태 기계의 현재 업데이트된 상태를 결정한다.
상기 기술 방안에서, 타겟 글로벌 영향 이벤트 및 상태 처리 대상의 계층적 유한 상태 기계에 따라 타겟 글로벌 영향 이벤트에 대해 응답하는 것을 통해, 서브 상태 기계를 통해 개별 상태에 대한 일괄적인 업데이트를 실현하여, 상태 처리 방식을 단순화하고, 상태 처리 효율 및 정확도를 향상시킬 수 있다.
설명해야 할 것은, 상기 각 실시예에서 각 기술 특징 사이의 임의의 배열 및 조합 또한 본 개시의 보호 범위에 속한다.
하나의 예시에서, 도 7은 본 개시의 실시예에 의해 제공된 상태 기계 처리 장치의 구조도이고, 본 개시의 실시예는 계층적 유한 상태 기계를 구축하여 상태를 고효율적으로 관리하는 경우에 적용될 수 있으며, 해당 장치는 소프트웨어 및/또는 하드웨어를 통해 실현되고, 전자 설비에 구체적으로 구성된다.
도 7에 도시된 바와 같은 상태 기계 처리 장치(500)는, 상태 결정 모듈(510), 개별 상태 분류 모듈(520), 서브 상태 기계 구축 모듈(530) 및 계층적 유한 상태 기계 구축 모듈(540)을 포함한다. 여기서,
상태 결정 모듈(510)은, 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는데 사용되고;
개별 상태 분류 모듈(520)은, 각 상기 개별 상태에 대해 분류하여, 적어도 하나의 국부 상태 집합을 획득하는데 사용되며;
서브 상태 기계 구축 모듈(530)은, 각 상기 국부 상태 집합에 대해 서브 상태 기계를 구축하는데 사용되고, 여기서, 각 상기 서브 상태 기계는 하나의 상기 국부 상태 집합에서의 개별 상태를 관리하며;
계층적 유한 상태 기계 구축 모듈(540)은, 각 상기 서브 상태 기계 및 상기 글로벌 상태에 따라 계층적 유한 상태 기계를 구축하는데 사용된다.
본 개시의 실시예는 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는 것을 통해, 각 개별 상태를 분류하여 적어도 하나의 국부 상태 집합을 획득하고, 각 국부 상태 집합에 대해 국부 상태 집합에서의 개별 상태를 관리할 수 있는 서브 상태 기계를 구축하여, 각 서브 상태 기계 및 글로벌 상태에 따라 계층적 유한 상태 기계를 구축함으로써, 계층적 유한 상태 기계를 사용하여 상태를 고효율적으로 관리하며, 기존의 상태 관리 방법에 존재하는 상태 기계 및 각 상태의 복잡성이 높고, 상태 기계의 개발 및 유지보수 비용이 높으며, 상태에 대한 관리 및 제어 유연성이 떨어지는 등 문제를 해결하며, 따라서 상태 기계 및 각 상태의 복잡성을 감소하고, 상태 기계의 개발 및 유지보수 비용을 감소하며, 상태 기계가 상태에 대한 관리 및 제어 유연성을 향상시킨다.
선택적으로, 상태 결정 모듈(510)은 구체적으로, 상기 상태 처리 대상의 각 상태의 상태 응답 관계 및 상태 트리거 이벤트를 순차적으로 결정하고; 타겟 상태가 글로벌 상태 응답 관계를 구비하는 것 및/또는 상기 타겟 상태와 타겟 상태 트리거 이벤트 사이에 영향 관계가 존재하는 것이 결정된 경우, 상기 타겟 상태를 상기 글로벌 상태로 결정하며; 상기 상태 처리 대상에서 상기 글로벌 상태를 제외한 기타 상태를 상기 개별 상태로 결정하는데 사용된다.
선택적으로, 개별 상태 분류 모듈(520)은 구체적으로, 각 상기 개별 상태의 상태 매핑 기능을 결정하고; 상기 상태 매핑 기능이 동일한 개별 상태를 각 상태 집합에 추가하여, 각 상기 국부 상태 집합을 획득하는데 사용된다.
선택적으로, 서브 상태 기계 구축 모듈(530)은 구체적으로, 각 상기 국부 상태 집합에 대응하는 서브 상태 기계 식별자를 결정하고; 각 상기 서브 상태 기계 식별자에 따라 각 상기 국부 상태 집합에서의 개별 상태에 대해 매핑 관계를 수립하며; 각 상기 서브 상태 기계에 포함된 각 상기 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 결정하는데 사용된다.
선택적으로, 계층적 유한 상태 기계 구축 모듈(540)은 구체적으로, 각 상기 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트를 결정하고; 각 상기 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트에 따라 상기 계층적 유한 상태 기계를 구축하는데 사용된다.
선택적으로, 상태 기계 처리 장치는, 업데이트된 개별 상태를 결정하는데 사용되는 업데이트된 개별 상태 결정 모듈; 상기 업데이트된 개별 상태의 상태 매핑 기능을 결정하는데 사용되는 상태 매핑 기능 결정 모듈; 상기 업데이트된 개별 상태의 상태 매핑 기능에 따라 업데이트될 서브 상태 기계를 결정하는데 사용되는 업데이트될 서브 상태 기계 결정 모듈; 상기 업데이트될 서브 상태 기계에 포함된 각 상기 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 업데이트하는데 사용되는 관계 이벤트 업데이트 모듈을 더 포함한다.
선택적으로, 상기 상태 처리 대상은 블루투스 전화 설비를 포함하고; 상기 글로벌 상태는 블루투스가 연결됨, 블루투스가 미연결됨 및 연락처에 다이어링 가능한 것을 포함하며; 상기 서브 상태 기계는 발신 전화 서브 상태 기계, 수신 전화 서브 상태 기계 및 주소록 동기화 서브 상태 기계를 포함한다.
상기 상태 기계 처리 장치는 본 개시의 임의의 실시예에 의해 제공된 상태 기계 처리 방법을 실행할 수 있고, 방법을 실행하는데 대응하는 기능 모듈과 유익한 효과를 구비한다. 본 실시예에서 상세하게 설명되지 않은 기술적 세부 사항은, 본 개시의 임의의 실시예에 의해 제공되는 상태 기계 처리 방법을 참조할 수 있다.
위에서 설명된 상태 기계 처리 장치는 본 개시의 실시예에서의 상태 기계 처리 방법을 실행할 수 있는 장치이므로, 본 개시의 실시예에서 설명한 상태 기계 처리 방법을 기반으로, 본 분야의 당업자는 본 실시예의 상태 기계 처리 장치의 구체적인 실시형태 및 그의 다양한 변화 형식을 알 수 있기에, 여기서 해당 상태 기계 처리 장치가 본 개시의 실시예에서의 상태 기계 처리 방법을 어떻게 실행하는지에 대해 더 이상 상세히 설명하지 않는다. 본 분야의 당업자가 본 개시의 실시예에서의 상태 기계 처리 방법을 실시함에 있어서 사용한 장치는 모두 본 개시에서 의도한 보호 범위에 속한다.
하나의 예시에서, 도 8은 본 개시의 실시예에 의해 제공된 상태 기계 처리 장치의 구조도이고, 본 개시의 실시예는 계층적 유한 상태 기계를 사용하여 고효율적으로 상태를 관리하는 경우에 적용되고, 해당 장치는 소프트웨어 및/또는 하드웨어를 통해 실현되며, 전자 설비에 구체적으로 구성한다.
도 8에 도시된 바와 같은 상태 처리 장치(600)는, 상태 트리거 이벤트 결정 모듈(610), 상태 트리거 이벤트 응답 모듈(620) 및 현재 업데이트된 상태 결정 모듈(630)을 포함한다. 여기서,
상태 트리거 이벤트 결정 모듈(610)은, 상태 처리 대상의 상태 트리거 이벤트를 결정하는데 사용되고;
상태 트리거 이벤트 응답 모듈(620)은, 상기 상태 트리거 이벤트 및 상기 상태 처리 대상의 계층적 유한 상태 기계에 따라 상기 상태 트리거 이벤트에 대해 응답하는데 사용되고, 여기서, 상기 계층적 유한 상태 기계는 상기 임의의 실시예에 따른 상태 기계 처리 방법을 통해 구축되며;
현재 업데이트된 상태 결정 모듈(630)은, 상기 상태 트리거 이벤트의 응답 결과에 따라 현재 업데이트된 상태를 결정하는데 사용된다.
본 개시의 실시예는 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는 것을 통해, 각 개별 상태를 분류하여 적어도 하나의 국부 상태 집합을 획득하고, 각 국부 상태 집합에 대해 국부 상태 집합에서의 개별 상태를 관리할 수 있는 서브 상태 기계를 구축하여, 각 서브 상태 기계 및 글로벌 상태에 따라 계층적 유한 상태 기계를 구축한다. 계층적 유한 상태 기계가 구축 완료된 후, 상태 처리 대상의 상태 트리거 이벤트를 결정할 때, 상태 트리거 이벤트 및 상태 처리 대상의 계층적 유한 상태 기계에 따라 상태 트리거 이벤트에 대해 응답하고, 상태 트리거 이벤트의 응답 결과에 따라 현재 업데이트된 상태를 결정하여, 기존의 상태 관리 방법에 존재하는 상태 기계 및 각 상태의 복잡성이 높고, 상태 기계의 개발 및 유지보수 비용이 높으며, 상태에 대한 관리 및 제어 유연성이 떨어지는 등 문제를 해결하며, 따라서 상태 기계 및 각 상태의 복잡성을 감소하고, 상태 기계의 개발 및 유지보수 비용을 감소하며, 상태 기계가 상태에 대한 관리 및 제어 유연성을 향상시킨다.
선택적으로, 상기 상태 트리거 이벤트는 타겟 글로벌 영향 이벤트를 포함하고; 상태 트리거 이벤트 응답 모듈(620)은 구체적으로, 현재 활성화 서브 상태 기계를 결정하고; 상기 타겟 글로벌 영향 이벤트와 상기 현재 활성화 서브 상태 기계의 상태 응답 관계에 따라 상기 현재 활성화 서브 상태 기계가 상태를 업데이트하도록 지시하며; 상기 현재 활성화 서브 상태 기계를 통해 상기 현재 활성화 서브 상태 기계에 포함된 각 개별 상태를 일괄적으로 업데이트하는데 사용된다.
상기 상태 처리 장치는 본 개시의 임의의 실시예에 의해 제공된 상태 처리 방법을 실행할 수 있고, 방법을 실행하는데 대응하는 기능 모듈과 유익한 효과를 구비한다. 본 실시예에서 상세하게 설명되지 않은 기술적 세부 사항은, 본 개시의 임의의 실시예에 의해 제공되는 상태 처리 방법을 참조할 수 있다.
위에서 설명한 상태 처리 장치는 본 개시의 실시예에서의 상태 처리 방법을 실행할 수 있는 장치이므로, 본 개시의 실시예에서 설명된 상태 처리 방법을 기반으로, 본 분야의 당업자는 본 실시예의 상태 처리 장치의 구체적인 실시형태 및 그의 다양한 변화 형식을 알 수 있기에, 여기서 해당 상태 처리 장치가 본 개시의 실시예에서의 상태 처리 방법을 어떻게 실행하는지에 대해 더 이상 상세히 설명하지 않는다. 본 분야의 당업자가 본 개시의 실시예에서의 상태 처리 방법을 실시함에 있어서 사용한 장치는 모두 본 개시에서 의도한 보호 범위에 속한다.
하나의 예시에서, 본 개시는 전자 설비, 판독 가능 저장 매체 및 컴퓨터 프로그램 제품을 더 제공한다.
도 9는 본 개시의 실시예를 실시 가능한 예시적인 전자 설비(700)의 개략적인 블록도를 도시한다. 전자 설비는 다양한 형태의 디지털 컴퓨터를 표시하며, 예를 들어, 랩톱 컴퓨터, 데스크톱 컴퓨터, 워크스테이션, 개인용 정보 단말기(Personal Digital Assistant), 서버, 블레이드 서버, 메인프레임 컴퓨터 및 기타 적절한 컴퓨터를 표시한다. 전자 설비는 또한 다양한 형태의 모바일 장치를 표시할 수 있으며, 예를 들어, 개인용 디지털 처리, 셀 폰, 스마트 폰, 웨어러블 설비 및 기타 유사한 컴퓨팅 장치를 표시할 수 있다. 본문에 서술된 부재, 이들의 연결, 관계, 및 이들의 기능은 단지 예시적인 것일 뿐, 본문에서 설명되는 및/또는 요구되는 본 개시의 실현을 제한하려는 의도가 아니다.
도 9에 도시된 바와 같이, 설비(700)는 컴퓨팅 유닛(701)을 포함하고, 이는 판독 전용 메모리(ROM)(702)에 저장된 컴퓨터 프로그램 또는 저장 유닛(708)으로부터 랜덤 액세스 메모리(RAM)(703)에 로딩되는 컴퓨터 프로그램에 따라, 각종 적절한 동작 및 처리를 수행할 수 있다. RAM(703)에는 설비(700)의 조작에 필요한 다양한 프로그램 및 데이터가 더 저장될 수 있다. 컴퓨팅 유닛(701), ROM(702) 및 RAM(703)은 버스(704)에 의해 서로 연결된다. 입력/출력(I/O) 인터페이스(705)도 버스(704)에 연결된다.
설비(700)에서의 복수의 부품은 I/O 인터페이스(705)에 연결되고, 해당 부품은, 키보드, 마우스 등과 같은 입력 유닛(706); 다양한 유형의 디스플레이, 스피커 등과 같은 출력 유닛(707); 자기디스크, 광디스크 등과 같은 저장 유닛(708), 및 네트워크 카드, 모뎀, 무선통신 트랜시버 등과 같은 통신 유닛(709)을 포함한다. 통신 유닛(709)은 설비(700)가 인터넷과 같은 컴퓨터 네트워크 및/또는 다양한 전기 통신망을 통해 기타 설비와 정보/데이터를 교환하는 것을 허용한다.
컴퓨팅 유닛(701)은 처리 및 컴퓨팅 능력을 구비한 각종 범용 및/또는 전용 처리 어셈블리일 수 있다. 컴퓨팅 유닛(701)의 일부 예시는, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 다양한 전용 인공 지능(AI) 컴퓨팅 칩, 기계 학습 모델 알고리즘을 실행하는 다양한 컴퓨팅 유닛, 디지털 신호 프로세서(DSP), 및 임의의 적절한 프로세서, 컨트롤러, 마이크로 컨트롤러 등을 포함하지만 이에 한정되지 않는다. 컴퓨팅 유닛(701)은 위에서 설명한 각 방법 및 처리를 실행하고, 예를 들어, 상태 기계 처리 방법 또는 상태 처리 방법을 실행한다. 예를 들어, 일부 실시예에서, 상태 기계 처리 방법 또는 상태 처리 방법은 컴퓨터 소프트웨어 프로그램으로 실현될 수 있고, 이는 저장 유닛(708)과 같은 기계 판독 가능 저장 매체에 유형적으로 포함된다. 일부 실시예에서, 컴퓨터 프로그램의 부분 또는 전부는 ROM(702) 및/또는 통신 유닛(709)에 의해 설비(700)에 로딩 및/또는 설치될 수 있다. 컴퓨터 프로그램이 RAM(703)에 로딩되어 컴퓨팅 유닛(701)에 의해 실행할 때, 위에 설명된 상태 기계 처리 방법 또는 상태 처리 방법의 하나 또는 복수의 단계를 실행할 수 있다. 대안적으로, 기타 실시예에서, 컴퓨팅 유닛(701)은 기타 적절한 방식(예를 들어, 펌웨어에 의해)을 통해 상태 기계 처리 방법 또는 상태 처리 방법을 실행하도록 구성될 수 있다.
본 문서에서 상술한 시스템 및 기술의 다양한 실시형태는, 디지털 전자 회로 시스템, 집적 회로 시스템, 필드 프로그램 가능 게이트 어레이(FPGA), 주문형 특정 집적 회로(ASIC), 특정 용도 표준 제품(ASSP), 시스템온칩(SOC), 복합 프로그램 가능 로직 설비(CPLD), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합으로 구현될 수 있다. 이러한 각종 실시형태는, 하나 이상의 컴퓨터 프로그램에서 실시되는 것을 포함할 수 있고, 해당 하나 이상의 컴퓨터 프로그램은 적어도 하나의 프로그램 가능한 프로세서를 포함하는 프로그램 가능한 시스템에서 실행 및/또는 해석(interpretating)될 수 있으며, 해당 프로그램 가능한 프로세서는 전용 또는 범용 프로그램 가능한 프로세서일 수 있고, 저장 시스템, 적어도 하나의 입력 장치 및 적어도 하나의 출력 장치로부터 데이터 및 명령을 수신할 수 있으며, 데이터 및 명령을 상기 저장 시스템, 상기 적어도 하나의 입력 장치 및 상기 적어도 하나의 출력 장치로 전송한다.
본 개시의 방법을 실시하기 위한 프로그램 코드는 하나 이상의 프로그래밍 언어의 임의의 조합을 사용하여 작성될 수 있다. 이러한 프로그램 코드는 범용 컴퓨터, 전용 컴퓨터 또는 기타 프로그램 가능한 데이터 처리 장치의 프로세서 또는 컨트롤러에 제공되어, 프로그램 코드가 프로세서 또는 컨트롤러에 의해 실행될 때, 흐름도 및/또는 블록도에 규정된 기능/조작이 실시될 수 있도록 한다. 프로그램 코드는 전체가 기계에서 실행되거나, 일부가 기계에서 실행되며, 독립적인 소프트웨어 패키지로서 일부가 기계에서 실행되고 일부가 원격 기계에서 실행되거나, 전부가 원격 기계 또는 서버에서 실행될 수 있다.
본 개시의 전문에서, 기계 판독 가능 매체는 유형 매체(tangible medium)일 수 있으며, 이는 명령 실행 시스템, 장치 또는 설비에 의해 사용되거나, 명령 실행 시스템, 장치 또는 설비와 결합하여 사용되는 프로그램을 포함하거나 저장할 수 있다. 기계 판독가능 매체는 기계 판독가능 신호매체 또는 기계 판독가능 저장매체일 수 있다. 기계 판독가능 매체는 전자, 자기, 광학, 전자기, 적외선 또는 반도체 시스템, 장치 또는 설비, 또는 상기 내용의 임의의 적절한 조합을 포함할 수 있으나 이에 한정되지 않는다. 기계 판독가능 저장매체의 보다 구체적인 예시는, 하나 이상의 와이어에 기반한 전기적 연결, 휴대용 컴퓨터 디스크, 하드 디스크, 랜덤 액세스 메모리(RAM), 판독전용 메모리(ROM), 소거 및 프로그램 가능한 판독전용 메모리(EPROM 또는 플래시 메모리), 광섬유, 휴대용 콤팩트 디스크 판독전용 메모리(CD-ROM), 광학 저장 설비, 자기 저장 설비 또는 상기 내용의 임의의 적절한 조합을 포함한다.
사용자와의 상호작용을 제공하기 위해, 컴퓨터에서 여기서 설명된 시스템 및 기술을 실시할 수 있으며, 해당 컴퓨터는 사용자에게 정보를 표시하기 위한 표시장치(예를 들어, CRT(음극선관) 또는 LCD(액정표시장치)모니터), 키보드 및 방향지시 장치(예를 들어, 마우스 또는 트랙볼)를 구비하며, 사용자는 해당 키보드 및 해당 방향지시 장치를 통해 컴퓨터에 입력을 제공할 수 있다. 기타 유형의 장치는 사용자와의 상호 작용을 제공할 수도 있으며, 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 센싱 피드백(예를 들어, 시각 피드백, 청각 피드백 또는 촉각 피드백)일 수 있으며, 임의의 형태(사운드 입력, 음성 입력 또는 촉각 입력)로 사용자로부터의 입력을 수신한다.
여기서 설명된 시스템 및 기술은 백엔드 컴포넌트를 포함하는 컴퓨팅 시스템(예를 들어, 데이터 서버), 또는 미들웨어 컴포넌트를 포함하는 컴퓨팅 시스템(예를 들어, 애플리케이션 서버), 또는 프런트엔드 컴포넌트를 포함하는 컴퓨팅 시스템(예를 들어, 그래픽 사용자 인터페이스 또는 웹브라우저를 구비하는 사용자 컴퓨터, 사용자는 해당 그래픽 사용자 인터페이스 또는 해당 웹브라우저를 통해 여기서 설명된 시스템 및 기술의 실시형태와 상호작용함), 또는 이러한 백엔드 컴포넌트, 미들웨어 컴포넌트, 또는 프런트엔드 컴포넌트를 포함하는 임의의 조합의 컴퓨팅 시스템에서 실시할 수 있다. 임의의 형태 또는 매체의 디지털 데이터 통신(예를 들어, 통신 네트워크)으로 시스템의 컴포넌트를 서로 연결할 수 있다. 통신 네트워크의 예시는 근거리 통신망(LAN), 광역 네트워크(WAN), 블록체인 네트워크 및 인터넷을 포함한다.
컴퓨터 시스템은 클라이언트단 및 서버를 포함할 수 있다. 클라이언트단 및 서버는 일반적으로 서로 멀리 떨어져 있으며, 통상적으로 통신 네트워크를 통해 상호 작용을 수행한다. 클라이언트단과 서버의 관계는 상응되는 컴퓨터에서 실행되고 서로 클라이언트단-서버 관계를 갖는 컴퓨터 프로그램에 의해 발생된다. 서버는 클라우드 컴퓨팅 서버 또는 클라우드 호스트라고도 하는 클라우드 서버일 수 있으며, 클라우드 컴퓨팅 서비스 체계 중의 하나의 호스트 제품으로, 종래의 물리적 호스트와 VPS 서버에 존재하는 관리 난이도가 크고, 트래픽 확장성이 약한 결함을 해결한다.
본 개시의 실시예는 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는 것을 통해, 각 개별 상태를 분류하여 적어도 하나의 국부 상태 집합을 획득하고, 각 국부 상태 집합에 대해 국부 상태 집합에서의 개별 상태를 관리할 수 있는 서브 상태 기계를 구축하여, 각 서브 상태 기계 및 글로벌 상태에 따라 계층적 유한 상태 기계를 구축한다. 계층적 유한 상태 기계가 구축 완료된 후, 상태 처리 대상의 상태 트리거 이벤트를 결정할 때, 상태 트리거 이벤트 및 상태 처리 대상의 계층적 유한 상태 기계에 따라 상태 트리거 이벤트에 대해 응답하고, 상태 트리거 이벤트의 응답 결과에 따라 현재 업데이트된 상태를 결정하여, 기존의 상태 관리 방법에 존재하는 상태 기계 및 각 상태의 복잡성이 높고, 상태 기계의 개발 및 유지보수 비용이 높으며, 상태에 대한 관리 및 제어 유연성이 떨어지는 등 문제를 해결하며, 따라서 상태 기계 및 각 상태의 복잡성을 감소하고, 상태 기계의 개발 및 유지보수 비용을 감소하며, 상태 기계가 상태에 대한 관리 및 제어 유연성을 향상시킨다.
상술한 각종 형태의 프로세스를 사용하여 단계의 순서재배정, 추가 또는 삭제를 수행할 수 있음을 이해해야 한다. 예를 들어, 본 개시에 기재된 각 단계는 병렬로 수행될 수 있거나 순차적으로 수행될 수도 있거나 서로 다른 순서로 수행될 수도 있으며, 본 개시에서 개시한 기술방안이 희망하는 결과를 달성하기만 하면 되기 때문에, 본 문에서는 이에 대해 한정하지 않는다.
상기 구체적 실시형태는, 본 개시의 보호 범위를 한정하지 않는다. 본 분야의 당업자는 설계 요구 및 기타 요소에 따라 다양한 수정, 조합, 서브 조합 및 대체를 수행할 수 있음을 알아야 한다. 본 개시의 사상과 원칙 내에서 수행하는 수정, 등가적 대체 및 개선 등은 모두 본 개시의 보호 범위에 포함되어야 한다.

Claims (21)

  1. 상태 기계 처리 방법으로서,
    상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는 단계;
    각 상기 개별 상태에 대해 분류하여, 적어도 하나의 국부 상태 집합을 획득하는 단계;
    각 상기 국부 상태 집합에 대해 서브 상태 기계를 구축하는 단계로서, 각 상기 서브 상태 기계는 하나의 상기 국부 상태 집합에서의 개별 상태를 관리하는, 상기 서브 상태 기계를 구축하는 단계;
    각 상기 서브 상태 기계 및 상기 글로벌 상태에 따라 계층적 유한 상태 기계를 구축하는 단계
    를 포함하는 것을 특징으로 하는 상태 기계 처리 방법.
  2. 제1항에 있어서,
    상기 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는 단계는,
    상기 상태 처리 대상의 각 상태의 상태 응답 관계 및 상태 트리거 이벤트를 순차적으로 결정하는 단계;
    타겟 상태가 글로벌 상태 응답 관계를 구비하는 것 및/또는 상기 타겟 상태와 타겟 상태 트리거 이벤트 사이에 영향 관계가 존재하는 것을 결정하는 경우, 상기 타겟 상태를 상기 글로벌 상태로 결정하는 단계;
    상기 상태 처리 대상에서 상기 글로벌 상태를 제외한 기타 상태를 상기 개별 상태로 결정하는 단계
    를 포함하는 것을 특징으로 하는 상태 기계 처리 방법.
  3. 제1항 또는 제2항에 있어서,
    각 상기 개별 상태에 대해 분류하여, 적어도 하나의 국부 상태 집합을 획득하는 단계는,
    각 상기 개별 상태의 상태 매핑 기능을 결정하는 단계;
    상기 상태 매핑 기능이 동일한 개별 상태를 각 상태 집합에 추가하여, 각 상기 국부 상태 집합을 획득하는 단계
    를 포함하는 것을 특징으로 하는 상태 기계 처리 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    각 상기 국부 상태 집합에 대해 서브 상태 기계를 구축하는 단계는,
    각 상기 국부 상태 집합에 대응하는 서브 상태 기계 식별자를 결정하는 단계;
    각 상기 서브 상태 기계 식별자에 따라 각 상기 국부 상태 집합에서의 개별 상태에 대해 매핑 관계를 수립하는 단계;
    각 상기 서브 상태 기계에 포함된 각 상기 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 결정하는 단계
    를 포함하는 것을 특징으로 하는 상태 기계 처리 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    각 상기 서브 상태 기계 및 상기 글로벌 상태에 따라 계층적 유한 상태 기계를 구축하는 단계는,
    각 상기 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트를 결정하는 단계;
    각 상기 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트에 따라 상기 계층적 유한 상태 기계를 구축하는 단계
    를 포함하는 것을 특징으로 하는 상태 기계 처리 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    업데이트된 개별 상태를 결정하는 단계;
    상기 업데이트된 개별 상태의 상태 매핑 기능을 결정하는 단계;
    상기 업데이트된 개별 상태의 상태 매핑 기능에 따라 업데이트될 서브 상태 기계를 결정하는 단계;
    상기 업데이트될 서브 상태 기계에 포함된 각 상기 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 업데이트하는 단계
    를 더 포함하는 것을 특징으로 하는 상태 기계 처리 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 상태 처리 대상은 블루투스 전화 설비를 포함하고;
    상기 글로벌 상태는 블루투스가 연결됨, 블루투스가 미연결됨 및 연락처에 다이어링 가능한 것을 포함하며;
    상기 서브 상태 기계는 발신 전화 서브 상태 기계, 수신 전화 서브 상태 기계 및 주소록 동기화 서브 상태 기계를 포함하는 것을 특징으로 하는 상태 기계 처리 방법.
  8. 상태 처리 방법으로서,
    상태 처리 대상의 상태 트리거 이벤트를 결정하는 단계;
    상기 상태 트리거 이벤트 및 상기 상태 처리 대상의 계층적 유한 상태 기계에 따라 상기 상태 트리거 이벤트에 대해 응답하는 단계로서, 상기 계층적 유한 상태 기계는 제1항 내지 제7항 중 어느 한 항에 따른 상태 기계 처리 방법을 통해 구축되는, 상기 응답하는 단계;
    상기 상태 트리거 이벤트의 응답 결과에 따라 현재 업데이트된 상태를 결정하는 단계
    를 포함하는 것을 특징으로 하는 상태 처리 방법.
  9. 제8항에 있어서,
    상기 상태 트리거 이벤트는 타겟 글로벌 영향 이벤트를 포함하고;
    상기 상태 트리거 이벤트 및 상기 상태 처리 대상의 계층적 유한 상태 기계에 따라 상기 상태 트리거 이벤트에 대해 응답하는 단계는,
    현재 활성화 서브 상태 기계를 결정하는 단계;
    상기 타겟 글로벌 영향 이벤트와 상기 현재 활성화 서브 상태 기계의 상태 응답 관계에 따라 상기 현재 활성화 서브 상태 기계가 상태 업데이트를 수행하도록 지시하는 단계;
    상기 현재 활성화 서브 상태 기계를 통해 상기 현재 활성화 서브 상태 기계에 포함된 각 개별 상태를 일괄적으로 업데이트하는 단계
    를 포함하는 것을 특징으로 하는 상태 처리 방법.
  10. 상태 처리 대상의 전부 상태에서 글로벌 상태 및 개별 상태를 결정하는데 사용되는 상태 결정 모듈;
    각 상기 개별 상태에 대해 분류하여, 적어도 하나의 국부 상태 집합을 획득하는데 사용되는 개별 상태 분류 모듈;
    각 상기 국부 상태 집합에 대해 서브 상태 기계를 구축하는데 사용되는 서브 상태 기계 구축 모듈로서, 각 상기 서브 상태 기계는 하나의 상기 국부 상태 집합에서의 개별 상태를 관리하는, 상기 서브 상태 기계 구축 모듈;
    각 상기 서브 상태 기계 및 상기 글로벌 상태에 따라 계층적 유한 상태 기계를 구축하는데 사용되는 계층적 유한 상태 기계 구축 모듈
    을 포함하는 것을 특징으로 하는 상태 기계 처리 장치.
  11. 제10 항에 있어서,
    상기 상태 결정 모듈은,
    상기 상태 처리 대상의 각 상태의 상태 응답 관계 및 상태 트리거 이벤트를 순차적으로 결정하고;
    타겟 상태가 글로벌 상태 응답 관계를 구비하는 것 및/또는 상기 타겟 상태와 타겟 상태 트리거 이벤트 사이에 영향 관계가 존재하는 것이 결정된 경우, 상기 타겟 상태를 상기 글로벌 상태로 결정하며;
    상기 상태 처리 대상에서 상기 글로벌 상태를 제외한 기타 상태를 상기 개별 상태로 결정하는데 구체적으로 사용되는 것을 특징으로 하는 상태 기계 처리 장치.
  12. 제10항 또는 제11항에 있어서,
    상기 개별 상태 분류 모듈은,
    각 상기 개별 상태의 상태 매핑 기능을 결정하고;
    상기 상태 매핑 기능이 동일한 개별 상태를 각 상태 집합에 추가하여, 각 상기 국부 상태 집합을 획득하는데 구체적으로 사용되는 것을 특징으로 하는 상태 기계 처리 장치.
  13. 제10항 내지 제12항 중 어느 한 항에 있어서,
    상기 서브 상태 기계 구축 모듈은,
    각 상기 국부 상태 집합에 대응하는 서브 상태 기계 식별자를 결정하고;
    각 상기 서브 상태 기계 식별자에 따라 각 상기 국부 상태 집합에서의 개별 상태에 대해 매핑 관계를 수립하며;
    각 상기 서브 상태 기계에 포함된 각 상기 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 결정하는데 구체적으로 사용되는 것을 특징으로 하는 상태 기계 처리 장치.
  14. 제10항 내지 제13항 중 어느 한 항에 있어서,
    상기 계층적 유한 상태 기계 구축 모듈은,
    각 상기 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트를 결정하고;
    각 상기 글로벌 상태의 상태 응답 관계 및 상태 트리거 이벤트에 따라 상기 계층적 유한 상태 기계를 구축하는데 구체적으로 사용되는 것을 특징으로 하는 상태 기계 처리 장치.
  15. 제10항 내지 제14항 중 어느 한 항에 있어서,
    업데이트된 개별 상태를 결정하는데 사용되는 업데이트된 개별 상태 결정 모듈;
    상기 업데이트된 개별 상태의 상태 매핑 기능을 결정하는데 사용되는 상태 매핑 기능 결정 모듈;
    상기 업데이트된 개별 상태의 상태 매핑 기능에 따라 업데이트될 서브 상태 기계를 결정하는데 사용되는 업데이트될 서브 상태 기계 결정 모듈;
    상기 업데이트될 서브 상태 기계에 포함된 각 상기 개별 상태 사이의 상태 응답 관계 및 상태 트리거 이벤트를 업데이트하는데 사용되는 관계 이벤트 업데이트 모듈
    을 더 포함하는 것을 특징으로 하는 상태 기계 처리 장치.
  16. 제10항 내지 제15항 중 어느 한 항에 있어서,
    상기 상태 처리 대상은 블루투스 전화 설비를 포함하고;
    상기 글로벌 상태는 블루투스 연결됨, 블루투스 미연결됨 및 연락처에 다이어링 가능한 것을 포함하며;
    상기 서브 상태 기계는 발신 전화 서브 상태 기계, 수신 전화 서브 상태 기계 및 주소록 동기화 서브 상태 기계를 포함하는 것을 특징으로 하는 상태 기계 처리 장치.
  17. 상태 처리 장치로서,
    상태 처리 대상의 상태 트리거 이벤트를 결정하는데 사용되는 상태 트리거 이벤트 결정 모듈;
    상기 상태 트리거 이벤트 및 상기 상태 처리 대상의 계층적 유한 상태 기계에 따라 상기 상태 트리거 이벤트에 대해 응답하는데 사용되는 상태 트리거 이벤트 응답 모듈로서, 상기 계층적 유한 상태 기계는 제1항 내지 제7항 중 어느 한 항에 따른 상태 기계 처리 방법을 통해 구축되는, 상기 상태 트리거 이벤트 응답 모듈;
    상기 상태 트리거 이벤트의 응답 결과에 따라 현재 업데이트된 상태를 결정하는데 사용되는 현재 업데이트된 상태 결정 모듈
    을 포함하는 것을 특징으로 하는 상태 처리 장치.
  18. 제17 항에 있어서,
    상기 상태 트리거 이벤트가 타겟 글로벌 영향 이벤트를 포함하고;
    상기 상태 트리거 이벤트 응답 모듈은,
    현재 활성화 서브 상태 기계를 결정하고;
    상기 타겟 글로벌 영향 이벤트와 상기 현재 활성화 서브 상태 기계의 상태 응답 관계에 따라 상기 현재 활성화 서브 상태 기계가 상태를 업데이트하도록 지시하며;
    상기 현재 활성화 서브 상태 기계를 통해 상기 현재 활성화 서브 상태 기계에 포함된 각 개별 상태를 일괄적으로 업데이트하는데 구체적으로 사용되는 것을 특징으로 하는 상태 기계 처리 장치.
  19. 전자 설비로서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서와 통신적으로 연결되는 메모리
    를 포함하되, 상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되고, 상기 명령은 상기 적어도 하나의 프로세서에 의해 실행되어, 상기 적어도 하나의 프로세서가 제1항 내지 제7항 중 어느 한 항에 따른 상태 기계 처리 방법 또는 제8항 내지 제9항 중 어느 한 항에 따른 상태 기계 처리 방법을 실행하도록 하는 것을 특징으로 하는 전자 설비.
  20. 컴퓨터 명령을 저장하는 비일시적 컴퓨터 판독가능 저장매체로서,
    상기 컴퓨터 명령은, 컴퓨터가 제1항 내지 제7항 중 어느 한 항에 따른 상태 기계 처리 방법, 또는 제8항 내지 제9항 중 어느 한 항에 따른 상태 기계 처리 방법을 실행하도록 하는 것을 특징으로 하는 컴퓨터 명령을 저장하는 비일시적 컴퓨터 판독가능 저장매체.
  21. 컴퓨터 판독 가능 저장매체에 저장된 컴퓨터 프로그램으로서,
    상기 컴퓨터 프로그램 중의 컴퓨터 명령이 프로세서에 의해 실행될 때 제1항 내지 제7항 중 어느 한 항에 따른 상태 기계 처리 방법을 실현하거나, 제8항 내지 제9항 중 어느 한 항에 따른 상태 처리 방법을 실행하는 것을 특징으로 하는 컴퓨터 판독 가능 저장매체에 저장된 컴퓨터 프로그램.
KR1020220041864A 2021-05-28 2022-04-04 상태 기계 처리, 상태 처리 방법, 장치, 전자 설비 및 저장 매체 KR20220049498A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110594974.7A CN113326083A (zh) 2021-05-28 2021-05-28 状态机处理、状态处理方法、装置、电子设备及存储介质
CN202110594974.7 2021-05-28

Publications (1)

Publication Number Publication Date
KR20220049498A true KR20220049498A (ko) 2022-04-21

Family

ID=77422426

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220041864A KR20220049498A (ko) 2021-05-28 2022-04-04 상태 기계 처리, 상태 처리 방법, 장치, 전자 설비 및 저장 매체

Country Status (5)

Country Link
US (1) US20220283822A1 (ko)
EP (1) EP4095685A1 (ko)
JP (1) JP7372380B2 (ko)
KR (1) KR20220049498A (ko)
CN (1) CN113326083A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113942497A (zh) * 2021-10-18 2022-01-18 长春一汽富晟集团有限公司 一种影像融合泊车控制器状态机跳转方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8766666B2 (en) 2010-06-10 2014-07-01 Micron Technology, Inc. Programmable device, hierarchical parallel machines, and methods for providing state information
CN109375965B (zh) * 2018-11-06 2022-04-26 东软集团股份有限公司 状态机处理方法及装置、可读存储介质
CN109684036B (zh) * 2018-12-17 2021-08-10 武汉烽火信息集成技术有限公司 一种容器集群管理方法、存储介质、电子设备及系统
CN111273969B (zh) * 2020-01-20 2021-08-10 腾讯科技(深圳)有限公司 状态切换方法、装置、设备和存储介质

Also Published As

Publication number Publication date
EP4095685A1 (en) 2022-11-30
US20220283822A1 (en) 2022-09-08
CN113326083A (zh) 2021-08-31
JP7372380B2 (ja) 2023-10-31
JP2022183003A (ja) 2022-12-08

Similar Documents

Publication Publication Date Title
CN110765024A (zh) 模拟测试方法、装置、电子设备和计算机可读存储介质
CN114741060B (zh) 基于中台的业务系统开发方法及装置
CN110719311B (zh) 分布式协调服务方法、系统及计算机可读存储介质
US11228664B2 (en) Method and apparatus for acquiring RPC member information, electronic device and storage medium
EP4024765B1 (en) Method and apparatus for extracting fault propagation condition, and storage medium
CN109471776B (zh) 一种基于以太网的VxWorks操作系统日志收集方法
WO2023245985A1 (zh) 一种基于物模型的智慧网关适配系统及其运行方法
KR20220049498A (ko) 상태 기계 처리, 상태 처리 방법, 장치, 전자 설비 및 저장 매체
CN114911598A (zh) 任务调度方法、装置、设备以及存储介质
TWI668634B (zh) 基於軟體容器提供雲端服務之系統及方法
CN108733468A (zh) 定时任务动态配置方法及装置、存储介质及服务器集群
CN112235378B (zh) 数据更新方法、装置、存储介质及电子设备
CN107844363B (zh) 业务事务处理方法、装置、存储介质及设备
US6510214B1 (en) System and method of detecting overload in a service control point of a telecommunications network
CN111741175B (zh) 呼叫中心系统、信号传递方法、装置、服务器及介质
EP4106293A2 (en) Network configuring method and apparatus for cloud mobile phone, device and storage medium
CN113760301B (zh) 一种微服务应用部署方法、装置、设备及存储介质
CN114374614A (zh) 网络拓扑配置方法及装置
CN114205414A (zh) 基于服务网格的数据处理方法、装置、电子设备和介质
CN114598743A (zh) 一种服务发现方法、装置、电子设备及存储介质
CN116599895A (zh) 数据传输方法及装置、设备和介质
CN118210525A (zh) 用于云终端的系统更新方法、装置、设备及存储介质
CN114048068A (zh) Mysql数据库的运维方法、装置、设备和存储介质
CN116340011A (zh) 一种基于区块链的事件订阅方法、装置及系统
CN116932004A (zh) 服务发布方法、装置、设备、存储介质及产品

Legal Events

Date Code Title Description
E902 Notification of reason for refusal