[go: up one dir, main page]

KR101639911B1 - Time period based framework system of steel process middleware - Google Patents

Time period based framework system of steel process middleware Download PDF

Info

Publication number
KR101639911B1
KR101639911B1 KR1020140186901A KR20140186901A KR101639911B1 KR 101639911 B1 KR101639911 B1 KR 101639911B1 KR 1020140186901 A KR1020140186901 A KR 1020140186901A KR 20140186901 A KR20140186901 A KR 20140186901A KR 101639911 B1 KR101639911 B1 KR 101639911B1
Authority
KR
South Korea
Prior art keywords
task
agent
processes
manager
service
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020140186901A
Other languages
Korean (ko)
Other versions
KR20160077431A (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 주식회사 포스코
Priority to KR1020140186901A priority Critical patent/KR101639911B1/en
Publication of KR20160077431A publication Critical patent/KR20160077431A/en
Application granted granted Critical
Publication of KR101639911B1 publication Critical patent/KR101639911B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/461Saving or restoring of program or task context
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/461Saving or restoring of program or task context
    • G06F9/462Saving or restoring of program or task context with multiple register sets
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/461Saving or restoring of program or task context
    • G06F9/463Program control block organisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템은 태스크가 미들웨어 서비스를 요구할 수 있도록 하는 응용 프로그래밍 인터페이스(API: Application Programming Interface), 및 태스크용 프로세스들을 장시간용 및 단시간용으로 분류하고 상기 태스크용 프로세스들의 초기화, 주기적 실행, 및 삭제를 담당하는 태스크 프로세스 관리자를 포함하는 태스크부; 및 상기 미들웨어 서비스 요구에 응답하여 실행된 서비스 에이전트에게 할당하는 미들웨어 서비스 핸들러, 및 에이전트용 프로세스들을 장시간용 및 단시간용으로 분류하고 상기 에이전트용 프로세스의 생성, 초기화, 주기적 실행, 및 삭제를 담당하는 에이전트 프로세스 관리자를 포함하는 서비스 에이전트부를 포함할 수 있다.The time frame based framework system of the steel process middleware according to an embodiment of the present invention includes an application programming interface (API) for allowing a task to request a middleware service, and an application programming interface A task processor including a task process manager for classifying and initializing, periodically executing, and deleting the processes for the task; And a middleware service handler for assigning the middleware service handler to the service agent executed in response to the middleware service request, and an agent for classifying the processes for the agent for long time and short time and for creating, initializing, periodically executing, and deleting the process for the agent And a service agent unit including a process manager.

Figure R1020140186901
Figure R1020140186901

Description

철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템{TIME PERIOD BASED FRAMEWORK SYSTEM OF STEEL PROCESS MIDDLEWARE}{TIME PERIOD BASED FRAMEWORK SYSTEM OF STEEL PROCESS MIDDLEWARE}

본 발명은 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템에 관한 것이다.
The present invention relates to a time period based framework system for steel process middleware.

철강 공정 제어 작업에서 미들웨어의 역할은 태스크의 요청을 받아 태스크 간의 통신이나 공정 제어에 관련된 정보의 저장 및 참조 등의 작업을 수행하고, 현재 수행중인 태스크를 관리하는 것이다. The role of middleware in the steel process control work is to manage the tasks currently performed by performing tasks such as storing and referencing information related to communication or process control between tasks in response to a task request.

일반적으로 철강 공정 미들웨어는 수많은 태스크의 생성/삭제가 반복적으로 수행되고, 새로운 서비스가 추가되는 경우 추가된 새로운 서비스의 기능이 미들웨어에 추가되어야 하는 특징을 가지고 있다. 이러한 특징으로 인하여 철강 공정 미들웨어는 유동적인 상황에 맞추어 태스크 자원 할당을 효율적으로 수행하여 미들웨어가 실행되는 시스템의 자원을 효율적으로 관리하여 실행되는 시스템의 전체적인 성능을 높일 수 있어야 한다. 또한, 철강 공정 미들웨어는 미들웨어 개발자 측면에서는 새로운 서비스의 기능을 추가하는 것이 용이해야 한다.In general, steel process middleware has the feature that the creation and deletion of a large number of tasks are repeatedly performed, and when a new service is added, a new service function added to the middleware is added. Because of this feature, steel process middleware should be able to efficiently allocate task resources according to the dynamic situation, efficiently manage the resources of the system in which middleware is executed, and increase the overall performance of the executed system. In addition, steel process middleware should be easy to add new service functionality in terms of middleware developers.

철강 공정은 특성상 연속 공정이며, 각 공정이 요구하는 필요 서비스와 응답성, 시스템 플랫폼, 분산 환경 요구가 다양하므로 미들웨어의 가용성(Availability)과 공정에 따른 변화 가능성을 수용할 수 있는 미들웨어 시스템의 구조의 모듈화(Modularity)가 필요하다.Since the steel process is a continuous process due to its characteristics, and the required service, responsiveness, system platform, and distributed environment requirements required by each process are varied, the structure of the middleware system capable of accommodating the availability Modularity is required.

또한, 철강 공정 미들웨어는 한번에 많은 태스크에 서비스를 제공해야 하므로, 모든 작업을 하나의 프로세스로 통합하여 실행할 경우에는 사용자가 체감하는 응답시간 저하의 문제점이 발생할 수 있다.In addition, since the steel process middleware has to provide services to a large number of tasks at once, if all of the tasks are integrated into one process, the response time experienced by the user may be deteriorated.

따라서, 철강 공정 미들웨어의 프로세스 개발과 유지관리에 있어, 공통작업들을 독립적으로 프로세스화하고 별도의 시간 주기로 동작할 수 있는 환경을 제공하기 위한 프레임워크 시스템이 요구된다.
Therefore, there is a need for a framework system for process development and maintenance of steel process middleware, which provides an environment in which common tasks can be processed independently and operated in separate time periods.

한국 공개특허공보 KR 10-2010-0076840Korean Patent Publication No. 10-2010-0076840

철강 공정 미들웨어의 프로세스 개발과 유지관리에 있어, 공통작업들을 독립적으로 프로세스화하고 프로세스들이 시간 주기로 동작할 수 있는 환경을 제공하기 위한 프레임워크 시스템이 요구된다.
In the process development and maintenance of steel process middleware, there is a need for a framework system to independently process common tasks and to provide an environment in which processes can operate in a time period.

본 발명의 일 실시예에 따른 프레임워크 시스템은 태스크가 미들웨어 서비스를 요구할 수 있도록 하는 응용 프로그래밍 인터페이스(API: Application Programming Interface), 및 태스크용 프로세스들을 장시간용 및 단시간용으로 분류하고 상기 태스크용 프로세스들의 초기화, 주기적 실행, 및 삭제를 담당하는 태스크 프로세스 관리자를 포함하는 태스크부; 및 상기 미들웨어 서비스 요구에 응답하여 서버가 해당 서비스 에이전트에게 할당하는 미들웨어 서비스 핸들러, 및 에이전트용 프로세스들을 장시간용 및 단시간용으로 분류하고 상기 에이전트용 프로세스들의 생성, 초기화, 주기적 실행, 및 삭제를 담당하는 에이전트 프로세스 관리자를 포함하는 서비스 에이전트부를 포함할 수 있다.
The framework system according to an embodiment of the present invention classifies an application programming interface (API) for allowing a task to request a middleware service and a task process for a long time and a short time, A task unit including a task process manager responsible for initialization, periodic execution, and deletion; And a middleware service handler that the server assigns to the corresponding service agent in response to the middleware service request, and a process for classifying the processes for the agent for a long time and a short time and for creating, initializing, periodically executing, and deleting the processes for the agent And a service agent unit including an agent process manager.

본 발명의 실시예에 따른 프레임워크 시스템은 철강 공정 미들웨어의 프로세스 개발과 유지관리에 있어, 공통작업들을 독립적으로 프로세스화하고 프로세스들이 시간 주기로 동작할 수 있는 환경을 제공할 수 있다.
The framework system according to the embodiment of the present invention can independently process the common operations and provide an environment in which processes can operate in a time period in the process development and maintenance of the steel process middleware.

도 1은 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템의 태스크용 프로세스 풀을 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템의 에이전트용 프로세스 풀 및 자원 회수 프로세스 풀을 나타내는 블록도이다.
도 4는 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템의 독립적인 프로세스들를 설명하기 위한 도면이다.
1 is a block diagram illustrating a time period based framework system of a steel process middleware according to an embodiment of the present invention.
2 is a block diagram illustrating a process pool for a task in a time period based framework system of a steel process middleware according to an embodiment of the present invention.
3 is a block diagram illustrating an agent process pool and a resource recovery process pool in a time period based framework system of a steel process middleware according to an embodiment of the present invention.
FIG. 4 is a diagram for explaining independent processes of a time period-based framework system of a steel process middleware according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 형태들을 설명한다.Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.

그러나, 본 발명의 실시형태는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 이하 설명하는 실시 형태로 한정되는 것은 아니다. 또한, 본 발명의 실시형태는 당해 기술분야에서 평균적인 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위해서 제공되는 것이다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다.However, the embodiments of the present invention can be modified into various other forms, and the scope of the present invention is not limited to the embodiments described below. Further, the embodiments of the present invention are provided to more fully explain the present invention to those skilled in the art. It should be understood that the various embodiments of the present invention are different, but need not be mutually exclusive. For example, certain features, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the invention in connection with an embodiment.

또한, 어떤 구성 요소를 '포함'한다는 것은, 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있다는 것을 의미한다.Also, to "include" an element means that it may include other elements, rather than excluding other elements, unless specifically stated otherwise.

본 실시예에서 사용되는 '~부' 또는 '~관리자'라는 용어는 소프트웨어 또는 FPGA(field-programmable gate array) 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부' 또는 '~관리자'는 어떤 역할들을 수행한다. 그렇지만 '~부' 또는 '~관리자'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부' 또는 '~관리자'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부' 또는 '~관리자'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부' 또는 '~관리자'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부' 또는 '~관리자'들로 결합되거나 추가적인 구성요소들과 '~부' 또는 '~관리자'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부' 또는 '~관리자'들은 디바이스 또는 시스템 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
The term '~' or '~ manager' used in the present embodiment means a hardware component such as a software or a field-programmable gate array (FPGA) or an ASIC, and '~' Perform roles. However, '~' or '~ manager' is not meant to be limited to software or hardware. The 'to' or 'manager' may be configured to reside on an addressable storage medium and may be configured to play one or more processors. Thus, by way of example, 'to' or 'to' may refer to components such as software components, object-oriented software components, class components and task components, and processes, Routines, routines, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. Or " administrators " may be combined with a smaller number of elements and with " parts " or " Can be further divided into '~ administrators'. In addition, components and 'to' or 'administrators' may be implemented to play one or more CPUs in a device or system.

도 1은 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템을 나타내는 블록도이다.1 is a block diagram illustrating a time period based framework system of a steel process middleware according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템은 태스크부(100) 및 에이전트부(200)를 포함할 수 있다.Referring to FIG. 1, a time period based framework system of the steel process middleware according to an embodiment of the present invention may include a task unit 100 and an agent unit 200.

상기 태스크부(100)는 태스크들(101-1 내지 101-N), 응용 프로그램 인터페이스(API: Application Programming Interface)(110), 태스크 실행환경 관리자(120), 및 태스크 프로세스 관리자(130)을 포함할 수 있다.The task unit 100 includes tasks 101-1 to 101-N, an application programming interface (API) 110, a task execution environment manager 120, and a task process manager 130 can do.

또한, 상기 태스크부(100)는 태스크용 프로세스 풀(140)을 포함할 수 있다.In addition, the task unit 100 may include a task process pool 140.

먼저, 상기 태스크들(101-1 내지 101-N)은, 철강 공정을 동작시키기 위한 레벨 2 시스템의 철강 공정 운용 로직을 포함하는 응용 소프트웨어(software)들로서, 각 태스크(101-1 내지 101-N)는 에이전트부(200)의 서비스를 제공받기 위하여 해당 미들웨어 서비스 실행 전용의 응용 프로그램 인터페이스(110)을 호출할 수 있다. 여기서, 철강 공정 레벨 2 시스템은 태스크들(101-1 내지 101-N)과 철강 공정 미들웨어를 활용하는 시스템으로, 철강 공정 레벨 1, 3 시스템과 함께 철강 공정 자동화 시스템을 구성한다.First, the tasks 101-1 to 101-N are application software including a steel process operation logic of a level 2 system for operating a steel process, and each of the tasks 101-1 to 101-N May call the application program interface 110 dedicated to executing the corresponding middleware service in order to receive the service of the agent unit 200. [ Here, the steel process level 2 system is a system that utilizes the tasks 101-1 to 101-N and the steel process middleware, and constitutes a steel process automation system together with steel process level 1 and 3 systems.

상기 응용 프로그램 인터페이스(110)는 미들웨어 서비스를 이용하여 로직(Logic)을 수행하는 동작 주체인 태스크들(101-1 내지 101-N)의 요청에 따라 호출되는 프로그래밍 함수의 집합으로서, 태스크들(101-1 내지 101-N)은 해당 응용 프로그램 인터페이스(110)을 호출하여 에이전트부(200)에 미들웨어 서비스를 요구할 수 있다.The application program interface 110 is a set of programming functions to be called upon the request of the tasks 101-1 to 101-N that are subjects of operation to perform logic using the middleware service, -1 to 101-N may request the middleware service to the agent unit 200 by calling the corresponding application program interface 110.

이에 따라, 태스크들(101-1 내지 101-N)은 메시지 송수신 관련 서비스, 파일 관련 서비스, 태스크 등록/해지 관련 서비스, 통신 관련 서비스, 데이터베이스 기능 관련 서비스, 공유메모리 관련 서비스 등의 미들웨어 서비스를 제공받을 수 있다.Accordingly, the tasks 101-1 to 101-N provide middleware services such as message transmission / reception related services, file related services, task registration / termination related services, communication related services, database function related services, and shared memory related services Can receive.

상기 태스크 실행환경 관리자(120)는 응용 프로그램 인터페이스(110)의 실행시에 생성되며 태스크 프로세스 관리자(130)의 실행 환경을 초기화하고 태스크 프로세스 관리자(130)를 생성/삭제하는 역할을 할 수 있다.The task execution environment manager 120 is created at the time of execution of the application program interface 110 and may be responsible for initializing the execution environment of the task process manager 130 and creating / deleting the task process manager 130.

상기 태스크 프로세스 관리자(130)는 태스크용 프로세스들을 장시간용 및 단시간용으로 분류하고 상기 태스크용 프로세스들의 초기화, 주기적 실행 및 삭제를 담당할 수 있다.The task process manager 130 classifies tasks for a long time and a short time, and is responsible for initializing, periodically executing and deleting the tasks for the task.

또한, 상기 태스크 프로세스 관리자(130)는 제1 시간주기 기반 프로세스 관리자(131), 제1 최소 관리주기 계산자(132), 제1 프로세스 관리자(133), 및 제2 프로세스 관리자(134)를 포함할 수 있다.In addition, the task process manager 130 includes a first time period based process manager 131, a first minimum management cycle calculator 132, a first process manager 133, and a second process manager 134 .

여기서, 제1 시간주기 기반 프로세스 관리자(131)는 태스크 주기환경 설정(131-1)에 따라 상기 태스크용 프로세스들을 생성하고, 처리 소요시간에 따라 상기 태스크용 프로세스들을 분류하여 제1 프로세스 관리자(133) 또는 제2 프로세스 관리자(134)에 위임할 수 있다.Here, the first time period based process manager 131 generates the task processes according to the task cycle environment setting 131 - 1, classifies the processes for the task according to the processing time, ) Or to the second process manager 134.

상기 제1 프로세스 관리자(133)는 처리시간이 상대적으로 짧은 태스크용 프로세스들에 대한 관리를 담당하며, 각 태스크용 프로세스의 초기화, 주기적 실행, 삭제를 담당할 수 있고, 상기 제2 프로세스 관리자(134)는 처리시간이 상대적으로 긴 태스크용 프로세스들에 대한 관리를 담당하며, 각 태스크용 프로세스의 초기화, 주기적 실행, 삭제를 담당할 수 있다.The first process manager 133 is responsible for managing tasks for processes with relatively short processing time, and can be responsible for initializing, periodically executing and deleting processes for each task. The second process manager 134 ) Manages tasks for processes with relatively long processing times, and can be responsible for initializing, periodically executing, and deleting processes for each task.

상기 제1 최소 관리주기 계산자(134)는 상기 제1 프로세스 관리자(133) 및 상기 제2 프로세스 관리자(134)가 관리하고 있는 태스크용 프로세스들의 동작주기를 분석하여 확인주기를 상기 제1 프로세스 관리자(133) 및 상기 제2 프로세스 관리자(134)에게 지시할 수 있다.The first minimum management period calculator 134 analyzes the operation cycle of the task processes managed by the first process manager 133 and the second process manager 134 to check the check cycle in the first process manager 133 133 and the second process manager 134. [

구체적으로, 제1 최소 관리주기 계산자(134)는 태스크용 프로세스가 의도하는 동작주기별 동작 시작시점과 확인시점의 오차를 최소화하기 위해 태스크용 프로세스의 동작주기를 분석하여 확인주기를 설정할 수 있다. Specifically, the first minimum management period calculator 134 may set the check period by analyzing the operation cycle of the task process to minimize the error between the operation start point and the check point in each operation cycle intended by the task process.

상기 태스크용 프로세스 풀(140)은 상기 태스크용 프로세스들을 포함하고 상기 태스크용 프로세스들을 추가, 삭제, 검색 가능한 구조를 가질 수 있다.The task process pool 140 may include the processes for the task, and may have a structure capable of adding, deleting, and searching the processes for the task.

여기서, 상기 태스크용 프로세스 풀(140)은 제1 H/W(hardware) 클록 카운터 관리자(150), 태스크 로거(160), 및 태스크 정보 관리자(170)과 연동할 수 있으며, 이에 대하여 도 2와 함께 후술하기로 한다.
The task pool 140 may be interlocked with the first H / W hardware clock counter 150, the task logger 160, and the task information manager 170, Will be described later.

상기 에이전트부(200)는 미들웨어 서비스 핸들러(210), 서비스 실행환경 관리자(220), 및 에이전트 프로세스 관리자(230)을 포함할 수 있다.The agent unit 200 may include a middleware service handler 210, a service execution environment manager 220, and an agent process manager 230.

또한, 상기 에이전트부(200)는 에이전트용 프로세스 풀(240), 및 자원 회수 프로세스 풀(280)을 포함할 수 있다.In addition, the agent unit 200 may include a process pool 240 for an agent, and a resource recovery process pool 280.

상기 미들웨어 서비스 핸들러(210)는 태스크부(100)에 포함된 응용 프로그래밍 인터페이스(110)의 미들웨어 서비스 요구에 응답하여 서버에 의해 실행된 서비스 에이전트에게 할당될 수 있다.The middleware service handler 210 may be assigned to a service agent executed by the server in response to a middleware service request of the application programming interface 110 included in the task unit 100. [

상기 서비스 실행환경 관리자(220)는 서비스 에이전트의 실행시에 생성되며 서비스 주기환경 설정 문서(220-1)에 따라 에이전트 프로세스 관리자(230)의 실행 환경을 초기화하고 에이전트 프로세스 관리자(130)를 생성/삭제하는 역할을 할 수 있다.The service execution environment manager 220 is created at the time of execution of the service agent and initializes the execution environment of the agent process manager 230 according to the service period environment setting document 220-1 and generates / It is possible to play the role of deletion.

상기 에이전트 프로세스 관리자(230)는 에이전트용 프로세스들을 장시간용 및 단시간용으로 분류하고 상기 태스크용 프로세스들의 초기화, 주기적 실행 및 삭제를 담당할 수 있다.The agent process manager 230 may classify the processes for the agent into a long time and a short time, and take charge of initializing, periodically executing and deleting the processes for the task.

또한, 상기 에이전트 프로세스 관리자(230)는 제2 시간주기 기반 프로세스 관리자(231), 제2 최소 관리주기 계산자(232), 제3 프로세스 관리자(233), 및 제4 프로세스 관리자(234)를 포함할 수 있다.In addition, the agent process manager 230 includes a second time period based process manager 231, a second minimum management cycle calculator 232, a third process manager 233, and a fourth process manager 234 .

여기서, 제2 시간주기 기반 프로세스 관리자(231)는 상기 에이전트용 프로세스들을 생성하고, 처리 소요시간에 따라 상기 태스크용 프로세스들을 분류하여 제3 프로세스 관리자(233) 또는 제4 프로세스 관리자(234)에 위임할 수 있다.Here, the second time period based process manager 231 creates the processes for the agent, classifies the processes for the task according to the processing time, and delegates to the third process manager 233 or the fourth process manager 234 can do.

상기 제1 프로세스 관리자(233)는 처리시간이 상대적으로 짧은 태스크용 프로세스들에 대한 관리를 담당하며, 각 태스크용 프로세스의 초기화, 주기적 실행, 삭제를 담당할 수 있고, 상기 제2 프로세스 관리자(234)는 처리시간이 상대적으로 긴 태스크용 프로세스들에 대한 관리를 담당하며, 각 태스크용 프로세스의 초기화, 주기적 실행, 삭제를 담당할 수 있다.The first process manager 233 is responsible for managing tasks for processes with relatively short processing times and can be responsible for initializing, periodically executing, and deleting processes for each task. The second process manager 234 ) Manages tasks for processes with relatively long processing times, and can be responsible for initializing, periodically executing, and deleting processes for each task.

상기 제2 최소 관리주기 계산자(234)는 상기 제3 프로세스 관리자(233) 및 상기 제4 프로세스 관리자(234)가 관리하고 있는 에이전트용 프로세스들의 동작주기를 분석하여 확인주기를 상기 제3 프로세스 관리자(233) 및 상기 제4 프로세스 관리자(234)에게 지시할 수 있다.The second minimum management period calculator 234 analyzes the operation cycle of the processes for the agent managed by the third process manager 233 and the fourth process manager 234 to check the confirmation period in the third process manager 233, and the fourth process manager 234.

구체적으로, 제2 최소 관리주기 계산자(234)는 에이전트용 프로세스가 의도하는 동작주기별 동작 시작시점과 확인시점의 오차를 최소화하기 위해 에이전트용 프로세스의 동작주기를 분석하여 확인주기를 설정할 수 있다. Specifically, the second minimum management period calculator 234 may set an acknowledgment period by analyzing the operation cycle of the agent process to minimize the error between the operation start point and the check point in each operation cycle intended for the agent process.

상기 에이전트용 프로세스 풀(240)은 상기 에이전트용 프로세스들을 포함하고 상기 에이전트용 프로세스들을 추가, 삭제, 검색 가능한 구조를 가질 수 있다.The process pool 240 for the agent may include processes for the agent and may have a structure capable of adding, deleting, and searching the processes for the agent.

여기서, 상기 에이전트용 프로세스 풀(140)은 커널 로거(250), 제2 H/W 클록카운터 관리자(260), 서비스 자원 회수 프로세스 관리자(270), 및 자원 회수 프로세스 풀(280)과 연동할 수 있으며, 이에 대하여 도 3와 함께 후술하기로 한다.
Here, the agent process pool 140 can be interworked with the kernel logger 250, the second H / W clock counter manager 260, the service resource recovery process manager 270, and the resource recovery process pool 280 Which will be described later with reference to FIG.

도 2는 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템의 태스크용 프로세스 풀을 나타내는 블록도이다.2 is a block diagram illustrating a process pool for a task in a time period based framework system of a steel process middleware according to an embodiment of the present invention.

도 2를 참조하면 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템에 포함된 태스크용 프로세스 풀(140)은 시간 보정 프로세스(141), 하트비트 송신 프로세스(142), 및 태스크 메모리 프로세스(143) 중 적어도 하나를 포함할 수 있다.Referring to FIG. 2, a task process pool 140 included in a time period-based framework system of a steel process middleware according to an embodiment of the present invention includes a time correction process 141, a heartbeat transmission process 142, And a task memory process 143.

상기 시간 보정 프로세스(141)는 제1 프로세스 관리자(133)의 지시에 따른 확인주기를 가지고, 복수의 태스크(101-1 내지 101-N)가 시간의 보정을 분산 처리 하도록 할 수 있다.The time correction process 141 may have a confirmation period in accordance with an instruction of the first process manager 133 so that a plurality of the tasks 101-1 to 101-N may perform distributed processing of time correction.

구체적으로, 상기 시간 보정 프로세스(141)은 CPU카운터, 외부장치등에서 제공하는 H/W 클록카운터값을 관리하는 제1 H/W 클록카운터 관리자(150)로부터 획득한 H/W 클록카운터값을 시간 보정 주기환경 설정(141-1)에 따라 주기적으로 보정하여 보정된 시간값을 획득할 수 있다.Specifically, the time correction process 141 calculates the H / W clock counter value obtained from the first H / W clock counter manager 150 that manages the H / W clock counter value provided by the CPU counter, The corrected time period value can be obtained by periodically correcting according to the correction period environment setting 141-1.

예를 들어, 태스크부가 마련된 장치의 CPU에서 제공하는 카운터는 CPU 동작 주파수와의 오차로 인해 한 시간에 ms단위의 시간 오차가 발생할 수 있으므로, 운영체제와 미들웨어가 인식하는 시간은 ms단위의 시간 오차를 가질 수 있다.For example, a counter provided by a CPU of a device equipped with a task unit may have a time error of ms units in one hour due to an error with the CPU operating frequency, so that the time recognized by the operating system and middleware is a time error in ms Lt; / RTI >

상기 시간 보정 프로세스(141)는 이러한 시간 오차에 대한 주기적인 보정을 태스크들(101-1 내지 101-N)이 분산하여 처리하도록 하여 하나의 태스크가 시간 보정을 담당하는 경우 상기 하나의 태스크에 오류가 생기는 경우 발생하는 문제점을 방지 수 있다.The time correction process 141 allows the tasks 101-1 to 101-N to process the periodic correction for the time error in a distributed manner so that when one task is responsible for time correction, It is possible to prevent a problem that may occur in the case where a problem occurs.

상기 하트비트 송신 프로세스(142)는 제1 프로세스 관리자(133)의 지시에 따른 확인주기를 가지고, 태스크들(101-1 내지 101-N)각각이 정상 동작 상태임을 알리기 위해 하트비트(heartbeat) 신호를 하트비트 주기환경 설정(142-1)에 따라 주기적으로 미들웨어에 송신할 수 있다.The heartbeat transmission process 142 has an acknowledgment period in accordance with an instruction of the first process manager 133 and transmits a heartbeat signal to inform that each of the tasks 101-1 to 101- May be periodically transmitted to the middleware according to the heartbeat cycle environment setting 142-1.

이를 위해, 태스크 정보 관리자(170)는 응용 프로그램 인터페이스(110, 도1)로부터 상기 태스크들(101-1 내지 101-N)의 정보를 제공받아 하트비트 송신 프로세스(142)에 전송할 수 있다.To this end, the task information manager 170 may receive the information of the tasks 101-1 to 101-N from the application program interface 110 (FIG. 1) and transmit the information to the heartbeat transmission process 142.

상기 태스크 메모리 프로세스(143)는 제2 프로세스 관리자(134)의 지시에 따른 확인주기를 가지고, 태스크들(101-1 내지 101-N)의 작업 결과를 태스크 메모리 주기환경 설정(143-1)에 따라 태스크부(100)의 공유메모리와 주기적으로 동기화하도록 할 수 있다.The task memory process 143 has a check cycle in accordance with an instruction of the second process manager 134 and sends the task results of the tasks 101-1 to 101-N to the task memory cycle environment setting 143-1 And synchronize with the shared memory of the task unit 100 periodically.

즉, 상기 태스크 메모리 프로세스(143)는 시스템 오류로 인한 데이터 손실을 방지하기 위해 주기적으로 태스크들(101-1 내지 101-N)의 작업 결과를 태스크부(100)의 공유메모리에 저장할 수 있다.That is, the task memory process 143 may periodically store the task results of the tasks 101-1 to 101-N in the shared memory of the task unit 100 to prevent data loss due to a system error.

또한, 태스크용 프로세스 풀(140)은 태스크 로거(160)과 연동할 수 있다.In addition, the task process pool 140 may be interlocked with the task logger 160.

상기 태스크 로거(160)은 상기 보정된 시간값을 활용하여 태스크들(101-1 내지 101-N)의 작업 로그들을 보정된 시간값과 같이 외부로 출력할 수 있다.The task logger 160 may output the task logs of the tasks 101-1 to 101-N to the outside as corrected time values using the corrected time values.

이에 따라, 작업 로그를 분석하는 개발자의 시간에 대한 혼돈이 최소화 될 수 있다.
As a result, chaos over time of the developer analyzing the job log can be minimized.

도 3은 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템의 에이전트용 프로세스 풀 및 자원 회수 프로세스 풀을 나타내는 블록도이다.3 is a block diagram illustrating an agent process pool and a resource recovery process pool in a time period based framework system of a steel process middleware according to an embodiment of the present invention.

도 3을 참조하면 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템에 포함된 에이전트용 프로세스 풀(240)은 에이전트 메모리 프로세스(241), 파일 디스크 프로세스(242), 비정상 잠금해제 프로세스(243), 시간 보정 프로세스(244), 자원 회수 프로세스(245), 및 에이전트 기동/복구 프로세스(246) 중 적어도 하나를 포함할 수 있다.Referring to FIG. 3, the agent process pool 240 included in the time period based framework system of the steel process middleware according to an embodiment of the present invention includes an agent memory process 241, a file disk process 242, Recovery process 244, a time correction process 244, a resource recovery process 245, and an agent activation / recovery process 246.

상기 에이전트 메모리 프로세스(241)는 제4 프로세스 관리자(234)의 지시에 따른 확인주기를 가지고, 태스크들(101-1 내지 101-N, 도1)에 대응되는 서비스 에이전트의 작업 결과를 에이전트 메모리 주기환경 설정문서(241-1)에 따라 에이전트부(200)의 공유메모리와 주기적으로 동기화하도록 할 수 있다.The agent memory process 241 has an acknowledgment cycle in accordance with an instruction from the fourth process manager 234 and sends the operation result of the service agent corresponding to the tasks 101-1 to 101- It may be periodically synchronized with the shared memory of the agent unit 200 according to the environment setting document 241-1.

즉, 상기 에이전트 메모리 프로세스(241)는 시스템 오류로 인한 데이터 손실을 방지하기 위해 주기적으로 태스크들(101-1 내지 101-N, 도1)에 대응되는 서비스 에이전트의 작업 결과를 에이전트부(200)의 공유메모리에 저장할 수 있다.That is, the agent memory process 241 periodically transmits a task result of the service agent corresponding to the tasks 101-1 to 101-N (FIG. 1) to the agent unit 200 in order to prevent data loss due to a system error. In shared memory.

상기 파일 디스크 프로세스(242)는 제4 프로세스 관리자(234)의 지시에 따른 확인주기를 가지고, 데이터 입출력 서비스를 제공하기 위한 파일을 파일 주기환경 설정문서(242-1)에 따라 주기적으로 파일 디스크와 동기화하도록 할 수 있다.The file disk process 242 has a check cycle according to an instruction of the fourth process manager 234 and periodically writes a file for providing a data input / output service to the file disk Synchronization can be made.

여기서 상기 파일은 철강 공정 미들웨어에서 서비스 에이전트가 레코드 단위의 데이터 입출력 서비스를 제공하기 위해 사용하는 파일로서, 태스크들(101-1 내지 101-N)에 대응되는 서비스 에이전트는 요청된 데이터를 해당 파일에 저장하고, 일정 시점에 상기 파일의 데이터는 파일 디스크에 저장될 수 있다.Here, the file is a file used by the service agent in the steel process middleware to provide a data input / output service on a record basis. The service agent corresponding to the tasks 101-1 to 101-N transmits the requested data to the corresponding file And at a certain point of time, the data of the file can be stored in a file disk.

즉, 상기 파일 디스크 프로세스(242)는 시스템 오류로 인한 데이터 손실을 방지하기 위해 주기적으로 태스크들(101-1 내지 101-N, 도1)에 대응되는 서비스 에이전트의 입출력 파일을 파일 주기환경 설정문서(242-1)에 따라 주기적으로 에이전트부(200)의 파일 디스크에 저장할 수 있다.That is, the file disk process 242 periodically accesses the input / output file of the service agent corresponding to the tasks 101-1 to 101-N (FIG. 1) to prevent data loss due to a system error, May be periodically stored in the file disk of the agent unit 200 according to the file name 242-1.

상기 비정상 잠금해제 프로세스(243)는 제4 프로세스 관리자(234)의 지시에 따른 확인주기를 가지고, 일정 수의 상기 확인주기 동안 파일의 잠금이 유지되는 경우 비정상 잠금으로 판단하고 이를 해제할 수 있다.The abnormal unlocking process 243 may have an acknowledgment cycle according to an instruction of the fourth process manager 234 and may determine that the file is unlocked if the file is locked for a predetermined number of times, and release the abnormal lock.

상기 파일의 잠금은 입출력 서비스를 제공하기 위한 파일을 태스크들(101-1 내지 101-N, 도1)이 동시에 사용할 수 있으므로, 데이터 정합성을 보장하기 위해 제공되는 기능이다.The locking of the file is a function provided to ensure data consistency because the task 101-1 to 101-N (FIG. 1) can simultaneously use a file for providing an input / output service.

상기 비정상 잠금해제 프로세스(243)는 비정상 잠금을 판단하고 이를 해제하여 일부 태스크가 비정상 종료되는 경우 파일의 잠금이 해제되지 않고 방치되는 문제를 해결할 수 있다.The abnormal unlocking process 243 can solve the problem that the abnormal lock is determined and released to release the file from being unlocked when some tasks are abnormally terminated.

상기 시간 보정 프로세스(244)는 제3 프로세스 관리자(233)의 지시에 따른 확인주기를 가지고, CPU카운터, 외부장치등에서 제공하는 H/W 클록카운터값을 관리하는 제2 H/W 클록카운터 관리자(260)로부터 획득한 H/W 클록카운터값을 시간 보정 주기환경 설정문서(244-1)에 따라 주기적으로 보정하여 보정된 시간값을 획득할 수 있다.The time correction process 244 has a check cycle according to an instruction of the third process manager 233 and includes a CPU counter, a second H / W clock counter manager for managing the H / W clock counter value provided by an external device, 260 can be periodically corrected in accordance with the time correction period setting document 244-1 to obtain a corrected time value.

상기 자원 회수 프로세스(245)는 제3 프로세스 관리자(233)의 지시에 따른 확인주기를 가지고, 태스크의 비정상 종료를 자원회수 주기환경 설정문서(245-1)에 따라 주기적으로 확인하여 비정상 종료의 이벤트가 발생한 태스크에 할당된 자원을 회수하도록 할 수 있다.The resource recovery process 245 periodically confirms the abnormal termination of the task according to the resource recovery period environment setting document 245-1 with an acknowledgment cycle according to the instruction of the third process manager 233, The resource allocated to the task in question can be recovered.

이를 위해, 상기 자원 회수 프로세스(245)는 자원 회수 설정문서(270-1)에 따라 자원 회수 프로세스 관리자(270)가 생성한 서비스 자원 회수 프로세스 등록정보를 사용하여 해당 서비스 에이전트의 자원에 대한 서비스 자원 회수 프로세스를 실행할 수 있다.To this end, the resource recovery process 245 uses the service resource recovery process registration information generated by the resource recovery process manager 270 according to the resource recovery setting document 270-1, The recovery process can be executed.

이를 위해, 상기 자원 회수 프로세스 관리자(270)은 서비스 자원 회수 프로세스들을 생성하고 이를 자원 회수 프로세스 풀(280)에 등록한 후, 자원 회수 프로세스(245)에 서비스 자원 회수 프로세스 등록정보를 제공할 수 있다.To this end, the resource recovery process manager 270 may generate service resource recovery processes, register them in the resource recovery process pool 280, and provide the service resource recovery process registration information to the resource recovery process 245.

또한, 상기 서비스 자원 회수 프로세스는 상기 자원 회수 프로세스 풀(280)에 포함된 서비스 자원 회수 프로세스들(281, 282, 283, 284, 285)중 하나일 수 있다.Also, the service resource recovery process may be one of the service resource recovery processes 281, 282, 283, 284, and 285 included in the resource recovery process pool 280.

상기 에이전트 기동/복구 프로세스(246)는 제3 프로세스 관리자(233)의 지시에 따른 확인주기를 가지고, 태스크들(101-1 내지 101-N, 도1)에 대응되는 서비스 에이전트들의 동작 여부를 에이전트 기동복구 주기환경 설정문서(246-1)에 따라 주기적으로 확인하여, 비정상 동작 중인 서비스 에이전트가 존재하는 것으로 판단되는 경우 새로운 서비스 에이전트를 생성할 수 있다.The agent activation / restoration process 246 has an acknowledgment cycle according to an instruction of the third process manager 233 and determines whether the service agents corresponding to the tasks 101-1 to 101-N (FIG. 1) It is periodically checked according to the startup recovery period setting document 246-1 and a new service agent can be created when it is determined that there is an abnormal service agent.

또한, 에이전트용 프로세스 풀(240)은 커널 로거(250)과 연동할 수 있다.In addition, the process pool 240 for the agent can cooperate with the kernel logger 250.

상기 커널 로거(250)은 상기 보정된 시간값을 활용하여 태스크들(101-1 내지 101-N)에 대응되는 서비스 에이전트들의 작업 로그들을 보정된 시간값과 같이 외부로 출력할 수 있다.The kernel logger 250 can output the service logs of the service agents corresponding to the tasks 101-1 to 101-N using the corrected time value to the outside as a corrected time value.

이에 따라, 작업 로그를 분석하는 개발자의 시간에 대한 혼돈이 최소화 될 수 있다.
As a result, chaos over time of the developer analyzing the job log can be minimized.

상기 자원 회수 프로세스 풀(280)은 서비스 자원 회수 프로세스들을 포함하고 상기 서비스 자원 회수 프로세스들을 추가, 삭제, 검색 가능한 구조를 가질 수 있다.The resource recovery process pool 280 may include service resource recovery processes and may have a structure capable of adding, deleting, and retrieving the service resource recovery processes.

본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템에 포함된 자원 회수 프로세스 풀(280)은 통신어댑터 관리자(281), 메시지 대기큐 관리자(282), 타이머 대기큐 관리자(283), 태스크간 동기화큐 관리자(284), 및 파일관리자(285) 중 적어도 하나를 포함할 수 있다.The resource recovery process pool 280 included in the time period based framework system of the steel process middleware according to one embodiment of the present invention includes a communication adapter manager 281, a message waiting queue manager 282, a timer waiting queue manager 283 ), An inter-task synchronization queue manager 284, and a file manager 285.

상기 통신어탭터 관리자(281)는 PLC(Programable Logic Control) 및 계측기와 송수신을 위해 통신채널 어탭터를 생성/삭제할 수 있고, 자원 회수 프로세스(245)의 지시에 따라 통신채널 어탭터 자원들(281-1 내지 281-N)중 해당 통신채널 어탭터 자원을 회수할 수 있다.The communication adapter manager 281 may create / delete a communication channel adapter for transmission / reception with a programmable logic controller (PLC) and an instrument, and may communicate with the communication channel adapter resources 281-1 through 282, 281-N) of the communication channel.

상기 메시지 대기큐 관리자(282)는 태스크들(101-1 내지 101-N)간 통신에 사용되는 메시지가 저장되어 관리되는 메시지-태스크 대기큐를 생성/삭제할 수 있고, 자원 회수 프로세스(245)의 지시에 따라 메시지-태스크 대기큐 자원들(282-1 내지 282-N)중 해당 메시지-태스크 대기큐 자원을 회수할 수 있다.The message waiting queue manager 282 can create / delete a message-task waiting queue in which messages used for communication between the tasks 101-1 to 101-N are stored and managed, Task queue queuing resources among the message-task queuing resources 282-1 through 282-N according to an instruction.

상기 타이머 메시지 대기큐 관리자(283)는 태스크들(101-1 내지 101-N) 중 해당 태스크로 수신 대기하고 있는 타이머 이벤트가 저장되어 관리되는 타이머-태스크 대기큐를 생성/삭제할 수 있고, 자원 회수 프로세스(245)의 지시에 따라 관리되는 타이머-태스크 대기큐 자원들(283-1 내지 283-N)중 해당 관리되는 타이머-태스크 대기큐 자원을 회수할 수 있다.The timer message waiting queue manager 283 can generate / delete a timer-task waiting queue in which a timer event waiting to be received by the corresponding task among the tasks 101-1 to 101-N is stored and managed, Task waiting queue resources among the managed timer-task waiting queue resources 283-1 through 283-N managed according to the instruction of the process 245. [

상기 태스크간 동기화큐 관리자(284)는 태스크들(101-1 내지 101-N)중 해당 태스크가 획득 예정인 동기화 자원을 회수하기 위해 동기화-태스크 대기큐들(284-1 내지 284-N)중 해당 동기화-태스크 대기큐 자원을 회수하여 차순위 태스크에 동기화 자원을 양도할 수 있다.The task-to-task synchronization queue manager 284 determines whether or not the corresponding task among the synchronization-task waiting queues 284-1 to 284-N to recover synchronization resources to be acquired by the corresponding task among the tasks 101-1 to 101- Synchronization - Task Waiting Queue resources can be reclaimed and synchronization resources can be transferred to the next task.

상기 파일관리자(285)는 태스크들(101-1 내지 101-N)중 해당 태스크가 획득 예정인 파일 잠금에 대한 자원을 회수하기 위해 파일-태스크 대기큐들(285-1 내지 285-N)중 해당 파일-태스크 대기큐 자원을 회수하여 차순위 태스크에 파일 잠금에 대한 자원을 양도할 수 있다.
The file manager 285 determines whether or not the corresponding one of the file-task waiting queues 285-1 through 285-N to recover the resource for the file lock that the corresponding task is to acquire from among the tasks 101-1 through 101- You can transfer the resources for file locking to the next-in-time task by retrieving the file-to-task queue resources.

도 4는 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템의 독립적인 프로세스들를 설명하기 위한 도면이다.FIG. 4 is a diagram for explaining independent processes of a time period-based framework system of a steel process middleware according to an embodiment of the present invention.

도 4를 참조하면, 태스크 시작(411)과 응용프로그램 인터페이스(412)는 제1 프로세스(410)으로 동작하나, 공통작업이 필요한 하트비트 송신 프로세스(421) 및 태스크 메모리 프로세스(431)는 각각 제2 프로세스(420) 및 제3 프로세스(430)로 독립적으로 동작할 수 있다.4, the task start 411 and the application program interface 412 operate as the first process 410, but the heartbeat transmission process 421 and the task memory process 431, which require a common task, 2 < / RTI > process 420 and the third process 430, respectively.

이에 따라, 본 발명의 일 실시예에 따른 철강 공정 미들웨어의 시간주기 기반 프레임워크 시스템은 프로세스 개발과 유지관리에 있어, 공통작업들을 독립적으로 프로세스화하고 별도의 시간 주기로 동작할 수 있는 환경을 제공할 수 있다.Accordingly, the time-based framework system of the steel process middleware according to an embodiment of the present invention provides an environment in which processings of common tasks can be independently processed and developed in a separate time period in process development and maintenance .

또한, 프로세스가 시간 주기로 동작할 수 있는 환경의 제공은 미들웨어 서비스 제공 중에 발생할 수 있는 응답시간 저하 현상을 해결할 수 있다In addition, provision of an environment in which a process can operate in a time period can solve the phenomenon of response time degradation that may occur during provision of a middleware service

또한, 프레임워크 시스템이 제공하는 공통작업을 위한 독립적인 프로세스를 활용하여 개발 시간이 단축될 수 있고, 유지보수의 용이성이 확보될 수 있다.
In addition, the development time can be shortened by using an independent process for the common work provided by the framework system, and maintenance can be ensured easily.

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고 후술하는 특허청구범위에 의해 한정되며, 본 발명의 구성은 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 그 구성을 다양하게 변경 및 개조할 수 있다는 것을 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 쉽게 알 수 있다.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not intended to limit the invention to the particular forms disclosed. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.

100: 태스크부
110: 응용 프로그램 인터페이스
120: 태스크 실행환경 관리자
130: 태스크 프로세스 관리자
140: 태스크용 프로세스 풀
200: 에이전트부
210: 미들웨어 서비스 핸들러
220: 서비스 실행환경 관리자
230: 에이전트 프로세스 관리자
240: 에이전트용 프로세스 풀
280: 자원 회수 프로세스 풀
100: Task part
110: Application Interface
120: Task execution environment manager
130: Task Process Manager
140: Process pool for tasks
200: Agent section
210: Middleware service handler
220: Service execution environment manager
230: Agent Process Manager
240: Process Pool for Agent
280: Resource recovery process pool

Claims (11)

태스크가 미들웨어 서비스를 요구할 수 있도록 하는 응용 프로그래밍 인터페이스(API: Application Programming Interface), 및 태스크용 프로세스들을 처리시간에 따라 장시간용 및 단시간용으로 분류하고, 이러한 분류에 따라 상기 태스크용 프로세스들의 초기화, 주기적 실행, 및 삭제를 담당하는 태스크 프로세스 관리자를 포함하는 태스크부; 및
상기 미들웨어 서비스 요구에 응답하여 실행된 서비스 에이전트에게 할당되는 미들웨어 서비스 핸들러, 및 에이전트용 프로세스들을 처리시간에 따라 장시간용 및 단시간용으로 분류하고, 이러한 분류에 따라 상기 에이전트용 프로세스의 생성, 초기화, 주기적 실행, 및 삭제를 담당하는 에이전트 프로세스 관리자를 포함하는 서비스 에이전트부
를 포함하는 프레임워크 시스템.
An application programming interface (API) for allowing a task to request a middleware service, and processes for tasks are classified into a long time and a short time according to processing time, and according to this classification, A task processor including a task process manager responsible for execution, deletion, and deletion; And
A middleware service handler allocated to a service agent executed in response to the middleware service request, and agents for processes for a long time and a short time according to processing time, and generates, initializes, periodically A service agent unit including an agent process manager responsible for executing,
.
제1항에 있어서, 상기 태스크 프로세스 관리자는
상기 태스크용 프로세스들을 생성하고, 처리 소요시간에 따라 분류하여 제1 프로세스 관리자 또는 제2 프로세스 관리자에 위임하는 제1 시간주기 기반 프로세스 관리자;
상기 태스크용 프로세스들의 동작주기를 분석하여 확인주기를 상기 제1 프로세스 관리자 및 상기 제2 프로세스 관리자에 지시하는 제1 최소 관리주기 계산자
를 포함하는 프레임워크 시스템.
The method of claim 1, wherein the task process manager
A first time period based process manager for creating the tasks for the task, and classifying the tasks according to the processing time and delegating them to the first process manager or the second process manager;
And a first minimum management cycle calculator for analyzing the operation cycle of the task processes and instructing the first process manager and the second process manager a confirmation cycle,
.
제 1 항에 있어서, 상기 에이전트 프로세스 관리자는
상기 에이전트용 프로세스들을 생성하고, 처리 소요시간에 따라 분류하여 제3 프로세스 관리자 또는 제4 프로세스 관리자에 위임하는 제2 시간주기 기반 프로세스 관리자; 및
상기 에이전트용 프로세스들의 동작주기를 분석하여 확인주기를 상기 제3 프로세스 관리자 및 상기 제4 프로세스 관리자에 지시하는 제2 최소 관리주기 계산자
를 포함하는 프레임워크 시스템.
The method of claim 1, wherein the agent process manager
A second time period based process manager for creating the processes for the agent, classifying the processes for the processing time, and delegating the processes to the third process manager or the fourth process manager; And
A second minimum management cycle calculator for analyzing the operation cycle of the processes for the agent and instructing the third process manager and the fourth process manager of a confirmation cycle;
.
제 1 항에 있어서, 상기 태스크부는
상기 태스크용 프로세스들을 포함하고 상기 태스크용 프로세스들을 추가, 삭제, 검색 가능한 구조를 가지는 태스크용 프로세스 풀
을 포함하는 프레임워크 시스템.
2. The apparatus of claim 1, wherein the task portion
A process pool for a task including the task processes and having a structure capable of adding,
. ≪ / RTI >
제4항에 있어서, 상기 태스크용 프로세스 풀은
복수의 태스크가 시간의 보정을 분산 처리 하도록 하는 시간보정 프로세스를 포함하는 프레임워크 시스템.
5. The method of claim 4, wherein the task process pool
A framework system comprising a time correction process for causing a plurality of tasks to distribute correction of time.
제4항에 있어서, 상기 태스크용 프로세스 풀은
주기적으로 상기 태스크의 정상 동작을 미들웨어에 알리는 하트비트 송신 프로세스를 포함하는 프레임워크 시스템.
5. The method of claim 4, wherein the task process pool
And a heartbeat transmission process for periodically notifying middleware of a normal operation of the task.
제4항에 있어서, 상기 태스크용 프로세스 풀은
상기 태스크의 작업 결과를 태스크부의 공유메모리와 동기화하도록 하는 태스크 메모리 프로세스를 포함하는 프레임워크 시스템.
5. The method of claim 4, wherein the task process pool
And a task memory process for synchronizing a task result of the task with a shared memory of the task unit.
제1항에 있어서, 상기 서비스 에이전트부는
상기 에이전트용 프로세스들을 포함하고 상기 에이전트용 프로세스들을 추가, 삭제, 검색 가능한 구조를 가지는 에이전트용 프로세스 풀
을 포함하는 프레임워크 시스템.
The method of claim 1, wherein the service agent unit
A process pool for the agent including the processes for the agent and having a structure capable of adding, deleting, and searching the processes for the agent
. ≪ / RTI >
제8항에 있어서, 상기 에이전트용 프로세스 풀은
상기 서비스 에이전트의 작업 결과를 서비스 에이전트부의 공유메모리와 동기화하도록 하는 에이전트 메모리 프로세스를 포함하는 프레임워크 시스템.
9. The method of claim 8,
And an agent memory process for synchronizing the operation result of the service agent with the shared memory of the service agent unit.
제8항에 있어서, 상기 에이전트용 프로세스 풀은
일정 수의 확인주기 동안 파일의 잠금이 유지되는 경우 비정상 잠금으로 판단하고 이를 해제하는 비정상 잠금해제 프로세스를 포함하는 프레임워크 시스템.
9. The method of claim 8,
And an abnormal unlocking process for determining that the file is unlocked when the lock of the file is maintained for a predetermined number of check cycles and releasing it.
제8항에 있어서, 상기 에이전트용 프로세스 풀은
상기 태스크의 비정상 종료를 주기적으로 확인하여 비정상 종료의 이벤트가 발생한 태스크에 할당된 자원을 회수하는 자원 회수 프로세스를 포함하는 프레임워크 시스템.
9. The method of claim 8,
And a resource collection process for periodically confirming an abnormal end of the task to recall resources allocated to a task in which an event of abnormal end occurs.
KR1020140186901A 2014-12-23 2014-12-23 Time period based framework system of steel process middleware Active KR101639911B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140186901A KR101639911B1 (en) 2014-12-23 2014-12-23 Time period based framework system of steel process middleware

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140186901A KR101639911B1 (en) 2014-12-23 2014-12-23 Time period based framework system of steel process middleware

Publications (2)

Publication Number Publication Date
KR20160077431A KR20160077431A (en) 2016-07-04
KR101639911B1 true KR101639911B1 (en) 2016-07-15

Family

ID=56500883

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140186901A Active KR101639911B1 (en) 2014-12-23 2014-12-23 Time period based framework system of steel process middleware

Country Status (1)

Country Link
KR (1) KR101639911B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100953732B1 (en) * 2008-12-29 2010-04-19 주식회사 포스코아이씨티 Apparatus for managing a task

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100896245B1 (en) * 2004-04-28 2009-05-08 후지쯔 가부시끼가이샤 Task computing
KR101091325B1 (en) 2008-12-26 2011-12-07 주식회사 포스코 Middleware for steel process control and service providing method in the middleware
KR101594629B1 (en) * 2009-12-29 2016-02-16 주식회사 포스코 Steel process control system and method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100953732B1 (en) * 2008-12-29 2010-04-19 주식회사 포스코아이씨티 Apparatus for managing a task

Also Published As

Publication number Publication date
KR20160077431A (en) 2016-07-04

Similar Documents

Publication Publication Date Title
US10776147B2 (en) Orchestration engine for migrating application data and application services using migration steps in migration component
CN104583960B (en) Transaction-level health monitoring for online services
US20180143854A1 (en) Methods, systems and apparatus to perform a workflow in a software defined data center
JPWO2017170470A1 (en) Network function virtualization management orchestration apparatus, method and program
US11748163B2 (en) Control token and hierarchical dynamic control
US20070206611A1 (en) Effective high availability cluster management and effective state propagation for failure recovery in high availability clusters
CN103455368B (en) A kind of deadlock detection method, node and system
CN111831408A (en) Asynchronous task processing method and device, electronic equipment and medium
US11449350B2 (en) Systems and methods for automatically updating compute resources
US9342369B2 (en) System and method for increasing throughput of a PaaS system
JPWO2017183565A1 (en) Network system, patch file application method, and program
CN112486502B (en) Distributed task deployment method, distributed task deployment device, computer equipment and storage medium
CN111190732A (en) Timed task processing system and method, storage medium and electronic device
US8051427B2 (en) Method of establishing a logical state of an instance using non-deterministic operation results stored in a result log
JP2018535456A (en) System and method for starting application servers in parallel
CN109257396B (en) Distributed lock scheduling method and device
CN113342499B (en) Distributed task calling method, device, equipment, storage medium and program product
US11397632B2 (en) Safely recovering workloads within a finite timeframe from unhealthy cluster nodes
US10970098B2 (en) Methods for sharing input-output device for process automation on a computing machine and devices thereof
US20070101328A1 (en) Sequencing a single task sequence across multiple operating environments
JP2022549824A (en) Providing optimization in microservice architectures
US11907364B2 (en) Managing incompliances identified at instances of cloud applications
US20150378809A1 (en) Methods for implementing error detection and recovery and devices thereof
KR101639911B1 (en) Time period based framework system of steel process middleware
CN116756048B (en) Code analysis method, device, computer equipment and storage medium

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R14-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000