KR20010099919A - 컴퓨터를 스케쥴하고 모니터링하기 위한 시스템 - Google Patents

컴퓨터를 스케쥴하고 모니터링하기 위한 시스템 Download PDF

Info

Publication number
KR20010099919A
KR20010099919A KR1020017008027A KR20017008027A KR20010099919A KR 20010099919 A KR20010099919 A KR 20010099919A KR 1020017008027 A KR1020017008027 A KR 1020017008027A KR 20017008027 A KR20017008027 A KR 20017008027A KR 20010099919 A KR20010099919 A KR 20010099919A
Authority
KR
South Korea
Prior art keywords
job
task
scheduling
execution
enterprise
Prior art date
Application number
KR1020017008027A
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 KR20010099919A publication Critical patent/KR20010099919A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5033Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering data affinity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

단일 컴퓨터 상에서 또는 다수의 컴퓨팅 플랫폼에 걸쳐 스케쥴링 서비스를 제공하기 위해 개별적인 프로그램 또는 그 슈트에 컴파일되어 링크된 일단의 어플리케이션 프로그래밍 인터페이스(API)를 제공하는 작업 스케쥴링 장치는, 작업 파라메타를 검색하고 작업 파라메타를 유효화하기 위한 GUI API, 작업 파라메타에 기초하여 작업들을 할당하기 위한 작업 스케쥴링 API, 및 컴퓨터 플랫폼의 하나 이상의 노드에 호스트된 엔터프라이즈 스케쥴링 에이젼트를 포함한다. 엔터프라이즈 통신 에이젼트는 작업 스케쥴링 장치를 이용하는 프로그램을 실행하는 컴퓨터로부터 작업이 실행될 선택된 노드 상의 엔터프라이즈 스케쥴링 에이젼트로 작업을 포함하는 메시지를 전송한다. 다음에, 엔터프라이즈 스케쥴링 에이젼트는 작업 파라메타를 검색하고 선택된 노드 상에 작업을 발주한다. 엔터프라이즈 스케쥴링 에이젼트는 그의 대응하는 노드 상에서 실행되는 각 작업에 대한 작업 정보를 포함하는 로컬 저장고를 유지하고, 모든 노드 상에서 실행되는 작업에 대한 정보를 포함하는 중앙 작업 저장고를 유지하기 위해 작업 데이타 관리 API로 메시지를 전송한다.

Description

컴퓨터를 스케쥴하고 모니터링하기 위한 시스템{SYSTEM FOR SCHEDULING AND MONITORING COMPUTER PROCESSES}
오늘날의 컴퓨터 시스템은 넓은 범위의 작업에 이용되고 있다. 많은 작업들은 단순하고, 실시간으로 실행된다. 그러나, 일부 작업은 긴 실행 시간을 필요로 하거나 또는 여러 순간에 걸쳐 또는 편리하지 않은 시간에(작업이 실행하고 있는 시스템의 작업 부하가 적을 때, 예를 들면 이른 아침 또는 주말 시간에) 수행되어야만 한다.
기본적인 스케쥴링 장치는 다양한 순간에 걸쳐 또는 지정된 실행 시간에 임의의 프로그램 또는 작업을 실행하는데 이용된다. 그러나, 이들 시스템은 적절한 서비스를 제공하지 못하거나 임의의 특정 프로덕트 라인에 일관성있게 통합하지 못하고 더우기 네트워크 환경에서 다수의 컴퓨팅 플랫폼 간에 적절한 서비스를 제공하지 못하고 있다.
[발명의 개요]
따라서, 본 발명의 목적은 작업을 스케쥴링하기 위한 작업 스케쥴링 장치를 제공하는데 있다.
본 발명의 다른 목적은 다수의 컴퓨팅 플랫폼에 걸친 작업 스케쥴링 및 제출된 작업의 실행에 대한 제어를 제공하는 작업 스케쥴링 장치를 제공하는 것이다.
본 발명의 또 다른 목적은 각각의 노드에 제출된 작업을 수락하고 관리하기 위한 컴퓨터 네트워크의 각각의 노드에 대한 스케쥴링 에이젼트를 제공하는 것이다.
본 발명의 또 다른 목적은 작업 상태를 판정하고, 조직체 내의 노드 상에서 실행하는 작업들에 작업 제어 명령을 발행하는데 이용될 수 있는 명령어 라인을 제공하는 것이다.
본 발명의 또 다른 목적은 작업의 제출 및 스케쥴링을 위한 명령어 포맷을 갖는 복수의 소프트웨어 프로덕트를 위한 일관성있는 작업 스케쥴링 장치를 제공하고, 작업 스케쥴링 장치를 이용하는 소프트웨어 프로덕트에 대한 일관적인 어플리케이션 프로그래밍 인터페이스를 제공하는 것이다.
본 발명의 또 다른 목적은 프로덕트의 작업 스케쥴링 조건을 특정하게 그리고 효율적으로 타겟화하는(targets) 공통 어플리케이션 프로그래밍 인터페이스 하의 모든 POEMS 인에이블 프로덕트를 위한 단일의 작업 스케쥴링 및 관리 툴을 제공하는 것이다.
본 발명의 또 다른 목적은 GUI 구성요소 및 에이젼트에 의해 사용되는 모든 작업 및 공통 API를 스케쥴하고 리스트하는 공통 그래픽 사용자 인터페이스(예를 들면, 마이크로소프트 파운데이션 클래스(MFC))를 제공하는 것이다.
본 발명은 컴퓨터 프로세스의 스케쥴링과 모니터링에 관한 것이다. 더 상세하게, 본 발명은 실행을 위한 작업의 제출(submission)에 관한 것이다. 본 발명은 또한 다수의 네트워크된 컴퓨터 플랫폼(노드)에 걸친 작업의 제출, 스케쥴링 및 모니터링, 및 작업에 제출하는 프로그램용 공통 인터페이스를 제공하는 것에 관한 것이다.
본 발명은 또한 각각의 노드에 대한 상세한 작업 이력을 갖는 로컬 작업 저장고와, 조직체 전체에 걸친 상세한 작업 이력을 유지하는 중앙 작업 저장고를 유지하는 작업 스케쥴러에 관한 것이다. 본 발명은 또한 각각의 제출된 작업의 실행을 시작하기 위해 각각의 컴퓨터 플랫폼에 대한 스케쥴링 에이젼트를 제공하는 것에 관한 것이다.
본 발명의 보다 완전한 이해 및 그 부수적인 많은 장점들은 이하의 첨부하는 도면을 참조하여 다음의 상세한 설명을 참조함으로서 보다 용이하게 잘 이해할 수 있을 것이다.
도 1은 공통 어플리케이션 프로그래밍 인터페이스 하의 POEMS 인에이블 프로덕트에 대한 작업 스케쥴링 및 관리 툴을 제공하는 본 발명의 실시를 예시하는 블럭도.
도 2는 노드에 대한 실행 및 작업 이력 제출을 주선하는 라이트웨이트 엔터프라이즈 스케쥴러(Lightweight Enterprise Scheduler (LES))의 블럭도.
도 3은 메시지를 수신 모듈로 전달하는데 이용되는 RTserver를 예시하는 순서도.
도 4는 메시지를 특정 노드에 구독된 수신 모듈에 전달하는데 이용되는RTserver를 예시하는 순서도.
도 5는 플래티넘 엔터프라이즈 커뮤니케이터(Platinum Enterprise Communicator (PEC))의 LES 에이젼트 수신을 예시하는 순서도.
도 6은 PEC를 거쳐 포인트 프로덕트 프로세스(point product process)에 포인트 프로덕트 파라메타를 전달하는 LES 에이젼트를 예시하는 순서도.
도 7A는 LES 에이젼트의 개시를 예시하는 순서도.
도 7B는 LES 에이젼트의 프로세스를 예시하는 순서도.
도 8은 LES 디렉토리 구조를 예시하는 블럭도.
도 9는 어플리케이션과 포인트 프로덕트의 사용자 식별 조건을 예시하는 플래티넘 보안 모델의 블럭도.
도 10은 POEMS 스케쥴링 서비스 작업 스케쥴링 윈도우를 도시하는 도면.
도 11은 포인트 프로덕트 프로퍼티 쉬트(Point Product Property sheet)를 도시하는 도면.
도 12는 포인트 프로덕트 프로퍼티 쉬트 상의 풀 다운 캘린더를 도시하는 도면.
도 13은 포인트 프로덕트 프로퍼티 쉬트를 거쳐 실행하도록 스케쥴된 예시적인 작업을 도시하는 도면.
도 14는 포인트 프로덕트 프로퍼티 쉬트를 거쳐 실행하도록 스케쥴된 다른 예를 도시하는 도면.
도 15는 매일 실행하도록 스케쥴된 작업의 예를 도시하는 도면.
도 16은 매주 특정 날짜에 실행하도록 스케쥴된 작업을 예시하는 도면.
도 17은 매달 선정된 특정 날짜에 실행하도록 스케쥴된 작업의 예를 도시하는 도면.
도 18은 매년 지정된 날짜에 한번 실행하도록 스케쥴된 작업의 예를 도시하는 도면.
도 19는 통지 스크립트 윈도우를 도시하는 도면.
도 20은 캘린더 선택 윈도우를 도시하는 도면.
도 21은 캘린더와 연관된 작업을 실행하기 위한 선택된 날짜를 갖는 캘린더를 생성하는데 이용되는 생성 캘린더 윈도우(Create Calendar window)를 도시하는 도면.
도 22는 편집을 위해 불리워진 기존의 캘린더를 도시하는 도면.
도 23은 전략 윈도우(strategy windows)를 생성하고, 편집 및 삭제를 위한 전략을 선택하는데 이용되는 전략 스케쥴링 윈도우를 도시하는 도면.
도 24는 전략 스케쥴링 윈도우로부터 생성(Create)을 클릭함으로써 호출되는 포인트 프로덕트 프로퍼티 쉬트를 도시하는 도면.
도 25는 스케쥴의 삭제시 클린업(clean-up) 스크립트를 식별하기 위한 프롬프트를 갖는 삭제(Deletion) 스케쥴 윈도우를 도시하는 도면.
도 26은 삽입 객체 윈도우(Insertion Object window)를 도시하는 도면.
도 27은 프로퍼티 윈도우의 포괄적인 탭(General tab)을 도시하는 도면.
도 28은 프로퍼티 윈도우의 표현 탭을 도시하는 도면.
도 29는 객체를 표현하기 위한 아이콘 그래픽스를 선택하는데 이용되는 선택 인텔리콘(Select Intellicon) 비트맵을 도시하는 도면.
도 30은 작업 자원 객체를 위한 레이블을 표시하기 위한 익스플로러 뷰에서의 예를 도시하는 도면.
도 31은 프로퍼티 윈도우의 작업 저장고(Job Repository) 탭을 도시하는 도면.
도 32는 작업 자원 객체의 폴더의 계층을 도시하는 도면.
도 33은 전체 작업 폴더(All Jobs folder) 내의 작업의 리스트를 도시하는 도면.
도 34는 전체 작업 임의 상태 폴더(All Jobs Any Status folder) 내의 작업을 도시하는 도면.
도 35는 작업의 실행 이력 예를 도시하는 도면.
도 36은 특정 노드 하의 전체 작업 임의 상태 (All Jobs Any Status) 폴더 내의 작업의 리스트를 도시하는 도면.
도 37은 작업을 위해 이용가능한 프로퍼티 페이지 탭을 도시하는 도면.
도 38은 공통 탭 프로퍼티 페이지를 도시하는 도면.
도 39는 데이타베이스 탭 프로퍼티 페이지를 도시하는 도면.
도 40은 작업 스케쥴링 탭 프로퍼티 페이지를 도시하는 도면.
도 41은 파라메타 탭 프로퍼티 페이지를 도시하는 도면.
도 42는 작업 실행에 대한 정보에 관한 포괄 탭 프로퍼티 페이지를 도시하는도면.
도 43은 작업 실행에 프로덕트 특정 정보를 디스플레이하는 실행 상태 탭 프로퍼티 페이지를 도시하는 도면.
도 44는 작업 자원 객체의 그룹의 텍스트에 대한 포괄 탭 프로퍼티 페이지를 도시하는 도면.
도 45는 디렉토리 익스플로러 뷰의 로그 파일 컬럼의 뷰를 도시하는 도면.
도 46은 로그파일(Logfile)을 뷰잉하기 위한 팝업 메뉴의 이용을 도시하는 도면.
도 47은 특정 작업 실행을 위해 디스플레이되는 로그 파일 뷰어를 도시하는 도면.
도 48은 작업의 폴더를 삭제하는데 이용되는 팝업 메뉴를 도시하는 도면.
도 49는 삭제 작업 윈도우를 도시하는 도면.
도 50은 상태 및 결과 윈도우를 도시하는 도면.
도 51은 단일 작업을 삭제하기 위한 팝업 메뉴의 이용을 도시하는 도면.
도 52는 삭제 작업 윈도우를 도시하는 도면.
도 53은 단일 작업의 삭제를 위한 상태 및 결과 윈도우를 도시하는 도면.
도 54는 폴더 레벨에서 다수의 작업의 재실행을 호출하기 위한 팝업 윈도우의 이용을 도시하는 도면.
도 55는 재실행 작업 팝업 윈도우를 도시하는 도면.
도 56은 작업 폴더 내의 작업을 재실행을 위한 상태 및 결과 윈도우를 도시하는 도면.
도 57은 단일 작업을 재실행하기 위한 팝업 윈도우의 이용을 도시하는 도면.
도 58은 개별 작업을 위한 재실행 작업 윈도우를 도시하는 도면.
도 59는 실행하는 작업을 취소하기 위한 팝업 윈도우의 이용을 도시하는 도면.
도 60은 취소 실행 팝업 윈도우를 도시하는 도면.
도 61은 실행하는 작업에 대한 진행 모니터(Progress Monitor)를 호출하기 위한 팝업 윈도우의 이용을 도시하는 도면.
도 62는 상태, 전체적인 프로그(prog) 및 작업에 대한 다른 특정 정보를 도시하기 위해 본 발명에 의해 이용되는 진행 모니터를 도시하는 도면.
도 63은 디렉토리 서비스 관리자 모니터를 도시하는 도면.
도 64는 노드에 상주하는 프로그램에 대한 정보를 디스플레이하는 서비스 관리자 모니터의 우측을 도시하는 도면.
지금부터, 몇몇 도면에 걸쳐 유사한 참조부호가 동일하거나 대응하는 부분을 가리키는 도면을 참조하여, 특히 도 1을 참조하면, 공통 어플리케이션 프로그래밍 인터페이스 하의 POEMS 인에이블 프로덕트(enabled products)(예를 들면, 플래티넘 포인트 프로덕트(Platinum point products))에 대한 작업 스케쥴링 및 관리 툴을 제공하는 본 발명의 실시를 예시하는 블럭도가 도시되어 있다.
도 1에서, 포인트 프로덕트 GUI(110)를 각각 포함하는 포인트 프로덕트(100)의 슈트(suite)(포인트 프로덕트 1...n)는 다양한 POEMS 인에이블링 어플리케이션 프로그래밍 인터페이스 (API) 및 플래티넘 엔터프라이즈 커뮤니케이터(PEC)(160)와 함께 링크되어 있다. 포인트 프로덕트 GUI(110)는 포인트 프로덕트(100)에 사용자 인터페이스를 제공하고, 작업 데이타를 GUI API(115)에 전달함으로써 사용자 선택을 전달한다.
GUI API(115)는 LES 제공 프로퍼티 페이지(property page)를 일체화하며, 작업 점검 및 작업 할당을 수행하며, 작업 파라메타에 따라 작업 스케쥴링 API(130) 내의 관련된 스케쥴링 함수를 호출한다. GUI API(115)는 포인트 프로덕트 GUI(110)에 의해 사용된다.
작업 스케쥴링 API(130)는 스케쥴링 서비스를 수행하고, 제출된 작업을 할당 및 정의하고, 작업(예를 들면, LEX 노드 1(170))을 실행하기 위해 PEC 메시지를 선택된 노드 상의 LES 에이젼트에 초기화함으로서 작업을 분배한다. 프로세스간 통신은 PEC(160)를 거쳐 수행된다. 작업 스케쥴링 API는 바람직하게 포인트 프로덕트 GUI(110)에 의해 사용된다.
LES 에이젼트(170)는 작업 스케쥴링 API(130)에 의해 요청되면 작업의 처리를 초기화한다. 본 발명은 다수의 컴퓨팅 플랫폼 및/또는 노드에 걸쳐 구현될 수 있으며, LES 에이젼트는 작업이 실행하는(LES 에이젼트 1..n) 각각의 노드상에 설치된다.
각각의 LES 에이젼트는 그 각각의 노드에 제출된 각각의 작업에 대한 작업 정보를 유지하는 로컬 작업 저장고(180)를 갱신한다. 로컬 작업 저장고는 작업이실행하는 각각의 노드 상에 설치되고, SQL*Anywhere(자원의 효율성을 위해 작은 풋프린트(footprint)를 갖는 데이타베이스 제품)을 사용하여 구현될 수 있다. 다른 SQL 제품 및 다양한 데이타베이스/저장고 구성이 대체될 수 있다.
중앙 작업 저장고(190)는 시스템 내의 각 노드에 제출된 모든 작업에 대한 작업 데이타의 슈퍼 세트(super set)를 유지한다. 중앙 작업 저장고는 작업 데이타 관리 API(140)에 의해 유지되고, 관계 데이타베이스 관리 시스템(RDBMS), Dex 또는 다른 데이타베이스 저장고 또는 관리 시스템에 구현된다.
작업 데이타 관리 API(140)는 작업 및 작업 이력을 선택, 삽입, 갱신 또는 삭제한다. 국부적 및 중앙 작업 저장고 모두는 작업 데이타 관리 API에 의해 갱신된다. 또한, 작업 데이타 관리 API(140)는 내부적으로 작업 스케쥴러 및 LES 에이젼트에 의해 사용된다. 작업 스케쥴링 API는 데이타를 PEC 메시지 포맷으로 변형한다.
중앙 작업 저장고(190)의 위치는 RDEX(관계 데이타 교환)에 의해 결정된다. 만일 어떠한 DEX(데이타 교환) 정보도 이용가능하지 않으면, SDM(소프트웨어 딜리버리 매니저) 인스톨 프롬프트는 테이블 위치 정보에 이용된다. POEMS 환경, PEC(160), LES 에이젼트 등의 셋업을 위한 구성 파일은 각각의 클라이언트 머신의 중앙 작업 저장고와 동일한 노드 및 작업이 실행하는 각각의 노드 상에 유지된다.
포인트 프로덕트 API(120)는 각각의 포인트 프로덕트에 의한 액세스를 허용하여 작업 상태, 작업 로그파일을 판정하고, 셋업 및 취소 함수(작업)를 수행하고, 작업 로그파일을 갱신하고, 작업이 실행됨에 따라 작업 파라메타를 검색하도록 제공된다. POEMS 구성에서, 이와 같은 API는 포인트 프로덕트 익스큐터블(executable)(예를 들면, 포인트 프로덕트(100))에 의해 이용된다.
LES 명령어 라인(155)은 명령어 라인 액세스를 작업 상태, 셋업, 취소를 판정하거나 작업 로그파일을 갱신하고, 작업 파라메타를 검색하는 것을 포함하여) 작업 관리 함수(작업 관리 API(150)와의 통신에 의해)에 제공한다.
작업 관리 API(150)는 기존의 작업을 삭제, 취소, 재실행 또는 복사한다. 이 API는 내부적으로 LES 명령어 라인(155) 및 (다양한 포맷으로 보일 수 있는 작업의 리스트를 포함하는) 작업 폴더(185)에 의해 사용된다.
포인트 프로덕트 API(120), 작업 스케쥴링 API(130), 작업 데이타 관리 API(140) 및 작업 관리 API(150)의 각각은 필요에 따라 PEC 메시지를 거쳐 노드 1..n 상에 설치된 임의의 LES 에이젼트와 통신한다.
PEC 메시지는 LES 인에이블 워크스테이션 및 다양한 API 간에 통신하는 포맷으로 제공된다.
캘린더링 API(165)는 캘린더 함수를 관리하기 위해 제공되고, 내부적으로 다른 API 및 포인트 프로덕트 GUI에 의해 사용된다.
POEMS 인에이블 포인트 프로덕트 및 컴퓨팅 네트워크 또는 시스템의 노드에 설치된 LES 에이젼트는 이하에 하이트웨이트 엔터프라이즈 스케쥴러(Lightweight Enterprise Scheduler)(LES)라고 하는 공통 작업 스케쥴링 서비스를 제공한다. LES는 사용자로 하여금 새로운 작업을 스케줄하고, 작업을 삭제하고, 실행하는 작업을 취소하고, 작업을 재실행하게 한다.
예시적인 LES 작업 흐름이 다음에 단계에 제공된다.
1. 포인트 프로덕트 GUI에 작업 파라메타를 입력한다.
2. "Finigh/OK" 버튼을 누른다.
3. 작업 파라메타가 LES 작업 분배기에 전달된다.
4. 부(parent) 작업 엔트리가 중앙 저장고에 놓인다.
5. 작업 파라메타가 PEC를 사용하여 LES 에이젼트에 전달된다.
6. 작업 파라메타가 로컬 작업 테이블에 저장된다. (만일 이 단계가 실패하면, 작업이 노드에 스케쥴되어 있지 않다는 것을 가리키는 이벤트/알람이 전달된다.)
7. 자(child) 작업이 생성되어 중앙 저장고에 저장된다.
8. 선택된 노드의 각각에 대해 단계 5-7을 반복한다.
9. 적절한 때에, 작업이 개시된다(이는 포인트 프로덕트 익스큐터블을 초기화시킨다)
10. 작업 파라메타가 LES API를 사용하여 작업 테이블로부터 얻어진다.
11. 작업 진행 메시지가 송부된다.
12. 작업의 진행이 진행 모니터를 사용하여 콘솔에 표시된다.
13. 작업이 완료하고, LES 에이젼트는 로컬 작업 이력 테이블에 레코드를 놓는다.
14. LES 에이젼트는 중앙 작업 이력 테이블에 레코드를 놓는다.
15. LES 에이젼트는 "w작업 완료" 이벤트를 송부한다.
LES 에이젼트
도 2는 LES 에이젼트(예를 들면, LES 에이젼트(170))의 주요 구성요소 및 통신을 예시하는 블럭도이다. LES 에이젼트는 세가지 주요 부분으로 구성된다:
1. 통신 모듈(210)- 작업 분배 API에서 포인트 프로덕트로 그리고 포인트 프로덕트에서 작업 분배 API로 PEC 메시지를 전달하고 수신한다.
2. 작업 관리 모듈(220)-LES 커널. 에이젼트의 이 부분은 내부 환경, 및 메모리를 셋업하고, 작업을 시작하며, 작업을 실행하고, 작업 프로세스를 관리한다.
3. 데이타 관리 모듈(230)-로컬 및 중앙 저장고(각각 180 및 190)로부터 데이타를 갱신 및 삭제한다.
하위 레벨 함수 API(240)는 모든 에이젼트 모듈에 이용가능하다. 이 하위 레벨 API는 모든 내부 함수, 파일 관리 및 메시지를 다룬다.
도 3은 PEC 메시지가 어떻게 해서 정상적으로 라우트되는지를 예시하는 순서도이다. 전송 모듈(300)은 메시지(320a, 320b)의 사본을 수신 모듈(340a,340b) 각각에)(예를 들면, LES 에이젼트) 전달하는 RT 서버에 의해 수신되는 목적지가 내부에 인코드된 메시지(320)를 전달한다.
RT 서버가 하나 이상의 에이젼트에 동일한 작업 메시지를 운반하는 것을 방지하기 위해, LES 에이젼트는 PTLES_<nodeaddress> 데이타그룹(datagroup)으로서 등록한다. 이 등록은 유일한 데이타그룹을 갖는 각각의 LES 에이젼트를 식별하여, 메시지들이 메시지에 대응하는 데이타그룹의 노드로 라우트될 수 있게 된다.
각각의 LES 에이젼트가 현재의 노드 어드레스(호스트명) 메시지를 구독하여,각각의 송신자는 또한 어떤 노드가 메시지를 수신할 것인지를 명시하여야 한다. 적합한 메시지 라우팅이 도 4에 도시되어 있는데, 도 4는 메시지(320)를 수신1 모둘(345a) 및 사본을 수신하는 수신 모듈(345b)에 전달하는 RT 서버(310)를 도시한다. RT 서버는 프로세스가 관리되는 각각의 머신 상에서 실행하고, PEC 라우팅을 정확한 목적지에 제공한다.
도 5는 LES 에이젼트(500)에 들어오는 메시지의 흐름을 도시하는 순서도이다. 들어오는 모든 메시지는 클라이언트 프로세스(520), 포인트 프로덕트 에이젼트(530) 또는 LES 에이젼트와 통신하는 다른 모듈중의 하나로부터 PEC 통신 API(예를 들면 PEC(160), 도 1 참조)를 거쳐 수신된다. 각각의 메시지는 RT 서버(예를 들면, 510a,510b)를 거쳐 LES 에이젼트(500)로 라우트된다.
도 6은 LES 에이젼트(500)로부터 포인트 프로덕트 에이젼트(530)의 역 메시지 트래픽을 도시한다. LES 에이젼트(500)는 PEC 메시지를 사용하여 RT 서버(510)를 거쳐, 포인트 프로덕트 파라메타를 포인트 프로덕트 프로세스(에이젼트)(530)에 전달한다.
도 7A는 LES 에이젼트 개시를 위한 단계를 도시하는 순서도이다. 단계(705)에서, LES 구성 파일(이는 저장고의 위치에 대한 개시 정보, 셋업 및 동작 방법을 찾기 위한 LES를 위한 정보를 유지함)이 로드된다. 단계(710)에서, LES 로컬 작업 저장고 테이블이 생성된다(예를 들면, 로컬 작업 저장고1(180), 도 1 참조). 만일 로컬 작업 저장고가 LES 에이젼트가 시작되는 노드에 이미 존재하면 단계(710)는 바이패스된다.
단계(715)에서, 로컬 작업 저장고는 중앙 작업 저장고(190)와 동기화된다. 예를 들어, 동기화 프로세스는 중앙 작업 저장고를 갱신하여 로컬 작업 저장고 내의 각 엔트리에 반영하며, 이 프로세스는 중앙 작업 저장고가 엔터프라이즈 전체에 걸쳐 각각의 작업에 대한 레코드를 유지하게 한다.
단계(720)에서, 이력 흐름이 만료된 모든 작업(중앙 및 로컬 모두)에 대해 부가된다. 만료된 작업에 대한 정보는 이력 목적을 위해 유지된다.
단계(725)에서, PEC 호출 함수(call back functions)가 초기화된다. PEC 호출 함수는 PEC(160)와의 통신을 허용하는 적당한 API 인터페이스를 제공한다.
단계(730)에서, 동기화 타임아웃이 계산되고 셋업된다. 동기화 타임아웃은 다른 저장고에 접속하기 위해 얼마나 오랫동안 기다려야할 지를 제어하는데 이용된다.
도 7B에 도시된 바와 같이, 일단 LES 에이젼트가 시작되면, LES가 설치된 노드에 대해 실행되도록 선택된 작업 프로세스의 수신과 개시를 수행하기 시작한다. 단계(750)에서, LES 에이젼트는 실행할 다음 작업의 셋업을 계산하고 수행하며, 다음에 대기 루프(760)에 진입하고, 여기서 LEC 에이젼트는 PEC 메시지, 동기화 타임아앗 및 실행할 다음 작업에 대한 타임아웃중의 하나를 대기한다.
대기 루프가 실행할 다음 작업에 대해 타임아웃하면, 현재 작업(타임아웃한 다음 작업)을 실행하고, 작업의 시작 상태를 갱신하고, ((로컬 및 중앙 저장고 모두에서 갱신 및 생신 행위가 수행되는) 실행 이력 행을 생성하는 것을 포함하는) 단계(770)가 수행된다.
루프가 동기화에 대해 타임아웃하면, 중앙/로컬 동기화 프로그램이 실행된다(로컬과 중앙 및 중앙과 로컬을 동기화).
루프가 PEC 메시지를 수신하면, LES 에이젼트는 PEC 메시지에 포함되어 있는 행위를 수행한다(단계 780). LES 에이젼트에 의해 수신된 PEC 메시지는 작업 실행, 작업 취소, 작업 상태 갱신, 작업 파라메타 요청(작업 파라메타는 프로덕트가 사용자명, 데이타베이스 명을 필요로 하는 정보이고, 포인트 프로덕트에 의해 설정되고, 포인트 프로덕트가 원하는 것을 사용할 수 있는 LES 데이타베이스의 영역 내의 LES API에 저장된다)하는 메시지를 포함한다.
작업 타임아웃, 동기화 타임아웃 또는 PEC 메시지 행위(각각 단계, 770, 790 및 780)의 완료시에, LES 에이젼트는 실행할 다음 작업을 계산하고 셋업하며(단계 750를 반복), 대기 루프(760)에 재진입한다.
POEMS 스케쥴링 서비스가 작업을 부가하도록 이용될 때, 포인트 프로덕트 GUI(110)는 작업을 제출하기 위해 작업 스케쥴링 API(130)호출한다.
API는 다음 단계를 수행한다.
1. 중앙 저장고에 작업을 저장한다.
2. 에이젼트가 존재하는 지를 점검한다.
3. 만일 에이젼트가 실행하면, 에이젼트에 PEC 메시지(작업을 포함)를 전달한다.
에이젼트는 다음 단계를 수행한다.
1. PEC 메시지를 수신한다.
2. 로컬 저장고에 작업을 저장한다.
3. 작업을 실행할 때를 점검한다.
4. 명령어 라인을 발주한다.
LES 에이젼트는 계층적으로 구성된 디렉토리 구조에 유지되고, 한 예가 도 8에 도시되어 있다. 최상위 레벨 디렉토리 $PLATHOME(800)는 플래티넘 프로덕트(다른 프로덕트가 선택적으로 사용될 수 있음)에 관련된 파일을 포함하는 관련된 모든 디렉토리를 포함한다. POEMS 루프 디렉토리, $ptroot(810)는 모든 디렉토리 및 인에이블링 POEMS에 관련된 파일을 유지한다.
cfgref(830) 디렉토리는 예를 들어, 구성 파일(195)를 유지한다.
shlib*(840) 디렉토리는 공유 라이브러리인 모든 *.lib 및 *.so 파일을 유지한다.
bin(850) 디렉토리는 ptles* 파일(852), *.dll(854) 및 *sql.dll(856) 파일의 각각의 개별적으로 유지한다. ptles* 파일(852)은 ptlesag, ptelstp, ptlestab 및 다른 관련된 파일을 포함한다. *.dll(854)은 다이나믹 링크 라이브러리의 각각을 유지하고, *sql.dll(856)은 LES 함수를 위한 LES 질의를 유지한다.
로그(860) 디렉토리는 ptlesag.log(865) 로그파일(진단 로그, 및 실행 및 에러에 대한 info log를 포함)을 유지한다.
도 9에 도시된 바와 같이, 한 실시예에서, 플래티넘 보안 모델은 많은 어플리케이션/포인트 프로덕트가 성공하기 위해 특정 사용자로서 실행할 것을 필요로 한다.
AutoLogin API는 실행시 사용자를 질의하지 않고 그리고 작업의 일부로서 UNIX 사용자를 하드코딩(hard-coding)하지 않고, a16 특정 운영체제로서 작업을 실행하는 방법을 제공한다.
이와 같은 특징의 장점을 취하기 위해, 어플리케이션은 PtLESSetJobCommand() 함수를 이용하고, 사용자명과 역할을 LES에 전달할 수 있다. 만일 사용자명과 역할이 NULL로 설정되면, LES는 디폴트 플래티넘 사용자(또는 다른 디폴트 사용자)로서 작업을 실행한다. 그렇지 않으면 LES는 AutoLogin API를 호출하고, 요청된 사용자 및 요청된 역할로서의 사용자 아이디와 패스워드를, 자원 종류로서의 운영체제 및 자원 인스턴스로서의 작업 인스턴스 명을 전달함으로서 사용자명과 역할을 검색하려 시도한다.
AutoLogin에서의 로그인 정보 입력
AutoLogin 실시예에서, 관리자는 LES/OS 자원을 셋업하기 위해 'root'라고 표시한다.
POEMS 디렉토리로부터:
1. Tools->Security Admin->AutoLogin을 선택한다.
2. "root'라고 로그인한다. 만일 이미 로그인 되었으면, 관리자 AutoLogin을 실행하기 전에 "rtlogout.exe"이 이용될 수 있다.
3. AutoLogin 관리 윈도우가 디스플레이한다.
4. 에이젼트의 요청 사용자 폴더를 위해 마우스 우측을 클릭하여 팝업 메뉴 디스플레이를 호출한다.
5. Add 엔트리를 선택한다.
6. Add 엔트리 윈도우가 디스플레이한다.
7. 필드에 로그인 정보를 입력한다.
h) 자원 종류가 OS로 설정된다.
i) 자원 인스턴스는 포인트 프로덕트가 작업에 전달하는 동일한 인스턴스 명이다.
만일 포인트 프로덕트가..
. AutoLogin을 사용하면, 유효 사용자 ID 및 패스워드가 Add 엔트리 윈도우에 레코드되고, LES 에이젼트는 ID 및 패스워드 스트링을 전달하고, 액세스가 허가된다.
. AutoLogin을 사용하지만 어떠한 사용자 정보도 Add 엔트리 윈도우에 레코드되지 않고, LES 에이젼트는 UNIX 사용자 로그인을 자동적으로 점검한다. 만일 UNIX 사용자를 찾으면, 액세스가 허가된다.
. AutoLogin을 사용하면 무효 사용자 ID 및 패스워드가 Add 엔트리 윈도우에 레코드되고, LES 에이젼트는 PLATINUM(또는 다른 디폴트) 사용자로 디폴트한다.
. AutoLogin을 사용하지 않으면, LES 에이젼트는 PLATINUM(또는 다른 디폴트) 사용자로 디폴트한다.
명령어 라인 인터페이스
LES에 포함된 명령어 라인 인터페이스는 다음을 포함한 관리 함수를 수행한다:
- 모든 그 실행과 함께 작업을 삭제
- 작업의 실행을 취소
- 모든 작업을 열거
- 프로덕트 코드, 상태 및/또는 노드로서 모든 작업을 열거
- 작업을 즉시 재실행
명령어 라인 인터페이스는 다음 포맷을 이용한다:
ptlescmd [-a action][-jobid][-c cleanup_process][-r run_number][-p product_code][-s status][-b buffersize][-n node]
주: -a 옵션은 모든 행위에 대한 것이고, -j 옵션은 리스트를 제외한 모든 행위에 대한 것이고, 기타는 선택적이다.
Ptlescmd는 작업을 삭제하고, 작업 실행을 취소하고, 작업을 열거(프로덕트 코드에 의해, 상태에 의해 및/또는 노드에 의한 모든 작업)하고, 작업을 즉시 재실행하는데 사용되는 LES 명령어 라인 인터페이스이다.
테이블 1은 ptlescmd 명령어 라인 지원 옵션의 리스팅을 제공한다.
테이블 1
명령어 라인 옵션 및 인수 만일 생략되면 설명
-a [action] 에러 소정의 행위를 실행한다. 행위는 다음 값중 임의의 값을 가질 수 있다:delete,cancel,list,rerun
명령어 라인 옵션 및 인수 만일 생략되면 설명
-j [jobid] 에러('list' 행위를 갖는 것은 제외 영향을 미칠 작업의 작업 ID. 한 실시예에서, 이는 필요한 옵션(리스트 행위를 갖는 것은 제외)이다.
-c [cleanup_process] 작업을 삭제한 후에 실행될 프로세스의 이름. 만일 삭제 행위가 명시되고 어떠한 클린업 프로세스 명도 주어지지 않으면, 작업을 삭제한 후에 UNIX 상에 어떠한 클린업도 발생하지 않을 것이다. NT상에서 이와 같은 옵션은 기존의 클린업 프로세스에 대한 레지스트리를 점검하고, 작업을 삭제한 후에 이를 실행할 것이다.
-r [run_number] 에러 한 실시예에서, 이 숫자는 취소 행위가 명시된 작업의 어떠한 실행이 발생될 지를 정의하는데 필요하다.
-p [product_code] 프로덕트 코드가 리스트 행위를 갖는 것으로 명시될 때에만 사용됨. 이와 같은 특정 프로덕트 코드를 갖는 모든 작업의 리스트가 발생될 것이다.
-s [status] 상태가 리스트 행위를 갖는 것으로 명시될 때에만 사용됨. 이와 같은 특정 상태를 갖는 모든 작업의 리스트가 발생될 것이다.
-n [node] 노드가 리스트 행위를 갖는 것으로 지정될 때에만 사용됨. 이 노드 상의 모든 작업의 리스트가 발생될 것이다.
-b [buffersize] 디폴트 값은 1024임. 이 옵션은 주로 사용자가, 검색될 엘리먼트의 수가 크다는 것을 알 때 필요하다.(>100,000). 디폴트 값은 1024(1K).
LES 명령어 라인을 사용하기 위해서는, 사용자는 다음을 타이핑한다.
ptlescmd -a[action] -j[jobid] [-letter option_name]
여기서:
action은 다음, delete, cancel, rerun 및 list중의 하나임.
jobid는 작업에 사용되는 식별자임.
letter는 명령어 라인 지원 옵션 테이블에 열거된 옵션중의 하나에 대한 글자임.
option_name은 명령어 라인 지원 옵션 테이블에 열거된 옵션중의 하나에 대한 이름임.
테이블 2는 예시적인 명령어 라인 세트 및 이에 대응하는 설명을 제공한다.
테이블 2
명령어 라인 설명
ptlescmd -a delete 123-c cleanup.exe 작업 123 및 그의 모든 실행을 삭제하고 프로세스 cleanup.exe를 실행한다.
ptlescmd -a delete -j 134 작업 134 및 그의 모든 실행을 삭제한다.
ptlescmd -a list 모든 작업을 열거한다.
ptlescmd -a list -ndimultra 노드 ='dimultra'상의 모든 작업을 열거한다.
ptlescmd -a list -p TSR 프로덕트 코드='TRS'를 갖는 모든 작업을 열거한다.
ptlescmd -a list -s running 모든 작업 및 그의 실행을 열거한다.
ptlescmd -a list -p TSR-s completed 프로덕트 코드 = 'TRS'의 모든 작업 및 그 완료된 실행을 열거한다.
ptlescmd -a cancel -j 234-r 3 작업 134중의 실행 3을 취소한다.
ptlescmd -a rerun -j 345 작업 345를 즉시 재실행한다.
주 : 유효 상태 값은 Completed, Failed, Notstarted, Preempted, Running 및 Stopped를 포함한다.
LES 작업은 사용자가 이들을 삭제할 때까지 중앙 및 로컬 저장고에 잔류한다. 사용자는 Poems 디렉터/작업 폴더(185)를 우측 클릭하고 적당한 옵션을 선택함으로써 어떠때든지간에 실행하는 작업을 삭제, 재실행 또는 취소할 수 있다. 삭제 옵션은 작업 및 모든 실행 및 작업의 이력을 제거한다. 포인트 프로덕트는 작업에 관련된 모든 포인트 프로덕트 파일을 제거하는 클린업 프로세스 실행(cleanup process executable)을 제공할 수 있다. 이 실행은 이용가능하다면 작업 및 작업 이력을 제거하기 전에 에이젼트에 의해 실행된다.
LES는 재실행 작업 및 갱신 작업(Rerun Job and Update Job)을 포함하는 작업 수정 옵션을 제공한다. 재실행 작업 옵션은 사용자로 하여금 서로 다른 시작 시간을 갖는 작업을 재실행할 수 있게 한다. PtLESUpdateJob() 함수는 모든 GUI 필드에 대한 갱신을 허용한다.
작업 명령어를 실행하기 전에 에이젼트에 의해 결정(resolved)되는 %C(PLATINUM) 또는 환경 변수 %E(FUS_HOME)와 같은 콘텍스트 변수.
UNIX 사용자명은 작업의 일부로서 GUI 포인트 프로덕트로부터 설정된다. 에이젼트는, 에이젼트가 루트(에이젼트가 set_root_ID 비트를 가짐)로서 실행하기 때문에 패스워드를 필요로 하지 않는다.
콘텍스트 변수
콘텍스트 변수는 명령어 라인 상에서 사용될 수 있는 키워드 식별자이다. LES 에이젼트는 이들 변수를 현재 작업의 콘텍스트 및 전달된 작업 파라메타에 따라 변환한다. LES 에이젼트는 이들 콘텍스트 변수를 삽입하고, 명령어 라인을 정형화한 다음 명령어 라인을 실행한다.
. 키워드 콘텍스트 변수 - 현재 작업으로부터 치환이 발생한다.
. 환경 변수 - 에이젼트가 실행하고 있는 환경으로부터 치환이 발생한다.
. 파일명 변수 - 에이젼트는 이 변수를 파일명으로서 사용하고, 이를 변수에 의해 가리켜진 파일의 콘텍스트로 교체한다.
콘텍스트 변수가 어떻게 명시되는 가:
키워드 콘텍스트 변수:
%C로서 지정된 것(콘텍스트 식별자는 값에 의해 교체됨), 즉 my_prog, %C(JOB_ID), my_prog 1234 관리자로 교체된 %C(USERNAME), 여기서 현재의 작업 jobid=1234 및 사용자명=manager.
환경 변수:
%E(변수 명)으로서 지정된 것, 즉 my_prog %E(HOME) %E(LANG), my_prog/home/platinum en-us.
파일명 변수:
%F(파일명)으로서 지정된 것, 즉 my_prog %F(/etc/platinum) %C(JOB_ID) %E(HOME) my_prog/home/dmc 1234 /home/platinum 여기서 파일명/etc/platinum은 라인 /home/dmc를 포함한다.
수용가능한 %C(콘텍스트 변수 명) 구문 키워드:
변수에 대한 구문은 %C(KEYWORD)이다. 사용자는 괄호안에 KEYWORD의 어느 한쪽 상에 공간을 삽입할 수 있다. 테이블 3은 예시적인 키워드 식별자의 리스팅을 제공한다.
테이블 3
/* 식별자 설명*/
/* JOB_ID-Env _JobRecord.jobid 작업 ID*/
/* GROUP_ID-Env _JobRecord.groupid 그룹*/
/* HOSTNAME _JobRecord.node 호스트 명*/
/* INSTANCE-Env _JobRecord.instance 인스턴스 명*/
/* USERNAME _JobRecord.username 사용자 명*/
/* OWNER _JobRecord.owner 소유자*/
/* PASSWORD-Env _JobRecord.password 패스워드*/
/* CONNECT_STR _JobRecord.connectstring 접속스트링*/
/* JOB_OWNER _JobRecord.jobowner 작업소유자*/
/* OBJECT _JobRecord.object 객체 명*/
/* PRODUCT CODE _JobRecord.productcode 프로덕트 코드*/
/* PRODUCE VERSION _JobRecord.productversion 프로덕트 버젼*/
/* DESCRIPTION _JobRecord.description 설명*/
/* EMAIL_ADDR _JobRecord.notificationemail 이메일 주소*/
/* TYPE _JobRecord.type 종류*/
/* C_SCRIPT _JobRecord.completionscript 완료 스트링*/
/* F_SCRIPT _JobRecord.failedscript 실패한 스크립*/
/* PLATHOME _Installation directory 설명 디렉토리*/
/* USERROLE-Env _JobRecord.userrole 사용자 역할*/
GUI API
GUI API는 다음을 포함하는 다수의 함수에 대해 포인트 프로덕트(100) 및 포인트 프로덕트 GUI(110)에 의해 이용된다.
. 작업 스케쥴링 API를 갖는 작업을 할당하고, 필요에 따라 임의의 디폴트값을 오버라이드함.
. GUI를 CpropertySheet를 직접 사용하는 대신에 (CpropertySheet로부터 파생된) 클래스 CptDynPropertySheet에 기초함. CptDynPropertySheet는 DnyPS.DLL에 의해 엑스포트된다. 부수적으로, GUI API는 GUI 윈도우를 디스플레이하지 않고 작업을 제출하는데 사용될 수 있다.
. GUI API를 사용하여 작업에 기초하여 CptLESJobSchedulingPage(예를 들어 도 25 참조) 객체를 구성한 다음, 이를(및 임의의 다른 페이지) CptDynPropertySheet 또는 CpropertySheet-파생 프로퍼티 쉬트에 부가한다.
. GUI API를 사용하여 스케쥴링 프로퍼티 페이지에 디스플레이되는 임의의 작업 파라메타를 커스텀화한다.
. 작업 스케쥴링 API를 사용하여 스케쥴링 프로퍼티 페이지에 대한 제어에 의해 설정될 수 없는 임의의 요구되는 작업 파라메타를 설정한다. 이들의 예는 PtLESSetJobParm을 호출함으로써 포인트 프로덕트-특정 작업 파라메타를 포함한다.
. 최종 OK는 작업이 제출되어야 하고, GUI API를 사용하여 데이타를 유효화하며 작업을 제출하여야 한다는 것을 가리킨다.
작업을 제출하기 전에 탭 호출 그의 ValidateData() 메소드로서 LES 작업 스케쥴링 페이지를 사용하는 프로덕트. ValidateData()는 여러번 안전하게 호출될 수 있고, 어떠한 메시지 박스도 사용자에게 나타나지 않는 방법으로 호출될 수 있다.
테이블 4는 상기 논의된 프로세스를 구현하기 위해 GUI API를 호출하기 위한 예시적인 코드를 제공한다.
테이블 4
단계 샘플 코드
작업을 할당하고, 디폴트를 오버라이드함 PtLESJobHandle job=PtLESJobAlloc();PtLESSetJobTZNode(job,PTLES_TZLOCAL);
프로퍼티 쉬트 및 페이지 셋업 CpropertySheet sheet;CptLESJobSchedulingPage LESpage(CptLESJobSchedulingPage:AsPage, job);Sheet.AddPage (LESpage)
프로덕트 작업 info설정 PtLESSetJobParam (job,key,value);
페이지의 날짜를 커스텀화 LESpage.SetRunWhen(CPtLESJobSchedulingPage::RunImmediately);LESpage.SetRunWhenState(CPtLESJobSchedulingPage::Diable);
쉬트가 존재하면, 날짜를 유효화하고, 작업을 제출함. 쉬트의 OK 핸들러에서:만일 (LESpage.ValidateData())sheet.m_LESPage->SubmitJob("nodename", groupID,TRUE).
작업 분배 API
작업 분배 API는 전형적으로 작업 데이타 관리 API(140)에 의해 호출된 적당한 머신(LES 워크스테이션)에 정보를 디스패치한다.
작업 스케쥴링 API
작업 스케쥴링 API(130)는 포인트 프로덕트 GUI와 함께 일하여 제출된 작업을 정의한다. 작업 스케쥴링 API를 거치 이용가능한 일부 함수들이 요구되고, 일부는 선택적이며, 일부는 LES GUI를 통해 사용자에 의해 설정될 수 있는 내부 함수이다. 베이스라인 함수 및 임의의 소정의 선택적인 함수 또는 (대응하는 포인트 프로덕트에 적합한 것으로 정의되는) GUI에 의해 정의된 함수에 대해 값이 설정된다.
다음 테이블은 종류에 따른 함수를 열거하고, 각각의 함수의 간단한 설명을 제공한다. 베이스라인 함수는 작업 스케쥴링 프로세스에 대한 기본적인 정보를 제공하는데 이용되고, 테이블 5의 설명과 함께 열거되어 있다.
테이블 5
함수 설명
사용자 명 작업이 실행하는 사용자명. 한 실시예에서, 스케쥴러는 이 함수를 사용하기 위해 루트로서 실행하여야 한다. 만일 루트로서 실행하고 사용자 명 필드가 널리면, 스케쥴러는 작업을 실패한 것으로 마크할 것이다.
노드 중앙 테이블의 인덱스됨. 이 작업을 실행하는데 사용되는 노드를 지정.
명령어 실행할 명령어 라인. 데이타베이스 VARCHAR 크기 제한 때문에, 이는 API에 의해 두 조각으로 분할되고 재조립된다.
프로덕트 코드 작업을 생성하는데 사용되는 프로덕트의 코드 식별자. 이는 PLATINUM PAR 트랙킹 시스템에 의해 할당되어 사용된 코드이다.
프로덕트 버젼 작업을 생성하는데 사용된 프로덕트의 버젼 번호.
테이블 6에 열거되고 설명된 옵션 함수는 필수사항이 아니고, 특정 포인트 프로덕트에 적절할 때 이용(정의)된다.
테이블 6- 선택적 함수
함수 설명
GroupID 전략 그룹 ID함수 PtLESCreateGroup을 사용하여 GroupID를 얻는다.
ReTryInterval 선점된 실행 이후에, 이는 작업을 재실행하려고 시도하기 전에 대기하는 분수이다. 만일 제로이면, 작업은 선점된 후에 재실행되지 않을 것이다. 선점된 실행은, 포인트 프로덕트 특정 운영 규칙으로 인해 실행되어서는 안된다고 판정된 포인트 프로덕트 때문에 실행하지 않는 작업이다.
RetryCount 만일 작업이 선점되었거나 또는 시작할 수 없다면 재시도 시도된다. 만일 제로이면, 작업은 선점 이후에 재실행되지 않거나 실패하기 시작할 것이다. 이는 포인트 프로덕트실패 이후의 재실행을 제어하지 않는다.
N_retrys (RecurFailThreshold) 작업 이전에 수락하는 실패된(포인트 프로덕트) 실행은 더 이상 다시스케쥴되지 않는다. 이 값은 작업 생성시 그리고 작업이 성공적으로 실행될 때마다 "RecurFailureCount"로 이동된다. 이 필드는 결코 정확하게 실행하지 않는 작업에 대한 런어웨이(runaway) 작업 재스케쥴링을 제어하는데 도움이 된다.보다 상세한 정보를 위해서는 "RecurFailureCount"를 참조한다.
RecurFailCount 이 함수는 소정 회수의 연속하는 실행 동안 작업 실패를 카운트한다. 작업이 실패할 때마다 판정되고, 작업이 성공적일 때마다 그 본래의 값(RecurFailureThreshold)으로 리셋된다. 만일 값이 제로에 근접하면, 작업은 다시 스케쥴되지 않을 것이다.
Instance 반대로 실행하는 데이타베이스 인스턴스. 데이타베이스 관련 포인트 프로덕트에 대해 선택적.
Owner 포인트 프로덕트 사용을 위해 선택적 사용자 ID(RDBMS 프로덕트의 경우, 이는 소유자일 것이다).
Cred_value 선택적 사용자 패스워드.API 세트에 의해 암호화/암호해독
ConnectString 선택적 데이타베이스 접속 스트링 또는 명칭.
JobOwner 보안에 관련된 장래의 사용을 위함(작업의 소유자만이 변경할 수 있슴)
Object 포인트 프로덕트 사용을 위한 선택적 객체 명칭.
테이블 7은 LES GUI를 거쳐 사용자에 의해 세트될 수 있는 내부 함수를 열거한다.
테이블 7 -GUI 함수
함수 설명
JobId 유일한 작업 ID. 각각의 유일한 ID가 중앙 제어 서버에서 발생된다. ID는 중앙 서버에 의해 관리되는 노드 내에서 유일하다. 함수 PtLESSubmitJob을 사용하여 JobID를 설정한다. JobID는 제로일 수 없다.
Next_Start 로컬 노드상에서 인덱스됨. 이는 GMT에서 이 작업을 실행할 다음 시간이다. Time_t 타임스템프는 작업이 시작되는 다음 시간에 캘린더 및 재발을 사용하여 세트된다. 만일 = -1이면, 이 작업은 즉시 실행된다.
TimeZone 1=작업이 실행하는 노드의 시간 영역을 사용2=작업이 스케쥴되는(로컬 워크스테이션의 시간 영역) 노드의 시간 영역을 사용윈도우 시간 영역 규약으로부터의 이 값은 임의의 시간 영역 규약 LES용으로 변환되어야 한다. 이 함수는 시간을 GMT로 변환하는데 사용된다. API는 GMT로부터 시간 영역의 오프셋을 검색하고 시간을 GMT에 조정한다.
WSTimeXZone 이와 같은 작업이 스케쥴되는 워크스테이션의 시간 영역. 이는 TimeZoneNode=2일때 시간을 조정하기 위해 스케쥴러에 의해 사용된다.
NotoficationEmail 작업 완료 통지가 전달되는 이메일 주소.
CompletopmScript 성공적인 완료시 실행하는 스크립트
FailScript 실패시 실행되는 스크립트
설명 선택적인 작업 설명
CalendarId 사용할 캘린더의 ID
RecurInterval 이는 만일 소정의 연속적인 실행 회수 동안 작업이 실패하면 테스트하는데 사용된다. 이는 작업이 실패할 때마다 감소되고, 작업이 성공적일 때마다 그 본래의 값(RecurFailureThreshold)으로 리셋된다. 값이 제로이면, 작업은 다시 스케쥴되지 않을 것이다.
RecurIncrement 순환 간격; 매 x분, 매 x일, 매 x 월 등에 따라 얼마나 자주 작업이 실행하는 지.
EveryWeekday 이 플래그는 주중의 매일을 실행하는 것을 가리킨다.(RecurInterval=Daily). 만일 이것이 설정되어 있고 RecurInterval=Daily이면, RecurIncrement는 무시된다.
설명 선택적인 작업 설명
Days_of_Week(DayOfWeekFlags) 제로 패드 어레이(zero padded array). 작업을 실행할 주중의 어떤 날 또는 날들을 가리키는 플래그(0=일요일, 6=토요일) (RecurInterval=weekday)
DayOfMonthFlags 제로 패드 어레이(zero padded array). 작업을 실행할 월의 어떤 날 또는 날들을 가리키는 플래그(1-31) (RecurInterval=Monthly)
LastDayOfMonth 만일 참이면, 월(들)의 말일을 실행(RecurInterval=Monthly 또는 Yearly). 작업은 월중의 말일의 실제 날짜(28,29,30, 또는 31)에 무관하게 월중의 말일에 실행할 것이다. DayOfMonthFlags와 함께 또는 이것 없이 사용될 수 있다. 만일 세트되어 있으면, 이는 DayOfMonthFalgs에 선행한다(즉, 11월 30일을 위한 작업 플래그는 오프이고, 이것이 온이면, 작업은 11월 30일에 실행할 것이다.)
YearMonth 연간 간격 동안 실행할 월(1-12)(RecurInterval=Yearly)
TimeOfDayHour 실행할 날의 시간(0-23)
TimeOfDayMinute 실행할 날의 분(0-59)
Start_Times 각 시간 플래그 이후의 분. 제로 패드 플래그-시간의 각 분마다 하나씩. 이는 각 시간 동작 이후의 x분에 Autosys'의 실행을 에뮬레이트하는데 사용된다. 온일 때, 각각의 플래그는 next_start에 의해 결정되는 첫번째 실행 이후의 EVERY 시간 후에 그 분에 실행되어야 한다는 것을 가리킨다.
테이블 8은 GUI API(115)가 포인트 프로덕트에 의해 어떻게 이용될 것인지에 대한 예시적인 코드를 제공한다. 예를 들어, 작업 구조를 할당하는 것은, 핸들(jh)을 정의하는 포인트 프로덕트, 작업이 실행(0=don't run, 1=run; 즉, 0,0,0,0,0,1,0은 금요일에 실행한다는 것을 의미한다)하려는 날짜를 정의하는 어레이, 사용자 ID 및 패스워드, 및 PtLESJobAlloc() 함수에 대한 호출을 필요로 한다.
테이블 8
단계 샘플 코드 코멘트
작업 구조의 할당 PtLESJobHandle jh;int days_to_run[]={0,0,0,0,0,1,0}char userid[20],password[20];jh=PtLESJobAlloc(); 금요일날 실행
작업에 대한 파라메타를 설정 PtLESSetJobDescription (jh, "smith","TablespaceReorg", "Weekly run");PtLESSetJobCommand (jh, "reorg.exe");PtLESSetJobProdInfo (jh, "Tsreorg", "2.07");PtLESSetJobInstanceInfo (jh, "ora73",userid, password, "payr1, world");PtLESSetJobObject (jh, "payroll");PtLESSetJobRetry (jh, 10,6);PtLESSetJobTZNode (jh, PTLES_TZLOCAL);PtLESSetJobRunRules (jh, PtLES_RECURWEEKS, 1, 0 days_to_run, NULL, NULL 0, 0, 0, 22, 0); 10시에 매주 한 시간 동안 매 10분마다 재시도
두개의 노드에 대한 작업을 제출 PtLESSubmitJob (jh, "dimultra", 101, 0);PtLESSubmitJob (jh, "dimsparc", 101, 1); node dimultranode dimultra
클린업(clean up) PtLESJobDealloc (jh)
캘린더링 API
캘린더링 API는 다른 API에 의해 내부적으로 이용되고, 포괄적인 캘린더링 함수를 제공한다. 예를 들어, 캘린더링 API의 주요 사용은 사용자로 하여금 특정 작업 실행 동안 캘린더링 정보를 입력하게 하는 것이다.
작업 관리 API
상술한 바와 같이, 작업 관리 API(150)는 기존의 작업을 삭제, 취소, 재실행 또는 복사한다. 부수적으로, 이는 다른 API가 작업 상태를 판정하고, 작업 로그파일을 셋업, 취소 또는 갱신하게 하며 그리고 작업 파라메타를 검색하게 한다. 예를 들어, 작업 관리 API 내의 한 프로세스는 현재 작업을 실행하는 것을 정지하는데 이용되는 PtLESCancelJob이다. PtLESCancelJob은 먼저 작업이 실행하는 지를 알기 위해 특정 노드에 대한 점검을 수행하고, 만일 작업이 실행하고 있으면 대응하는 LES 에이젼트에 정지 명령어를 발행한다.
작업 데이타 관리 API
작업 및 작업 이력 모두는 작업이 실행될 노드의 중앙 저장고 및 로컬 저장고에 저장된다. 개방향 데이타베이스 연결성(ODEC)는 각각의 작업 또는 작업 이력을 선택, 삽입, 갱신 및/또는 삭제하는데 사용된다.
포인트 프로덕트 API
포인트 프로덕트 API는 포인트 프로덕트로 하여금 LES 에이젼트와 통신하게 한다. 사용자가 이 API를 사용할 때, LES 작업 폴더는 사용자의 작업에 대한 보다 정확한 정보를 보여주고, 로그파일 뷰어는 작업 로그파일을 보여주며, LES 에이젼트는 사용자의 포인트 프로덕트 작업을 관리하여, LES가 개발 관점에서 사용하게 쉽게 한다.
이와 같은 API의 함수들은 작업 상태 또는 로그파일을 갱신하거나 또는 실행하는 작업 프로세스의 끝을 알리기 위해 LES 에이젼트에 대한 PEC 메시지를 캡슐화한다. LES 에이젼트 및 포인트 프로덕트가 방송 통신을 사용하여 Rtclients인 PEC 모델이 부가되어 있다. PEC 초기화는 LES_API 함수의 호출 이전에 수행되고 있다. 부수적으로, 포인트 프로덕트는 빠져나가지 전에 TptTerm을 호출하여야 한다.
한 실시예에서, SIGUSR2는 모든 UNIX 플랫폼 상의 CANCEL 통신 신호로서 사용되고, LES 에이젼트는 이 신호를 디폴트로서 무시한다. 자 프로세스가 모든 신호를 상속하기 때문에, 포인트 프로덕트가 조치를 취하지 않는한 CANCEL 이벤트는 무시된다. 결국, 만일 사용자 어플리케이션이 다른 목적을 위해 SIGUSR2를 사용하면 충돌이 발생할 수 있다(그러나, 연산을 위해 표준 UNIX 툴셋의 이용을 허용한다).
다음 환경 변수는 LES 에이젼트에 의한 임의의 포인트 프로덕트를 실행하기 전에 설정된다:
LES_JOBID -> 포인트 프로덕트 현재 작업 번호
LES_RUN_NUM -> 포인트 프로덕트 현재 실행 번호
LES_GROUPID -> 포인트 프로덕트 현재 전략 그룹 번호
LES_RUNTIME -> 스케쥴 시간(만일 -1, 작업은 즉시 실행하도록 스케쥴된다.)
LES_INSTANCE -> 작업 인스턴스
LES_USERNAME -> 작업 사용자명
LES_USERROLE -> 작업 사용자 역할
에이젼트가 에러를 발견할 때마다 에러 메시지가 디스플레이된다. 테이블 9는 숫자와 메시지로 구성된 에러를 열거한다. 메시지의 일부는 다음 예에서 도시된 바와 같이 메시지 텍스트 내의 % 신호로서 나타나는 변수를 사용한다. 이들 변수는 에러 메시지가 디스플레이할 때의 실제의 값에 의해 교체된다. 예를 들어, 이 경우에, 변수 %는 에러 메시지가 디스플레이될 때의 실제의 제한 및 파일명으로 교체된다.
테이블 9
PTLES_AGENT-0001 에이젼트는 이미 실행중
PTLES_AGENT-0002 현재 노드 명을 얻을 수 없슴
PTLES_AGENT-0003 프로세스 테이블 파일을 열수 없슴
PTLES_AGENT-0004 프로세스 테이블에 기록할 수 없슴
PTLES_AGENT-0005 프로세스 테이블로부터 읽을 수 없슴
PTLES_AGENT-0006 작업 핸들을 위해 충분한 메모리를 할당할 수 없슴
PTLES_AGENT-0007 작업 핸들 메모리를 비울 수 없슴
PTLES_AGENT-0008 이 프로세스 id(%d)에 부착된 작업을 찾을 수 없슴
PTLES_AGENT-0009 작업 파라메타를 읽을 수 없슴
PTLES_AGENT-00010 캘린더 핸들을 위해 충분한 메모리를 할당할 수 없슴
PTLES_AGENT-00013 PEC 메시지(TipcMtCreate failed %d)를 생성할 수 없슴
PTLES_AGENT-00014 job_id=%d를 갖는 작업을 찾고 취소할 수 없으며 number=%d를 실행할 수 없슴
PTLES_AGENT-00015 다음은 유효 작업이며, 이 작업을 취소할 수 없슴(job_id=%d, run number = %d)
PTLES_AGENT-00016 다음 작업을 취소할 수 없슴(job_id=%d, run number = %d) 시스템 에러=%d
PTLES_AGENT-00018 작업 프로세스를 실행할 수 없슴 - job_id=%d 및 시스템 에러는 %d
PTLES_AGENT-00020 작업 프로세스를 실행할 수 없슴 - job_id=%d, 사용자(%s)는 존재하지 않음
PTLES_AGENT-00021 작업을 삭제할 수 없슴 - job_id=%Id, 에= %d
PTLES_AGENT-00023 PEC 호출 생성 실패.(pec_error=%d)
PTLES_AGENT-00024 작업(job_id=%d)를 로컬 저장고에 삽입할 수 없슴 에러=%d
PTLES_AGENT-00025 작업 이력을 삽입할 수 없슴, job_id=%d, error=%d, 에이젼트 초기화..., 만료된 작업을 점검:%s
PTLES_AGENT-00027 중앙 저장고에 접속할 수 없슴(ODBC-Error=%d)
PTLES_AGENT-00028 로컬 저장고에 접속할 수 없슴(ODBC-Error=%d)
PTLES_AGENT-00029 캘린더 삽입 에러(ODBC-Error=%d)
PTLES_AGENT-00030 작업을 갱신할 수 없슴(%d)(ODBC-Error=%d)
PTLES_AGENT-00045 에이젼트가 실행하지 않음
테이블 10은 포인트 프로덕트 템플릿에 대한 예시적인 소스 코드를 제공하고, 포인트 프로덕트 API(120)의 예시적인 사용을 고려할 수 있다. 그러나, 제시된 코드는 본 발명의 컴파일가능하거나 또는 실행가능한 버젼 또는 그 완전한 실시예이도록 의도되어 있지 않지만, 본 발명에 논의된 특징의 일부의 예시적인 표현이다.
테이블 10
/*Platinum Technology Inc.
* Copyright(c) 1997 Platinum technology Dimeric Lab
* ALl right Reserved.
*LES_API 함수 소스 코드를 참조한 LES 포인트 프로덕트 API를 사용한 PLATINUM Lightweight Enterprise Scheduler example program
*/
/*포인트 프로덕트 작업 템플릿 및 포인트 프로덕트 API의 사용*/
/*시스템은 포함한다*/
#include <stdio.h>
#include <stdlib.g>
/* pec는 파일을 포함한다*/
#include <rtworks/ipc.h>
#include <ptm/ptm.h>
/* LES_API은 파일을 포함한다*/
#include "ptles_size.h"
#include <ptles_ppapi.h"
/*여기 키들을 편집한다*/
/*예시적인 목적을 위해, 허용된 키의 수는 10으로 제한된다*/
#define MAX_KEYS 10
static char keys {MAX_KEYS][KEY_L+1]=
{
"key 1", /*즉, "key 1"을 당신의 키 값으로 교체한다*/
"key 2",
"key 3",
"key 4",
};
#define MY_STATUS_RUNNING 1
#define MY_STATUS_COMPLETE 2
#define MY_STATUS_ABORT 3
#define MY_STATUS_CANCELED 4
FILE *fplog;
/*
** 만일 사용자가 이 작업을 취소하기를 원하면 다음 함수로 스위치한다*/
void
cancel_this_job(sig)
int sig;
{
fprintf{fplog,"update Job Status to STATUS_CANCELED \n");
if (PtLESUpdateJobStatus (My_STATUS_CANCELED)==LESAPI_FAIL
)
{
fprintf(fplog, "PtLESUpdateJobStatus: Error %d\n");
}
fprintf(fplog, "Point Product example: Job canceled by user request\n");
PtLESUpdateExitStatus {PP_FAILED);
TptTerm();
fclose(fplog);
exit(1);
}
/* 예시적인 프로그램이 어떻게 해서 포인트 프로덕트가 LES 에이젼트와 통신하기 위해 LES_API를 사용할 수 있는지를 증명한다.*/
int main(argc, argv)
int argc;
char **argv;
{
int rc; /*에러 반환에 사용됨*/
char pvalue[DATA_L+1]; /*키 값 쌍의 값을 보유하기 위한 할당*/
int plen; /*값의 길이*/
int i; /*카운터로서 사용됨*/
int num_items; /*키 값 쌍 rec의 숫자*/
char *plat_home;
char log_path[PATH_L+1];
char *les_jobid, *job_id;
char *les_groupid;
char *les_runtime;
char *les_run_number;
#if defined(DEBUG) && defined(WIN32)
DebugBreak();
#endif
job_id = getenv("LES_JOBID");
plat_home=getenv("PLATHOME");
if(plat_home !=NULL && job_id !=NULL)
sprintf(log_path,"%/les/files/logdir/pplogfile_%s.log",plat_home, job_id);
else
strcpy(log_path,"pplogfile.log");
fplog=fopen(log_path,"w")'
if(flog==NULL)
fplog=stderr;
fprintf(fplog,"--------point product example------\n")'
les_jobid=getenv("LES_JOBID");
les_groupid=getenv("LES_GROUPID");
les_runtime=getenv("LES_RUNTIME");
/*
** LES V1.1.0 New Env.
*/
les_run_number=getenv("LES_RUN_NUMBER");
fprintf(fplog,"ENV.VARIABLE SETUP BY PTLES_AGENT:\n");
if(less_jobid !=NULL)
{
PtLESSetJobId(atoi(les_jobid));
fprintf(fplog,"...LES_JOBID=%s\n",les_jobid);
}
if(les_groupid !=NULL)
{
fpringf(fplig,"...LES_GROUPID=%s\n",les_groupid);
}
if(les_runtime !=NULL)
fprintf(fplog,"...LES_RUNTIME=%s\n",les_runtime);
if(les_runtime_number !=NULL)
fprintf(fplog,"...LES_RUNTIME_NUMBER=%s\n",les_runtime_number);
/*명령어 라인상으로 전달된 임의의 인수를 프린트*/
fprintf(fplog,"Command line argument:\n");
for(i=1;i<argc;i++)
{
fprintf(fplog,"Argument[%]:%s\n",i,argv[i]);
}
/*LES_API를 사용하기 위해서는 PEC TptInit를 항상 호출하여야 한다.*/
/*주 프로그램의 RtServer에 접속하기*/
TptInit(PPROD_API, "V1.1.0");
/*LES V1.1.0 adapt. CANCEL 함수를 부가*/
PtLESSetJobCancel(&cancel_this_job);
fprintf(fplog,"Update logfile name:%s\n",log_path);
/*포인트 프로덕트 로그파일을 LES 에이젼트에 전달*/
if(PtLESUpdateLogFileName(log_path)==LESAPI_FAIL)
{
fprintf(fplog,"PtLESUpdateLogFileName:Error %ds\n");
}
/*포인트 프로덕트 상태를 실행으로 갱신*/
/*이 함수를 사용하여 상태를 갱신*/
fprintf(fplog,"Update Job Status to STATUS_RUNTIME\n");
if(PtLESUpdateJobStatus(MY_STATUS_RUNNING)==LESAPI_FAIL)
{
fprintf(fplog,"PtLESUpdateJobStatus:Error %ds\n");
}
/*다음 함수 호출은 전달될 필요가 있을 수 있는 포인트 프로덕트 파암(parms)을 검색하는데 사용되는 LES AGENT와의 초기 통신을 수행한다*/
/*내부적으로 저장되는 것은 jobid와 run number이다*/
fflush(fplog);
fprintf(fplog,"Get Point product Parameters:\n");
rc=PtLESGetProductParms(360/*TIMEOUT*/);
if(rc==LESAPI_FAIL)
{
fprintf(fplog,"PtLESGetProductParms:Error\n",
PtLESGetErrno());
/*LES AGENT로 작업의 진행을 통신하는 다른 호출*/
fprintf(fplog,"PP_example":Update the Status toMY_STATUS_ABORT=%d\n",MY_STATUS_ABORT);
if(PtLESUpdateJobStatus (MY_STATUS_ABORT)==LESAPI_FAIL)
{
*fprintf(fplog,"PtLESUpdateJobStatus:Error %d\n");
}
/*포인트 프로덕트의 엑싯(exit) 상태를 전달*/
/*pre defined to PP_SUCCESS,PP_FAILED,PP_PREMPTED*/
/*LES AGENT로 작업의 진행을 통신하는 다른 호출*/
fprintf(fplog,"PP_example":Update the exit status =%d\n",PP_FAILED);
PtLESUpdateExitStatus(PP_FAILED); PtLESDestroyParms();
TpTerm();
fclose(fplog);
exit(1);
}
/*주 이전에 정의된 키 정적 문자 스트링을 편집하여 포인트 프로덕트 키를 부가*/
/*키 값 쌍의 번호를 반환*/
num_items=PtLESGetNumParms();
if(num_items==LESAPI_FAIL)
{
fprintf(fplog,"PtLESGetNumParms:%d\n",
PtLESGetErrno());
}
fprintf(fplog,"No.Parameters received:%d\n",num_items);
num_items=num_items<MAX_KEYS?num_items:MAX_KEYS;
fprintf(fplog,"No.Parameters received:%d\n",num_items);
/*키 값 쌍 프린트를 검색*/
for(i=0; i<num_items; i++)
{
/*키 값 쌍의 값의 길이를 구함*/
plen=PtLESGetParametersLen(keys[i[);
if(plen>0)
{
/*주어진 값을 검색하는데 사용되는 함수*/
/*파라메타를 위한 키*/
if(PtLESGetParameter(keys[i],pvalue,plen)
==LESAPI_FAIL)
fprintf(fplog,"PtLESGetParameter:%d\n",
PtLESGetErrno());
else/*키 값 쌍을 프린트*/
fprintf(fplog,"\tParameter[%d],key=%s Value=%s len=%d\n",
i,keys[i],pvalue,plen);
}
}
/*작업 id와 수신된 Run Number를 프린트*/
fprintf(fplog,"Received Job Id: %Id\n",PtLESGetJobId());
fpringf(fplog,"Received Job Run Number: %Id\n",PtLESGetJobRunNumber());
/*작업의 진행을 LES AGENT에 통신하는 다른 호출*/
fprintf(fplog,"Update Job Status to STATUS_COMPLETED\n")
if(PtLESUpdateJobStatus(MY_STATUS_COMPLETED)==LESAPI_FAIL)
{
fpringf(fplogm,"PtLESUpdateJobStatus:Error %d\n");
/*호출 PtLesExitStatus를 종료하기 전*/
/*포인트 프로덕트의 엑싯 상태를 통신*/
/*pre defined to pp_SUCCESS, PP_FAILED,PP_PREMPTED*/
/*LES_API에 의해 할당된 내부 구조를 해제함*/
fprintf(fplog,"Send END_OF_JOB with STATUS SUCCESS to PTLES_AGENT \n");
PtLESUpdateExitStatus(PP_SUCCESS);
PtLESDestroyParms();
/*RTServer에의 접속을 종료*/
TpTerm();
fclosse(fplog);
return(0);
} /*주 종료*/
POEMS를 거친 스케쥴링
본 발명은 윈도우(POEMS 스케쥴링 서비스 작업 스케줄링 윈도우, 도 10 참조) 또는 프로퍼티 페이지(작업 스케쥴링 탭 프러퍼티 페이지, 도 11 참조)를 포함하는 GUI를 이용하여 구현되고 있다. 예를 들어, 단지 하나의 실시예로서 무선 버튼 대신에 풀 다운 선택 메뉴를 사용하여, GUI 윈도우 또는 페이지의 다른 구현 또는 구성이 또한 가능하다.
GUI 인터페이스는 다음을 포함하는 제출될 작업에 대한 스케쥴링 명세에 대한 사용자 입력을 허용한다:
- 즉시 작업 실행
- 나중에 작업 실행
- 작업의 시작 시간 및 날짜
- 작업에 대한 반복 실행 간격
- 스케쥴링 캘린더를 생성 또는 선택
부수적으로, GUI 인터페이스는 사용자로 하여금 통지 스크립트를 정의하거나 또는 수정하는 것을 허용한다.
작업을 시작하기 위해, 사용자는 작업 설명 박스에 작업 설명을 입력하고, 즉시, 나중에 또는 시작 날짜 및 시간으로서 실행 시간을 선택하고, OK를 클릭 또는 종료한다.
POEMS는 적당한 시작 날짜 및 시간을 제공하기 위한 몇가지 특징을 가지고 있다. 예를 들어, 도 12에 도시된 바와 같이, 풀 다운 캘린더는 날짜 선택을 위해 제공된다. 풀 다운 캘린더는 다음과 같이 진행 및 감소 버튼을 포함한다:
. >> 버튼을 선택하여 년을 하나씩 진행한다.
. << 버튼을 선택하여 년을 하나씩 감소한다.
. > 버튼을 선택하여 다음 월로 진행한다.
. < 버튼을 선택하여 이전 월로 되돌아간다.
POEMS 스케쥴링 서비스가 원격 노드에서 작업을 스케쥴하기 때문에, 선택 박스는 시작 시간(제출 노드 대신에)으로서 원격 노드의 로컬 시간을 사용하는데 제공된다.
반복 작업 실행은 다음을 포함하는 넓은 간격 어레이에 대해 설정될 수 있다:
.None- 작업에 대한 비반복 실행을 스케쥴하는데 사용됨.
.Minutes after each hour- 매 시간 시간 후의 특정 분에 작업에 대한 반복 실행을 스케쥴하는데 사용됨.
.Hours- 지정된 시간 간격으로 작업에 대한 반복 실행을 스케쥴하는데 사용됨.
.Days- 날 또는 매 주에 지정된 간격으로 작업에 대한 반복 실행을 스케쥴하는데 사용됨.
.Weeks- 선택된 날 또는 날들의 주에 지정된 간격으로 작업에 대한 반복 실행을 스케쥴하는데 사용됨.
.Months- 선택된 날 또는 날들의 월에 지정된 간격으로 작업에 대한 반복 실행을 스케쥴하는데 사용됨
.Years- 지정된 날의 매 년 작업에 대한 반복 실행을 스케쥴하는데 사용됨.
도 13은 매 시간 이후의 선택된 분에 실행하도록 스케쥴된 작업의 예를 제공한다(시간마다 반복하는 실행 간격을 스케쥴). 도 14는 매 시간에 실행하도록 스케쥴된 작업의 예를 제공한다(시간에 따라 반복하는 실행 간격을 스케쥴). 도 15는 매일 실행하도록 스케쥴된 작업의 예를 제공한다(날에 따라 반복하는 실행 간격을 스케쥴). 도 16은 특정 시작 날짜에 따라 매주 수요일에 실행하도록 스케쥴된 작업의 예를 제공한다(주에 따라 반복하는 실행 간격을 스케쥴). 도 17은 월의 매 25일에 실행하도록 스케쥴된 작업의 예를 제공한다(월에 따라 반복하는 실행 간격을 스케쥴). 도 18은 일년에 6월 25일에 한번 실행하도록 스케쥴된 작업의 예를 제공한다(년에 따라 반복하는 실행 간격을 스케쥴).
통지 스크립트
상술한 바와 같이, GUI 인터페이스는 통지 스크립트를 삭제, 수정 또는 선택할 기회를 사용자에게 부여한다. 통지 스크립트는 작업 및 작업 상태 정보에 대한 통지를 자동적으로 제공하는데 사용되는 행위를 포함하는 쉘 스크립트이다. 예를 들어, 다른 함수들이 또한 통지 스크립트에 의해 수행될 수 있다. 포인트 프로덕트 어플리케이션은 작업 통지 스크립트를 실행한다. 프로덕트 어플리케이션 문서화는 작업 완료 또는 작업 실패시에 취해진 조치에 대한 상세한 정보를 포함하여야 한다.
통지 스크립트는 테이블, 테이블 공간 및 인덱스를 위해 구성될 수 있다. 완료되거나 또는 실패한 작업의 통지를 위해 통지 스크립트를 구성할 때, 이전에 할당된 값의 변수가 이용될 수 있다.
이들 변수에 대한 값들은 디폴트 통지 스크립트 파일 내의 특정 작업에 대해 정의된 동일한 변수들이다. 사용자는 이들 파일에 변수에 대한 값을 정의할 수 있고, 인수로서 통지 스크립트의 변수를 이용할 수 있다.
통지 스크립트 내의 이들 변수를 이용함으로써, 서로 다른 값들이 각각의 작업에 대해 변수에 할당될 수 있기 때문에, 동일한 스크립트가 다양한 작업에 대해 이용될 수 있게 된다. 당신은 프로덕트 어플리케이션에 의해 결정된 작업 완료 스크립트 또는 작업 실패 스크립트 내의 변수를 사용할 수 있다.
테이블 11은 각 변수의 설명을 포함하는, 수립된 통지 스크립트 변수의 리스트를 제공한다.
테이블 11
스크립트 변수 이 값을 나타냄
%C(JOB_ID) 작업 식별 번호
%C(GROUP_ID) 그룹 식별 번호
%C(HOSTNAME_ID) 완료되거나 실패한 작업이 실행된 호스트명
%C(INSTANCE) 완료되거나 실패한 작업이 실행된 인스턴스명
%C(USERNAME) 사용자명
%C(CONNECT_STR) 접속 스트링
%C(JOB_OWNER) 그 작업이 완료되거나 실패한 객체의 소유자
%C(OBJECT) 그 작업이 완료되거나 실패한 객체 명
%C(PRODUCT_CODE) 프로덕트 코드
%C(PRODUCT_VERSION) 프로덕트의 버젼번호
%C(DESCRIPTION) 작업 설명
%C(EMAIL_ADDR) 통지 라우팅 스트링(통지 이메일 주소 필드에 입력된 값)
%C(TYPE) 완료되거나 실패한 작업의 종류를 나타내는 작업 종류 코드
%C(PLATHOME) 설치 디렉토리
%C(USERROLE) 사용자(즉, 관리자)에 지정된 역할
GUI 인터페이스 상의 통지 스크립트 버튼은 통지 스크립트 윈도우(도 19 참조)를 액세스한다. 통지 스크립트 윈도우는 사용자가:
.작업의 완료 또는 실패를 가리키는 확인 메시지에 사용하기 위한 텍스트를 수정하게 하고,
.이 윈도우에 지정된 변수를 사용하여 커스텀화된 스크립트를 기록하게 하며,
. 작업의 완료 또는 실패를 당신에게 통지하는데 사용되는 통지 이메일 주소에 대한 경로를 명시하게 한다.
작업 완료 스크립트 박스 및 작업 실패 스크립트 박스의 각각에서, 사용자는 디폴트 스크립트를 수정하기 위해 선정된 스크립트 변수중 임의의 변수를 입력하거나 또는 통지 스크립트에 대한 완전한 경로 위치 및 파일명을 단순히 타이핑할 수 있다.
사용자에 대한 완전한 경로 위치 또는 통지 이메일 박스 주소는 통지 이메일 주소 박스에 타이핑된다. 이 방법은 페이저, 이메일 또는 전화번호에 대한 통지 라우팅 주소를 할당하여 스케쥴된 작업에 대한 정보를 임의의 위치로 운반하는데 사용된다.
캘린더의 스케쥴링
GUI 인터페이스로부터 액세스가능한 캘린더 선택 윈도우(도 20 참조)는 현재 작업과 함께 사용될 수 있는 선정된 캘린더의 리스트를 제공한다. 이 윈도우 내의 옵션을 사용하여 사용자는:
. 새로운 캘린더를 생성하고,
. 기존의 캘린더를 편집하고,
. 이전에 정의된 캘린더를 선택하고,
. 캘린더를 삭제할 수 있다.
캘린더를 생성하기 위해, 사용자는 캘린더 선택 윈도우 내의 생성 버튼을 선택하고, 이로 인해 생성 캘린더 윈도우(도 21 참조)가 디스플레이되게 된다. 사용자는 ID(캘린더 명) 및 설명 필드를 채운다.
사용자는 다음 버튼을 선택하여 작업이 실행될 날짜의 월과 년을 선택한다:
. >> 버튼을 선택하여 년을 하나씩 진행한다.
. << 버튼을 선택하여 년을 하나씩 감소한다.
. > 버튼을 선택하여 다음 월로 진행한다.
. < 버튼을 선택하여 이전 월로 되돌아간다.
월의 날을 클릭함으로서, 붉은 경계는 캘린더 상의 날짜 및 선택된 날짜 필드 내의 완료 날짜 디스플레이를 표시한다. 다수의 날들이 선택될 수 있다.
기존의 캘린더는 또한 캘린더 선택 윈도우 내의 이용가능한 캘린더 리스트의 그 ID 또는 설명을 클릭한 다음, 편집 버튼(예를 들면 도 22 참조)를 클릭함으로써 캘런더를 선택하여 수정될 수 있다. 일단 캘린더가 디스플레이되면, 캘린더 상의 날을 선택함으로써 부수적인 작업 실행 날이 부가될 수 있다. 사용자는:
. >> 버튼을 선택하여 년을 하나씩 진행한다.
. << 버튼을 선택하여 년을 하나씩 감소한다.
. > 버튼을 선택하여 다음 월로 진행한다.
. < 버튼을 선택하여 이전 월로 되돌아간다.
다음에 사용자는 월의 날을 클릭한다. 붉은 경계는 캘린더 상의 날짜를 표시하고 완료된 날짜가 선택된 날짜 필드에 디스플레이된다. 상기 프로세스는 작업을 실행하기 위한 모든 날들이 선택된 날짜 필드에 디스플레이 될 때까지 반복된다.
날짜들은 선택을 해제할 붉은 경계로 표시된 캘린더 숫자를 클릭함으로써 선택된 날짜 리스트로부터 삭제될 수 있다. 날짜 상의 경계는, 선택해제될 때 사라지고, 날짜들은 더 이상 선택된 날짜 필드에 디스플레이되지 않는다.
OK 버튼은 캘린더를 저장하고, 윈도우를 빠져나간다. 편집된 캘린더는 캘린더 선택 윈도우에서 이용가능하다. 취소 버튼을 클릭함으로써 캘린더에 대한 변경을 저장하지 않고 윈도우를 빠져나간다.
캘린더는, 캘린더 선택 윈도우(예를 들어, 도 20 참조)를 디스플레이하는 GUI 인터페이스(작업 스케쥴링 윈도우/프로퍼티 페이지)의 선택 버튼을 클릭하므로서 선택될 수 있다. 캘린더는 캘린더 ID 또는 이용가능한 캘린더 리스트의 설명을 클릭한 다음, 선택 버튼을 클릭(또는 ID 또는 설명을 두번 클릭)함으로써 하이라이트된다. 다음에 캘린더 선택 윈도우가 닫히고, 선택된 캘린더 ID가 작업 스케쥴링 윈도우 또는 프로퍼티 페이지 상이 캘린더 ID 필드에 디스플레이된다.
캘린더는 캘린더 선택 윈도우로부터의 선택 버튼 대신에 삭제 버튼을 클릭함으로써 상기 절차를 사용하여 삭제될 수 있다.
전략 스케쥴링
전략 스케쥴링 윈도우는 전략에 대한 스케쥴을 뷰하고, 생성하고, 수정하거나 삭제하기 위해 제공된다. 스케쥴 전략 윈도우는 도 23에 도시된 바와 같이 포인트 프로덕트로부터 호출된다.
생성 버튼은 작업 스케쥴링 윈도우/프로퍼티 페이지(도 24 참조)를 호출하는, 현재의 전략에 대한 새로운 스케쥴을 생성하기 위해 제공된다. 작업 스케쥴링 윈도우/프로퍼티 페이지는 새로운 스케쥴로 채워진다.
편집 버튼은 선택된 스케쥴을 편집하는데 이용가능한 작업 스케쥴링 윈도우/프로퍼티 페이지를 호출하는, 현재의 전략에 대한 기존의 스케쥴을 수정하는데 사용된다.
삭제 버튼은 현재의 전략에 대한 스케쥴을 삭제하기 위해 제공된다. 사용자는 먼저 삭제될 스케쥴을 하이라이트한 다음 삭제를 클릭한다. 다음에 클린 업 스크립트를 프롬프트하기 위한 삭제 스케쥴 윈도우가 디스플레이된다.(예를 들어, 도 25 참조)
사용자는 연관된 파일 필드를 클린하기 위해 텍스트(만일 존재하면)를 삭제함으로써 클린업 스크립트를 실행하지 않고 스케쥴을 삭제하거나 또는 스크립트의 경로 및 완전한 명칭을 타이핑함으로써 클린업 스크립트를 실행할 수 있다. 사용자는 OK를 클릭하거나 또는 취소를 삭제함으로써 삭제하지 않고, 전략 스케쥴링 윈도우로 복귀함으로써 행위를 호출한다.
작업 관리 서비스
본 발명은 사용하기 편리하며 직관적인 포맷으로 제시되는 다수의 작업 관리 서비스를 포함한다. 본 발명은 작업 자원 객체를 이용하여 디렉터(Director) 프로그램이 다양한 작업 프로세스를 식별하고 추적하는 것을 가능하게 한다.
디렉터에 작업 자원 객체를 삽입한 후에, 사용자는 다음 작업 관리 일을 수행할 수 있다:
. 다음 포맷의 정보를 뷰한다:
. 열 - 디렉터 윈도우의 우측에 놓임
. 프로퍼티 페이지 - 디렉터 윈도우의 우측에 놓임.
. 로그파일 - 공급된 로그 파일 뷰어
. 작업 삭제
. 작업 재실행
. 작업 실행 취소
. 작업 실행의 진행을 모니터
작업 자원 객체는 디스플레이할 정보를 찾고 작업 관리 프로세스를 이용할 때 취할 작업을 찾기(예를 들어, 작업을 삭제하거나 모니터함) 위한 북마크를 제공한다. 사용자에 의해 호출된 삽입 객체 윈도우(도 26 참조)는 삽입할 객체를 식별한다(POEMS는 삽입될 수 있는 많은 객체를 제공하고, 부분 리스팅이 도 26에 제공된다). 사용자는 객체(본 예에서 POEMS 스케쥴링 서비스)를 선택하고 OK를 누른다. 이에 응답해서, 포괄(도 28), 구독, 표시기, 작업 저장고(도 30), 및 이벤트 상광 탭을 포함하는 프로퍼티 페이지가 디스플레이된다.(도 27 참조)
프로퍼티 페이지는 레이블과 설명 필드를 포함한다. 사용자는 레이블과 설명(설명은 선택적)을 입력한다.
표현 탭은 사용자로 하여금 인텔리콘(Intellicon) 뷰에서 작업을 표현하기 위한 아이콘, 및 선택적으로 백그라운드 및 백그라운드 컬러를 선택하게 한다. 선택적으로, 사용자는 익스플로러 뷰의 아이콘을 선택할 수 있다.
인텔리콘 뷰가 도 289에 도시되어 있고, 인텔리콘 아이콘의 리스트(POEMS 파일에 의해 제공되거나 또는 사용자에 의해 제공됨) 및 선택된 아이콘을 뷰하기 위한 디스플레이 윈도우(그래픽)을 포함한다. 익스플로러 뷰의 예는 도 30에 도시되어 있는데, 이는 작업 자원 객체에 대한 레이블로서 proVision(ProVision)(포인트 프로덕트 또는 어플리케이션) 작업(또는 LES 작업)을 디스플레이하는 익스플로러뷰이다.
작업 저장고 탭을 선택하면, 작업에 관련된 시간의 디스플레이를 위한 시간영역을 정의하기 위한 윈도우를 디스플레이한다. 다운 애로우 풀 다운 메뉴 바(down arrow pull down menu)는 임의의 시간영역의 선택을 사용자에게 제공한다. 이와 같은 선택은 작업 스케쥴링 프로퍼티 페이지에 지정된 작업을 실행하기 위해 선택된 시간 또는 시간영역에 영향을 미치지 않는다. 한 실시예에서, 낮시간 절약 시간은 낮시간 절약 시간을 조정하기 위한 프로그램을 호출하는 자동 보상 선택기를 제공함으로써 보상될 수 있고, 선택적으로, 사용자는 소정의 시간영역의 시간영역 바로 서쪽으로 선택할 수 있다.
작업 자원 객체의 사용
상기 프로세스에 의해 정의된 작업 자원 객체는 사용자로 하여금 작업 및 실행 모두를 찾고 뷰하게 한다. 사용자는 익스플로러 뷰에서 각각의 작업을 찾을 수 있다. 작업이 실행될 때마다, 이는 작업에 대한 실행 폴더를 디스플레이하는 새로운 실행을 생성한다.
각각의 작업 자원 객체는 다음 카테고리로 분류되는 폴더의 계층을 포함한다:
. All Jobs - 현재 상태에 무관하게 모든 작업을 열거하고 또한 모든 실행을 상태에 따라 열거함.
. Job By Group - 그룹 Id에 따라 정렬된 모든 작업을 열거함.
. Jobs By Nodes - 작업이 실행하는 노드에 따라 정렬된 모든 작업을 열거함.
. Jobs By Product - 작업에 사용된 프로덕트에 따라 정렬된 모든 작업을 열거함.
. Jobs By Type - 종류에 따라 정렬된 모든 작업을 열거함.
. Jobs By User - 작업을 스케쥴한 사용자에 따라 정렬된 모든 작업을 열거함.
그러나, 포인트 프로덕트는 사용자로 하여금 작업 그룹 또는 종류를 할당할 수 있게 한다. 폴더의 계층이 도 32에 도시되어 있다.
All Jobs 폴더(도 33 참조)는 이들을 그룹, 프로덕트 또는 종류에 따라 분류하는 대신에 모든 작업들을 수치적으로 열거한다. All Jobs 폴더는 다음을 포함하는 폴더 내의 작업들을 열거한다:
. All Jobs Any Status - 연관된 작업 이력(작업의 각 실행)에 따라 상태에 무관하게 모든 작업을 열거.
. All Runs By Status - 연관된 작업 이력(작업의 각 실행)에 따라 상태에 무관하게 모든 실행을 정렬.
. 완료된 실행
. 실패된 실행
. 시작되지 않은 실행
. 선점된 실행
. 실행하는 실행
. 정지된 실행
. Help Jobs - 보유될 수 잇고 나중에 스케쥴될 수 있는 모든 작업들을 열거함.
. Scheduled Jobs - 실행하도록 스케쥴된 모든 작업을 열거.
사용자는 본래 작업 그룹 폴더를 사용하여 스케쥴되었을 때 이들에 할당된 그룹에 따라 작업을 디스플레이할 수 있다. 특정 프로덕트 어플리케이션(작업을 실행하는데 사용됨)는 그룹을 지정하지만, 이 분류를 이용할 수 없다.
Jobs By Node 폴더를 사용하여 실행되는 노드에 따라 작업들이 디스플레이될 수 있다.
작업들은 Jobs By Product 폴더를 사용하여 각 작업을 실행한 특정 프로덕트에 따라 디스플레이될 수 있다. 이는 다수의 ProVision 프로덕트를 사용하여, POEMS 스케쥴링 서비스(예를 들어, 함수 또는 어플리케이션에 의해 작업을 그루핑을 허용하기 때문에 도움이 된다)를 갖는 작업을 스케쥴하고 실행할 때 도움이 된다.
작업들은, 작업들이 Jobs By Type 폴더를 사용하여 본래 스케쥴되었을 때 이들에게 지정된 작업 종류에 의해 디스플레이될 수 있다. 사용자의 특정 프로덕트 어플리케이션(작업을 실행하는데 사용됨)은 작업 종류를 지정한다. 그러나, 프로덕트는 반드시 이 분류를 사용할 필요는 없다.
작업들은 Jobs By User 폴더를 사용하여 작업을 스케쥴하였던 사용자에 따라 디스플레이될 수 있다. Jobs By User, Jobs By Type, Jobs By Product, Jobs BuyNode 및 Jobs By Group 폴더의 각각은, 각각의 사용자에 대해 위에서 설명한 All Jobs 폴더에 대한 것과 동일한 폴더 계층을 포함한다.
특정 작업은 작업 자원 객체 계층 내의 (+) 부호를 사용함으로서 폴더를 확장하여 찾을 수 있다. 결과로 나타나는 디스플레이는 작업 ID, 작업 아이콘 및 작업 설명을 포함한다.
또한, 특정 작업의 (+) 부호는 그 실행 이력(예를 들어, 도 35 참조)을 보여준다.
실행 이력은 몇개의 폴더에 저장된다. All Runs 폴더는 그 상태에 무관하게 모든 실행을 포함한다. 나머지 6개의 폴더는 그 폴더(완료, 실패, 시작하지 않음, 선점, 실행 및 정지된 실행)에 적용된 상태를 갖는 실행만을 포함한다.
특정 실행은 도 34에 도시된 바와 같이 그 상태에 따라 그리고 All Runs 폴더에 위치될 수 있다. 도 34에서, 작업 883의 Run #1이 저장되고, 따라서, 이는 All Runs 폴더에서는 물론 정지된 실행 폴더에 디스플레이된다.
각각의 실행 리스팅은 다음을 포함한다:
. 실행 아이콘
. 실행 번호
. 실행 시작 날짜 및 시간
날짜는 작업, 실행, 그룹, 노드, 프로덕트, 또는 종류 폴더에 저장된, 모든 작업, 실행, 그룹, 노드, 프로덕트, 종류 및 사용자에 대한 열 포맷으로 뷰될 수 있다. 익스플로러 뷰를 사용할 때 디렉토리 윈도우의 우측 상의 열에 날짜가 디스플레이된다. 도 36에 도시된 바와 같이, 날짜의 일부는, Jobs By Node 폴더 내의 특정 노드 밑의 All Jobs Any Status 폴더 내의 작업에 대해 이용가능하는 것을 보여주고 있다.
사용자는 열 포맷 내의 그 내용에 대한 데이타를 뷰하기 위해 다음 폴더중 임의의 폴더를 선택할 수 있다.(All Jobs와 같은 일부 폴더는 데이타를 제공하지 않는다는 것에 유의한다)
. Jobs By Group
. Jobs By Node
. Jobs By Product
. Jobs By Type
. Jobs By User
. Jobs By Any Status
. All Runs By Status
. Held Jobs
. Scheduled Jobs
. All Runs
. Completed Runs
. Failed Runs
. Not Started Runs
. Preempted Runs
. Running Runs
. Stopped Runs
작업 그룹 데이타 뷰잉
디음 데이타 열은, 사용자가 작업 자원 객체 내의 Jobs By Group 폴더의 텍스트 를 클릭할 때 디스플레이된다.
. 그룹 ID - 전략 그룹 ID 번호.
. 전략 ID - 그룹이 속하는 공통 전략 서비스에 정의된 전략의 전략 ID 번호.
. 설명 - 그룹이 생성될 때 사용자가 입력할 수 있는 그룹의 설명.
. 프로덕트 코드 - 폴더에 뷰될 수 있는 작업들을 생성하는데 사용되는 프로덕트의 코드.
. 프로덕트 버젼 - 폴더에 뷰될 수 있는 작업들을 생성하는데 사용되는 프로덕트의 버젼 번호.
. Jobs_Per_Run - 이 전략 그룹에 대한 프로덕트에 의해 제출된 POEMS 스케쥴링 서비스 작업의 수
. 생성됨(Created) - 전략 그룹 작업들이 생성된 날짜와 시간.
노드 데이타 뷰잉
다음 데이타 열은, 사용자가 작업 자원 객체 내의 Jobs By Node 폴더의 텍스트를 클릭할 때 디스플레이한다.
주 - 작업들이 위치한 노드의 리스트.
프로덕트 데이타 뷰잉
다음 데이타 열은, 사용자가 작업 자원 객체 내의 Jobs By Product 폴더의 테스트를 클릭함으로써 디스플레이된다.
. 프로덕트 코드 - 폴더에서 뷰될 수 있는 작업들을 생성하는데 사용되는 프로덕트용 코드.
. 프로덕트 버젼 - 폴더에서 뷰될 수 있는 작업들을 생성하는데 사용되는 프로덕트의 버젼 번호.
데이타 종류 뷰잉
. 종류 - 작업 종류의 리스트. 사용자는 작업들을 실행하는데 사용된 프로덕트에 지정된, 그 작업 종류 밑에 작업을 위치시킬 수 있다.
사용자 데이타 뷰잉
다음 데이타 열은, 사용자가 작업 자원 객체 내의 Jobs By User 폴더의 텍스트를 클릭할 때 디스플레이된다.
. 사용자 - 사용자 명의 리스트. 사용자는 사용자 명 밑에 열거된 작업을 찾을 수 있다.
작업 데이타 뷰잉
다음 데이타 열은, 사용자가 작업 자원 객체의 All Jobs Any Status, Held Jobs 또는 Scheduled Jobs 폴더의 텍스트를 클릭할 때 디스플레이된다:
. 작업 ID - 유일한 작업 ID 번호
. 설명 - 작업의 선택적 설명.
. 그룹 ID - 작업이 속하는 그룹에 대한 전략 그룹 ID 번호
. 액세스 모드 - 만일 이 열이 L을 디스플레이하면, 작업이 록(locked)되고, 당신은 작업이 언록될 때까지 작업을 반환할 수 없다. 작업은 작업을 실행하는 포인트 프로덕트에 의해 록되고 언록된다. 만일 작업이 록되지 않으면, 이 열은 공백으로 남는다.
. 프로덕트 - 작업을 생성한 프로덕트.
. 종류 - 작업 종류(프로덕트-의존)
. 노드 - 작업이 실행하는 머신
. Whosetz - 작업을 스케쥴하기 위한 시간영역
. When Deployed - 작업이 작업 테이블에 기록된 시간
. Next Start - 이 필드는 다음 값 또는 텍스트 메시지중의 하나를 포함할 수 있다:
. 작업이 실행되려고 하는 다음 시간
. 즉시 실행
. 만료
. 나중에 스케쥴(보유)
. Run Count - 작업이 실행된 총 회수
런 데이타(작업 이력) 뷰잉
다음 데이타 열은, 사용자가 All Runs By Status 폴더 및 다음 실행을 포함하는 임의의 폴더를 클릭할 때 디스플레이한다:
. 작업 ID - 본 실행을 위한 유일한 작업 ID 번호
. 실행 번호 - 유일한 실행 번호(작업의 각 반복적인 실행에 지정된 번호)
. 그룹 ID - 작업이 속하는 그룹의 전략 그룹 ID 번호
. 프로덕트 - 작업을 생성한 PLATINUM ProVision 프로덕트(또는 다른 프로덕트)
.종류 - 작업 종류(프로덕트-의존)
. 시간 영역 - 작업 실행에 사용된 시간 영역
. 스케쥴된 시작 시간 - 작업이 시작하려고 스케쥴된 시간
. 시작 상태 - 작업이 어떻게 시작하였는지에 대한 상태.
이 상태는 POEMS 스케쥴링 서비스에 의해 설정되고, 열은 다음 값을 포함할 수 있다:
. 0 - 작업이 성공적으로 시작됨.
. 1 - POEMS 스케쥴링 서비스가 다운인 동안 시작 시간이 지났고, 작업이 반복하지 않았기 때문에 작업이 실행하지 않음.
. 2 - OS 상태로 인해 실행할 수 없슴.
. 3 - OS 상태로 인해 분기 실패.(불충분한 시스템 자원)
. 4 - 무효 사용자
. 실제의 시작 시간 - 이 작업이 실제로 시작된 시간.
. 종료 시간 - 실행이 완료되었을 때의 날짜와 시간.
. OS 상태 - 작업 프로세서가 생성될 수 없을 때 운영체제에 의해 제공됨(자세한 정보에 대해서는 당신의 운영 체제 문서를 참조)
. 완료 상태 - 작업을 실행한 포인트 프로덕트에 의해 지정된 실행의 완료 상태(상세한 정보를 위해서는 당신의 프로덕트-특정 문서를 참조)
. 실패 - 이 열은 다음 값을 포함할 수 있다.
. 0 - 작업이 성공적이었슴.
. 1 - 작업이 어떤 이유로 실패함.
. 선점 - 이 열은 다음 값을 포함할 수 있다:
. 1 - 귀하의 특정 프로덕트의 운영 규칙으로 인해 허용되지 않았기 때문에 작업이 실행하지 않음.
. -1 - 작업이 선점되었슴.
. 정지 - 이 열은 다음 값을 포함할 수 있다:
. 1 - 에이젼트에 통지하지 않고 작업 프로세스가 종료하고 상태를 알 수 없슴.
. 01 - 작업이 정지되지 않음.
.로그파일 - 이 실행을 위한 로그파일의 이름 및 위치.
프로퍼티 페이지 포맷의 데이타 뷰잉
특정 객체(작업, 실행, 그룹, 프로덕트 또는 종류)에 대한 데이타는 작업 자원 객체 내에서 뷰될 수 있다. 데이타는 디렉토리(익스플로러 뷰) 윈도우의 우측 상의 하나 이상의 탭을 갖는 프로퍼티 페이지 포맷으로 디스플레이한다. 객체의 텍스트를 클릭하면, 도 37에 도시된 바와 같이, 디렉토리의 우측 상의 프로퍼티 페이지 포맷으로 데이타를 디스플레이하여, 프로퍼티 페이지 데이타를 액세스한다.
포괄적인 프로퍼티 페이지는 다음 필드를 포함한다:
. 작업 ID - 유일한 작업 ID 번호
. 설명 - 작업의 선택적 설명.
. 그룹 ID - 작업이 속하는 그룹에 대한 전략 그룹 ID 번호
. 타켓 모드 - 작업이 실행될 머신.
. 타켓 노드에 배치 - 작업이 실행될 노드 상의 작업 테이블에 기록되는 시간.
. 작업 종류 - 작업 종류(프로덕트-의존)
. 작업 소유자 - 작업이 수행되는 객체의 소유자.
. 실행 카운트 - 작업이 실행되었던 회수.
. 실행 상태 - 이 열은 다음 값을 포함할 수 있다:
. 0 : 다음 실행을 대기.
. 1 : 현재 실행중
. 시간 영역을 스케쥴 - 이 작업이 스케쥴되었던 워크스테이션의 시간 영역.
. 재시도 간격(분) - 이 열은 다음 값을 포함할 수 있다:
. 선정 실행 이후에 작업을 실행하려고 시도하기 전에 대기하는 분수 또는
. 0 : 작업이 선점이후에 재실행하지 않음.
. 재시도 카운트 - 이 열은 다음 값을 포함할 수 있다:
. 선점될 때 또는 그렇지 않으면 시작할 수 없는 작업에 대해 취해진 재시도 회수
. 0 : 작업이 재실행되지 않음.
. Recur Fail Threshold - 작업의 재스케쥴링이 정지되기 전에 수락된 실패한 프로덕트 실행의 수.
. Recur Fail Count - 소정의 연속하는 실행회수 동안 작업이 실패하였는지를 테스트하는데 사용됨 (이 숫자는 각각의 실패에 따라 감소되고 각각의 성공적인 실행에 따라 본래의 값으로 리셋되고, 만일 0이면, 작업이 다시 스케쥴되지 않음.)
. 액세스 모드 - 만일 록크(locked)가 나타나면, 사용자는 작업이 언록될 때까지 작업을 재실행할 수 없다. 작업은 작업을 실행하는 포인트 프로덕트에 의해 록크되고 언록된다. 만일 작업이 록크되지 않으면, 이 필트는 공백으로 남는다.
다른 프로퍼티 페이지는 대응하는 탭을 클릭함으로써 디스플레이된다. 명령어 프로퍼티 페이지(도 38 참조)는 다음 필드를 포함한다:
. 명령어 라인 - 실행할 명령어 라인
. ~에 대한 이메일 완료 통지 - 작업 완료 또는 실패 통지를 송신하는데 사용되는 이메일 주소
. 완료 스크립트 - 작업 완료 스크립트
. 실패 스크립트 - 작업 실패 스크립트
. 프로덕트 코드 - 작업을 생성한 ProVision 프로덕트용 코드
데이타베이스 프로덕트 페이지(도 39 참조)는 다음 필드를 포함할 수 있다:
. 데이타베이스 접속 스트링 - 선택적 데이타베이스 접속 스트링 또는 사용된 이름
. 데이타베이스 인스턴스 - 완료되거나 실패한 작업이 실행한 인스턴스 명
. 객체 명 - 그 작업이 완료되거나 실패한 객체 명
. 사용자 ID - 데이타베이스 사용자 ID
. 사용자 패스워드 - 암호화된 데이타베이스 사용자 패스워드
주 : 이 프로퍼티 페이지에 대한 정보는 작업을 실행한 포인트 프로덕트에 의해 설정된다.
작업 스케쥴링 프로퍼티 페이지(도 40 참조)는 작업을 실행한 프로덕트에서 이루어진 다음의 작업 스케쥴링 선택을 디스플레이한다:
. 작업의 시작 날짜와 시간
. 작업이 스케쥴된 시간영역
주 : 만일 이 워크스테이션 버튼의 사용 시간 영역이 선택되면, 이는 작업이 스케쥴되었던 워크스테이션을 가리킨다.
. 작업이 재실행하는 간격
. 작업을 실행하는데 사용된 저장된 캘린더의 캘린더 ID. 이 필드는 만일 저장된 캘린더가 사용되었다면 캘린더 ID를 디스플레이한다.
파라메타 탭 프로퍼티 페이지(도 41 참조)는 다음 필드를 포함한다:
. 작업 파라메타 - 작업 파라메타 명과 값을 열거한다. (포인트 피로덕트는 이 필드의 내용을 판정한다)
포괄적인 탭 프로퍼티 페이지(도 42 참조)는 다음 필드를 포함한다:
. 작업 ID - 이 실행을 위한 유일한 작업 ID
. 실행 번호 - 유일한 실행 번호(작업의 각 반복에 지정된 회수)
. 시간 영역 - 작업이 실행하는 시간 영역
. 스케쥴된 시작 시간 - 작업이 시작하기로 스케쥴된 시간
. 실제의 시작 시간 - 작업의 실행이 실제로 시작된 때의 시간
. 시작 상태 - 작업이 어떻게 시작되었는지의 상태(POEMS 스케쥴링 서비스)
. 성공적으로 시작됨
. 만료됨 - POEMS 스케쥴링 서비스가 다운되어 있는 동안 시작 시간이 경과하였고 작업이 반복하지 않았기 때문에 작업이 실행하지 못함.
. 에이젼트 다운 - POEMS 스케쥴링 서비스 에이젼트가 다운됨.
. 분기 실패 - 프로세스가 불충분한 시스템 자원으로 인해 에이젼트 머신 상에서 실행하지 못함.
. 종료 시간 - 실행이 완료한 날짜와 시간
. 운영 시스템 상태 - 운영 체제에 의해 제공된 프로세스의 상태
. 실행 상태 - 실행의 현재 상태를 가리키는, 다음의 무선 버튼중의 하나가 선택됨:
. 완료 - 실행이 종료됨.
. 시작되지 않음 - 실행이 아직 시작되지 않았음.
. 실행중 - 실행이 현재 진행중에 있슴.
. 정지 - 에이젼트에 통지하지 않고 프로세스가 종료하고 상태를 알 수 없슴.
. 선점 - 실행이 포인트 프로덕트 운용 규칙으로 인해 허용되지 않음
. 실패 - 알 수 없는 이유로 실행이 실패.
. 완료 상태 코드 - 작업을 실행한 포인트 프로덕트에 의해 지정된 실행의 완료 상태(상세한 정보를 위해서는 프로덕트-의존 문서를 참조)
실행 상태 탭 프로퍼티 페이지를 액세스하기 위해, 사용자는 실행 상태 프로퍼티 페이지 상의 데이타를 뷰하기 위해 실행 상태 탭을 클릭한다(도 43 참조).
통계 필드는 작업의 실행에 대한 프로덕트-의존 정보를 디스플레이한다. 만일 데이타가 ProVision, 포인트 또는 다른 프로덕트에 의해 제공되면, 이 필드만이 데이타를 디스플레이한다.
작업 그룹 데이타 뷰잉
작업 그룹 데이타를 액세스하기 위해:
. 작업 자원 객체 내의 그룹의 텍스트를 클릭하면, 도 44에 도시된 바와 같이, 포괄적인 탭 프로퍼티 페이지가 디스플레이된다.
포괄적인 탭 프로퍼티 페이지(그룹의 경우)는 다음 필드를 포함한다:
. 그룹 ID - 전략 그룹 ID 번호
. 설명 - 그룹의 선택적 설명
. 전략 ID - 그룹이 속하는 공통 서비스 전략에 정의된 전략의 전략 ID 번호
. 프로덕트 코드 - 이 필드에 뷰될 수 있는 작업들을 생성하는데 사용되는ProVision 프로덕트용 코드(본 실시예에서, 3문자 플래티넘 코드).
. 프로덕트 버젼 - 본 필드에서 뷰될 수 있는 작업들을 생성하는데 사용된 ProVision 프로덕트의 버젼 번호
. Jobs Per Run - 이 전략 그룹에 대해 프로덕트에 의해 제출된 POEMS 스케쥴링 서비스 작업의 회수
. When Created - 전략 그룹이 생성된 날짜와 시간.
로그 파일 데이타 뷰잉
로그 파일은 작업이 실행될 때, 다양한 ProVision 프로덕트, 포인트 프로덕트, 어플리케이션 프로덕트 등(설명한 바와 같이 API 및 관련된 프로그래밍에 대한 링크를 포함하는 소프트웨어 프로덕트 부류)에 의해 생성된다. 만일 생성되면, 사용자는 작업 자원 객체를 통해 POEMS 스케쥴링 서비스를 사용하여 프로덕트에 의해 생성된 로그 파일을 뷰할 수 있다. 사용자는 로그 파일 뷰어를 발주할 수 있다.
소정의 작업에 대해 로그 파일이 존재하는지의 여부를 판정하기 위해, 사용자는 디렉터 윈도우의 우측 상에 열 포맷으로 데이타를 디스플레이하기 위해 All Runs By Status 폴더의 텍스트 또는 아이콘을 클릭한다. 다음에, 수평 스크롤 바를 사용하여 LOGFILE 열을 뷰하기 위해 좌측 또는 우측 화살표를 스크롤한다(예를 들어, 도 45 참조). 만일 실행을 위한 로그 파일이 이용가능하면, 그 위치가 LOGFILE 열 내의 실행을 위해 행에 디스플레이된다.
실행을 위한 로그 파일을 뷰하기 위해, 사용자는 작업 자원 객체 내의 작업의 실행을 찾는다. 다음에, 실행에 대해 우측을 클릭하여 팝업 메뉴를 디스플레이한다(예를 들어, 도 46 참조). 마지막으로, 팝업 메뉴로부터 뷰 로그 파일을 선택하여 도 47에 도시된 디스플레이를 표시한다.
작업 삭제
사용자가 더 이상 작업 이력을 필요로 하지 않으면, 작업 관리자 윈도우를 사용하여 작업이 삭제될 수 있다. 다수의 작업 또는 하나의 작업이 삭제될 수 있다.
다수의 작업 삭제하기
다수의 작업을 삭제하기 위해, 작업 관리자 윈도우는, 작업 자원 객체에서 삭제할 작업을 포함하는 폴더의 레벨에서 액세스된다. 다음에, 도 48에 도시된 팝업 메뉴를 디스플레이하기 위해 폴더의 아이콘 또는 텍ㄷ스트를 우측 클릭한다. 팝업 메뉴로부터 삭제를 선택하면 삭제 작업 윈도우가 디스플레된다(도 49 참조). 이 윈도우는 제출 작업/실행 필드에서 선택된 모든 작업의 작업 ID와 노드 명을 디스플레이한다.
필드 내의 모든 작업들은 초기에 선택되고 하이라이트된다. 만일 사용자가 작업을 클릭하면, 선택이 해제되고 삭제되지 않을 것이다. 만일 모든 작업들이 선택 해제되면, 제출 버튼이 비활성으로 된다.
다음중 어느 하나에 의해 임의의 작없을 선택해제하기:
. 한번에 하나씩 작업을 클릭(도 49 참조)하거나 또는
. Select None 버튼을 사용하여 모든 작업들을 선택 해제한 다음 삭제할 작업들을 클릭하거나 또는
. 한번에 하나씩 삭제할 작업을 클릭하여 초기에 작업을 선택해제한 다음, Invert 버튼을 사용하여 당신의 선택을 역전함(이는 당신이 선택해제한 작업들을 재선택하고 모든 다른 것을 선택해제할 것이다.)
주 : Select All 버튼은 모든 작업을 재선택하는데 사용될 수 있다.
윈도우는 상태의 동적인 디스플레이 및 행위의 결과를 제공하도록 확장된다(도 50 참조). 만일 작업의 삭제가 성공적으로 완료하면, 각각의 작업에 대한 작업 ID 및 노드 명이 연속되는 필드에 디스플레이한다. 만일 작업의 삭제가 실패하면, 해당 작업에 대한 작업 ID, 노드 명, 및 에러 코드가 실패 필드에 디스플레이한다.
제출되고, 성공하고, 계류중이고 실패한 삭제의 실행 전체가 Submitted, Succeeded, Pending, 및 Failed 필드에 디스플레이한다. 선택적으로, 사용자는 확장된 윈도우에 디스플레이하기 위해 모든 결과를 대기하지 않고 작업들이 삭제되는 동안 Close 버튼을 클릭하거나, 또는 모든 결과가(성공적이거나 실패하거나) 확장된 윈도우 내의 Succeeded 또는 Failed 필드에 디스플레이할 때까지 대기할 수 있다. Close 버튼은 작업 관리자 윈도우플 닫기 위해 당신이 어떤 것을 선택한 Done 버튼으로 변한다.
하나의 작업 삭제하기
하나의 작업을 삭제하기 위해서는, 작업 관리자 윈도우는 작업 자원 객체에서 삭제할 작업의 레벨에서 액세스된다. 사용자는 삭제할 작업을 찾고, 팝업 메뉴(도 51 참조)를 디스플레이하기 위해 작업의 아이콘 또는 텍스트를 우측 클릭하고 Delete를 선택한다.
다음 삭제 작업 윈도우가 디스플레이된다.(도 52 참조) 이 윈도우는 선택된 작업의 작업 ID와 노드 명을 보여준다. 만일 사용자가 작업을 클릭하면, 이것은 선택 해제되고, 제출 버튼이 비활성으로 된다. 제출 버튼을 클릭하면 작업을 삭제하고, 윈도우는 행위의 상태 및 결과의 동적인 디스플레이를 제공하도록 확장한다(도 53 참조).
만일 작업의 삭제가 성공적으로 완료하면, 작업에 대한 작업 ID 및 노드 명이 Succeeded 필드에 디스플레이된다. 만일 작업의 삭제가 실패하면, 작업에 대한 작업 ID, 노드 명, 및 에러 코드가 Failed 필드에 디스플레이된다.
제출되고, 성공하고, 계류중이며 실패한 삭제의 실행 전체가 작은 Submitted, Succeeded, Pending 및 Failed 필드에 디스플레이된다.
작업의 재실행
작업 관리자 윈도우는 동일한 파라메타를 사용하여 완료된 작업들을 재실행하는데 이용될 수 있다. 다수의 작업 또는 하나의 작업 어느 것이 재실행될 수 있다. 작업이 재실행되면, 새로운 실행 번호가 지정된다. 한 실시예에서, 로크된 작업들은 이들 절차를 거쳐 재실되지 못한다.
다수 작업의 재실행
다수의 작업을 재실행하기 위해서는, 작업 관리자 윈도우는 작업 자원 객체에서 재실행할 작업들을 포함하는 폴더의 레벨에서 액세스된다. 재실행할 작업들을 포함하는 폴더를 찾고, 폴더의 아이콘 또는 텍스트를 우측 클릭하면 팝업 메뉴가 디스플레이된다(도 54 참조). 팝업 메뉴로부터 재실행을 선택하면, 재실행 작업 윈도우가 디스플레이된다(도 55 참조). 이 윈도우는 제출 작업/실행 필드에 선택된 모든 작업들의 작업 ID 및 노드 명을 디스플레이하고, 이들을 재실행하기 위한 옵션을 제공한다.
상기 논의한 삭제 작업 절차와 유사하게, 폴더 내의 모든 작업들이 초기에 선택된다. 만일 사용자가 작업을 클릭하면, 이것은 선택 해제되고, 재실되지 않을 것이다. 만일 사용자가 모든 작업을 선택 해제하면, Submit 버튼이 비활성으로 된다.
사용자는 다음에 의해, 시작 날자 & 시간 명세에서 다음 옵션중의 하나를 이용할 수 있다:
. 즉시 실행 버튼을 클릭하여 작업을 즉시 재실행하거나,
. 나중에 스케쥴 버튼을 클릭하여 작업에 대한 이전에 스케쥴된 다음의 시작 시간을 취소하고 Held 작업 폴더에 작업을 보유한다.
주 : 작업 관리자 윈도우를 사용하여 지정된 시간에 또는 즉시 작업이 재실행될 수 있다(상기 논의한 다수의 작업 재실행 참조).
. 버튼에서 실행을 클릭하고, 작업 시작 날짜 필드에 날짜를 타이핑하거나 아래 화살표를 클릭하여 캘린더로부터 날짜를 선택한 다음, 작업 시작 시간 필드에 시간을 타이핑하거나 위/아래 화살표를 사용하여 소정의 시간으로 스크롤한다.
주 : 한 실시예에서, 사용자는 작업을 실행하기 위해 본래 사용된 시간 영역을 사용하여 이들 필드에 날짜와 시간을 설정하여야 한다. 작업 자원 객체 내의 작업 회수는 작업이 본래 실행된 시간 영역에서는 디스플레이하지 않을 있다.
다음에 선택된 작업들이 지정된 시간과 날짜에 재실행된다. 제출 버튼을 클릭함으로써, 선택된 작업을 재실행하고, 윈도우는 행위의 상태 및 결과의 동적인 디스플레이를 제공하도록 확장한다(도 56 참조). 만일 작업이 성공적으로 완료되면, 각각의 작업에 대한 작업 ID 및 노드 명이 Succeeded 필드에 디스플레이된다. 만일 작업이 제출하기를 실패하면, 해당 작업에 대한 작업 ID, 노드 명, 및 에러 코드가 Failed 필드에 디스플레이된다.
제출되고, 성공하고, 계류중이고 실패한 재실행의 실행 전체가 Submitted, Succeeded, Pending 및 Failed 필드에 디스플레이된다.
하나의 작업을 재실행하기
하나의 작업을 재실행하기 위해서는, 작업 관리자 윈도우는 재실행할 작업들레벨에서 액세스된다. 작업 폴더에서 재실할 작업을 찾은 후에, 작업의 아이콘 또는 텍스트를 우측 클릭하여 메뉴를 디스플레이하고(도 57 참조), 재실행이 선택되어, 재실행 작업 윈도우를 디스플레이한다(도 58 참조). 이 윈도우는 선택된 작업의 작업 ID 및 노드 명을 디스플레이하고, 작업을 재실행하기 위한 옵션을 제공한다. 작업을 클릭함으로써, 작업을 선택 해제하고, Submit 버튼은 비활성으로 된다. 상기 논의된 바와 같이, 상기 논의된 바와 같이, 유사한 시작 날짜 & 시간 옵션이 이용가능하다. Submit 버튼을 클릭하면 작업을 재실행한다.
다른 재실행 옵션에서와 같이, 윈도우는 제출의 상태 및 결과의 동적인 디스플레이를 제공하도록 확장한다.
실행 취소
사용자는 작업 관리자를 사용하여 실행하는 작업을 취소할 수 있다. 사용자는 작업의 다수의 실행 또는 하나의 실행을 취소할 수 있다. 그러나, 일부 프로덕트는 작업의 중요한 단계 동안 이와 같은 능력을 일시적으로 디스에이블시킬 수 있지만, 이는 복구를 허용하지 않고, 복구를 어렵게 하거나 또는 복구를 위해 프로덕트 특정 절차를 따라야할 것을 필요로 한다.
다수 실행의 취소
다수의 실행을 취소하기 위해서는, 작업 관리자는는 작업 자원 객체에서 취소할 실행을 포함하는 폴더의 레벨에서 액세스된다. 취소할 실행을 포함하는 실행중인 실행 폴더를 찾은 후에, 폴더의 아이콘 또는 텍스트를 우측 클릭하면 팝업 메뉴가 디스플레이된다(도 59 참조).
팝업 메뉴로부터 취소를 선택함으로서, 취소 실행 윈도우가 디스플레이된다(도 60 참조). 이 윈도우는 제출 작업/실행 필드에서 선택된 모든 실행의 작업 ID,실행 번호, 및 노드 명을 디스플레이한다(예를 들어, 도 57 참조).
삭제 작업 절차와 유사하게, 폴더 내의 모든 실행이 초기에 선택된다. 실행을 클릭하므로써, 이것이 선택 해제되고, 취소되지 않을 것이다. 만일 모든 실행이 선택 해제되면, 제출 버튼은 비활성으로 된다. 제출 버튼은 선택된 실행을 취소하고, 윈도우는 행위의 상태 및 결과의 동적인 디스플레이를 제공하도록 확장한다.
작업 진행의 모니터잉
진행 모니터는 POEMS 스케쥴링 서비스를 사용하여 프로덕트에 의해 실행되는임의의 작업의 현재 단계 및 전반적인 진행에 대한 정보를 뷰하도록 제공된다.
개별적인 프로덕트는 그 작업의 서로 다른 단계에 관련된 이벤트를 나타낸다. 진행 모니터는 이들 이벤트를 구독하고, 결과로 나타나는 데이타를 사용하여 사용자에게 작업의 진행에 대한 정보를 제공한다.
특정 진행 식별자 및 모니터될 수 있는 작업 단계는 POEMS 스케쥴링 서비스를 사용하여 프로덕트의 개별적인 설계에 의존한다.
진행 모니터를 액세스하기
진행 모니터는 작업 저장고 자원 객체 내의 개별적인 실행 레벨에서 액세스될 수 있다.
작업의 진행을 모니터하기 위해서는, 사용자는 먼저 작업의 실행을 찾고, 실행을 클릭하여 팝업 메뉴를 디스플레이한다(도 61 참조). 팝업 메뉴로부터 진행 모니터를 선택하면, 진행 모니터가 디스플레이된다(도 62 참조). 진행 모니터는 다음 정보를 디스플레이하도록 구성되어 있다:
. 작업의 현재 단계의 이름
. 작업 ID 및 실행 번호
. 작업의 현재 단계의 이름 및/또는 번호
. 현재 단계 번호 및 현재 단계에 남아있는 시간
. 작업의 현재 단계의 진행의 그래픽 디스플레이 및 현재 단계의 완료율
. (모든 단계를 포함하는) 작업의 전체적인 진행의 그래픽 디스플레이, 및 전체 작업에 대한 완료율
한 실시예에서, 주 텍스트 필드의 내용은 작업을 스케쥴한 프로덕트의 설계에 따라 다르다.
작업의 현재 단계의 이름은, 진행 모니터 윈도우의 타이틀 바로부터 뷰될 수 있다. 작업의 현재 단계의 진행은 진행 모니터 윈도우 내의 주 텍스트 필드를 뷰하거나 또는 진행 모니터 윈도우 내의 현재 단계 진행 필드를 뷰함으로써 판정된다. 흑색 막대는 단계 진행을 그래픽하게 디스플레이하는데 사용된다. 이 필드는 또한 작업의 현재 단계의 완료율을 제공한다.
전체 작업에 대한 진행은 진행 모니터 윈도우 내의 전체적인 진행 필드를 사용하여 뷰될 수 있다. 다시, 흑색 막대는 전체적인 작업의 진행, 및 전제 작업에 대한 완료율을 그래픽하게 디스플레이하는데 사용된다.
고장진단 정보
본 발명은 많은 고장 진단 기법을 포함한다. 많은 가능성은 작업을 삭제하고 재실행하거나 작업의 특정 실행을 취소하지 못하는 것을 초래할 수 있다.
만일 제출이 실패하면,
. 로컬 및 중앙 저장고에의 통신이 작동하지 않을 수도 있다. 당신이 두개 저장고 모두와 통신한다는 것을 증명한 다음 다시 요청을 제출한다.
. 사용자는 작업 실행의 중요한 단계 동안 실행을 취소하려고 시도하였을도 있다. 사용되고 있는 특정 ProVision 프로덕트는, 잠재적인 충돌을 피하기 위해 사용자로 하여금 취소 특징을 이용하지 못하게 할 수 있다.
. POEMS 스케쥴링 서비스 에이젼트(ptlesag.exe)는 객체가 위치한 노드/머신상에서 실행하지 않을 수도 있다. 스케쥴링 서비스 에이젼트가 그 머신 상에서 실행한다는 것을 증명한 다음, 다시 요청을 제출한다.
스케쥴링 서비스 에이젼트가 노드 상에서 실행한다는 것을 증명하기 위해, 사용자는 메뉴로부터 툴 ▶모니터 ▶ 서비스 관리자를 선택하여, 디렉터 서비스 관리자 모니터 윈도우를 디스플레이한다(도 63 참조). 사용자는 플러스 부호(+)를 클릭하거나 또는 서비스 관리자의 텍스트를 더블 클릭하여 서로 다른 노드 상에 서비스 관리자의 리스트를 디스플레이할 수 있다. 노드에 대한 서비스 관리자의 텍스트를 클릭하면, 해당 노드에 상주하는 프로그램에 대한 정보를 갖는 서비스 관리자 모니터의 우측이 나오게 된다(도 64 참조).
본 발명은 데이타베이스 프로덕트의 플래티넘 슈터(Platinum suite)에 의해 이용된 POEMS 스케쥴링 서비스를 참조하여 설명되었다. 그러나, 본 발명의 가르침은 유사한 서비스를 제공하기위해 컴퓨터 도는 다른 프로덕트의 임의의 개별적이거나 또는 슈트에 적용될 수 있다. 따라서, 본 발명은 특정 라인의 프로덕트 또는 프로덕트의 종류(예를 들면, 포인트 프로덕트, ProVision 프로덕트 또는 데이타베이스)에 제한되어 있지 않으며, 일반적으로 임의의 컴퓨터 프로세스 또는 어플리케이션에 적용할 수 있다.
본 발명은 종래의 범용 또는 전용 디지탈 컴퓨터를 사용하여 용이하게 구현될 수 있거나 또는 컴퓨터 기술의 숙련자에 명확한 바와 같이, 본 발명의 가르침에 따라 마이크로프로세서 프로그램될 수 있다.
소프트웨어 기술의 숙련자에 명확한 바와 같이, 본 발명의 개시의 가르침에기초하여 숙련된 프로그래머에 의해 적합한 소프트웨어 코딩이 용이하게 준비될 수 있다. 본 발명은 또한 기술분야의 숙련자에 명확한 바와 같이, 어플리케이션 특정 집적 회로를 제공하거나 또는 종래의 구성요소 회로의 적당한 네트워킹을 상호접속함으로써 구현될 수 있다.
본 발명은 위에 인스트럭션이 저장되고, 본 발명의 프로세스중 임의의 프로세스를 수행하기 위해 컴퓨터를 프로그램하는데 사용될 수 있는 기억 매체(매체)인 컴퓨터 프로그램 제품을 포함한다. 기억 매체는 플로피 디스크, 광 디스크, DVD, CD-ROM, 마이크로웨이브 및 광자기 디스크, ROM, RAM, EPROM, EEPROM,DRAM, VRAM, 플래시 메모리 장치, 자기 또는 광학 카드, (분자 메모리 IC를 포함하는) 나노시스템를 포함하는 임의의 디스크 또는 인스트럭션 및/또는 데이타를 저장하는데 적합한 임의의 유형의 매체 또는 장치를 포함하지만 이에 한정되어 있지 않다.
본 발명은 범용/전용 컴퓨터 또는 마이크로프로세서의 하드웨어 모두를 제어하고, 컴퓨터 또는 마이크로프로세서를 인에이블시켜 본 발명의 결과를 이용하여 인간 사용자 또는 다른 메커니즘과 인터렉트하기 위한 하드웨어를 포함한다. 이와 같은 소프트웨어는 장치 드라이버, 운영 체제, 및 사용자 어플리케이션을 포함하지만 이에 국한되어 있지 않다. 궁극적으로, 이와 같은 컴퓨터 판독가능 매체는 상기 설명한 바와 같이 본 발명을 수행하기 위한 소프트웨어를 더 포함한다.
범용/전용 컴퓨터 또는 마이크로프로세서의 프로그래밍(소프트웨어)에 포함되어 있는 것은, 그래픽 사용자 인터페이스, 작업 스케쥴링, 작업 데이타 관리, 작업 관리, 명령어 라인 인터페이스, 캘린더링 함수 및 네트워크에 걸친 통신용 어플리케이션 프로그래밍 인터페이스를 포함하지만 이에 국한되어 있지 않는, 본 발명의 가르침을 구현하기 위한 소프트웨어 모듈이다. 이 소프트웨어 모듈은 또한 네트워크 내의 컴퓨터 플랫폼 상의 개별적인 노드에 대해 동작하는 작업 스케쥴링 에이젼트, 및 본 발명의 프로세스에 따른 결과의 디스플레이, 저장 또는 통신을 위한 모듈을 포함한다.
상기 설명한 API의 각각은 컴파일되어 특정 포인트 프로덕트, ProVision 프로덕트 또는 본 발명을 수행하기 위해 그와 같은 API를 이용하는 다른 어플리케이션에 링크된다. 또한, 구성 파일이 본 발명의 셋업 및 운영을 위해 준비되고, 저장고가 본 발명에 의해 유지된다.
명백히, 상기 가르침에 비추어, 본 발명의 수많은 수정과 변형이 가능하다. 따라서, 그와 같은 변형 및 수정은 본 발명에 특정하게 기술되어 있지 않는 한 첨부하는 특허청구의 범위에 포괄되는 것을 알아야 한다.

Claims (46)

  1. 적어도 하나의 계산 플랫폼의 적어도 하나의 노드에서 실행할 작업들을 스케쥴링하는 작업 스케쥴링 방법으로써,
    각 노드에 설치되어 자신에게 제출되는 작업들의 실행에 착수하도록 구성된 엔터프라이즈 스케쥴링 에이젼트와;
    상기 노드들중 적어도 하나의 노드에서 실행을 위해 제출되도록 적어도 하나의 작업을 식별하는 변수들을 받아드려 유효화하도록 구성된 프리젠테이션 층과; 그리고
    상기 변수들에 근거하여 적어도 하나의 작업을 할당하고 상기 할당된 작업을 적어도 하나의 엔터프라이즈 스케쥴링 에이젼트에 제출하도록 구성된 작업 스케쥴러를 포함하는 작업 스케쥴링 장치.
  2. 제 1항에 있어서, 각 엔터프라이즈 스케쥴링 에이젼트에 제출된 작업 데이터 및 작업 이력를 유지하도록 구성된 작업 데이터 관리 장치를 더 포함하는 작업 스케쥴링 장치.
  3. 제 2항에 있어서, 상기 작업 이력는 제출된 상기 작업의 상태에 관한 각 엔터프라이즈 스케쥴링 에이젼트로부터 수신된 정보를 포함하는 작업 스케쥴링 장치.
  4. 제 2항에 있어서, 상기 작업 데이터 관리 장치는 상기 작업 스케쥴러가 상기 엔터프라이즈 스케쥴링 에이젼트에 제출될 작업에서 변수들을 설정하는데 사용하는 작업 스케쥴링 장치.
  5. 제 1항에 있어서, 각 엔터프라이즈 스케쥴링 에이젼트에 제출된 작업들 및 이들의 작업 이력를 저장하는 작업 이력 저장고를 더 포함하며;
    여기서 각 엔터프라이즈 스케쥴링 에이젼트는
    상기 작업 스케쥴러와 상기 엔터프라이즈 스케쥴링 에이젼트사이에서 메세지를 송수신하도록 구성된 에이젼트 커뮤니케이터와;
    상기 엔터프라이즈 스케쥴링 에이젼트에 제출된 작업들을 설정, 착수, 실행 및 관리하도록 구성된 작업 관리자와;
    상기 작업 이력 저장고로부터 데이터를 갱신 및 삭제하도록 구성된 데이터 관리자와; 그리고
    상기 엔터플라이즈 스케쥴링 에이젼트(LES AGENT)의 내부 기능, 파일 관리 및 메시지 처리 함수들을 처리하도록 구성된 저 레벨 API를 포함하는 작업 스케쥴링 장치.
  6. 제 5항에 있어서, 상기 작업 스케쥴러와 각 엔터프라이즈 스케쥴링 에이젼트사이에서 메시지들을 구성 및 커뮤니케이션하도록 구성된 엔터프라이즈 커뮤니케이터와;
    각 엔터프라이즈 스케쥴링 에이젼트에 제출된 작업들의 작업 이력를 유지하도록 구성된 작업 데이터 관리 장치를 더 포함하며,
    여기서, 상기 데이터 관리자는 상기 에터프라이즈 스케쥴러로부터 상기 작업 데이터 관리 장치에 전송된 엔터프라이즈 커뮤니케이터 메시지들을 통해 상기 작업 이력를 갱신하는 작업 스케쥴링 장치.
  7. 제 1항에 있어서, 상기 엔터프라이즈 스케쥴링 에이젼트에 제출된 작업들의 행정에 관한 명령을 받아드리도록 구성된 명령 라인 장치와; 그리고
    실행시 상기 엔터프라이즈 스케쥴링 에이젼트들중 적어도 하나에 상기 명령라인을 커뮤니케이션하도록 구성된 작업 행정 장치를 더 포함하는 작업 스케쥴링 장치.
  8. 제 7항에 있어서, 상기 명령 라인 장치에 의해 수락된 상기 명령들에는 적어도 하나의 작업 삭제, 작업의 전반적인 실행, 작업 실행의 취소, 모든 작업의 리스트화, 모든 작업들에 대한 프러턱트 코드, 상태 및 노드들중 적어도 하나로의 리스트화 및 적업의 즉시 재실행이 포함되는 작업 스케쥴링 장치.
  9. 제 8항에 있어서, 상기 명령 라인 장치에 의해 수락된 상기 명령들은 콘텍스트 변수들을 포함하며; 그리고
    상기 엔터프라이즈 스케쥴링 에이젼트는 현재의 작업 및 작업 변수들에 따라상기 콘텍스트 변수들을 변환하며, 상기 명령들을 실행하는 작업 스케쥴링 장치.
  10. 제 1항에 있어서, 상기 엔터프라이즈 스케쥴링 에이젼트와 그리고 상기 작업 스케쥴링 장치에 작업들을 제출하는 적어도 하나의 프러덕트와의 사이에 커뮤니케이션 링크를 제공하도록 구성된 포인트 프러덕트 장치를 더 포함하며;
    여기서 상기 포인트 프러덕트 장치는 작업 상태, 작업 로그파일, 설정, 취소, 작업 변수 기능을 커뮤니케이션하며, 각 엔터프라이즈 스케쥴링 에이젼트와 상기 적어도 하나의 프러덕트 사이에서 요청을 행하는 작업 스케쥴링 장치.
  11. 제 10항에 있어서, 명령라인 입력들을 수락하여 상기 명령라인 입력들을 적어도 하나의 엔터프라이즈 스케쥴링 에이전트에 커뮤니케이션 하도록 구성된 작업 관리 장치와;
    각 엔터프라이즈 스케쥴링 에이젼트에 제출된 작업들의 작업 이력을 유지하도록 구성된 작업 데이터 관리 장치와; 그리고
    상기 작업 스케쥴러, 포인트 프러덕트 장치, 작업 관리 장치 및 작업 데이터 관리 장치들 중 적어도 하나와 상기 엔터프라이즈 스케쥴링 에이젼들 각각과의 사이에 메시지를 전송하도록 구성된 엔터프라이즈 커뮤니케이터를 더 포함하는 작업 스케쥴링 장치.
  12. 제 1항에 있어서, 상기 작업 스케쥴러와 상기 엔터프라이즈 스케쥴링 에이젼트와의 사이에서 메시지를 전송하도록 구성된 엔터프라이즈 커뮤니케이터를 더 포함하는 작업 스케줄링 장치.
  13. 제 12항에 있어서, 각 엔터프라이즈 스케쥴링 에이전트는 고유 데이터 그룹으로 각 엔터프라이즈 스케쥴링 에이젼트를 식별하는 특정 노드 어드레스에 등록되고; 그리고
    상기 엔터프라이즈 커뮤니케이터는 각 메시지가 적어도 하나의 엔터프라이즈 스케쥴링 에이젼트로 보내기 위해 데이터 그룹에 대응하는 적어도 하나의 목적지로 각 메시지를 엔코드하는 작업 스케쥴링 장치.
  14. 제 1항에 있어서, 상기 노드들 각각에 설치된 로컬 작업 저장고를 더 포함하며; 여기서,
    각 로컬 작업 저장고는 로컬 작업 저장고가 설치된 노드에 제출된 각 작업에서 작업 및 작업 이력 정보를 유지하고;
    각 로컬 작업 저장고는 로컬 작업 저장고가 설치된 노드에 설치된 엔터프라이즈 스케쥴링 에이젼트에 의해 갱신되고; 그리고
    상기 작업 정보는 각 작업을 실행하는데 필요한 작업 파라메타들을 포함하는 작업 스케쥴링 장치.
  15. 제 14항에 있어서, 각 엔터프라이즈 스케쥴링 에이젼트에 제출된 작업들의작업 이력을 유지하도록 구성된 작업 데이터 관리장치와; 그리고
    각 로컬 작업 저장고를 상기 작업 데이터 관리 장치에 의해 유지된 작업 이력과 동기화 시키도록 구성된 동기화 장치를 더 포함하는 작업 스케쥴링 장치.
  16. 제 1항에 있어서, 상기 작업들 중 적어도 하나의 실행을 모니터링 및 디스 플레이 하도록 구성된 진행 모니터를 더 포함하며, 여기서 상기 진행 모니터는 상기 작업의 상기 작업 및 현재 위상에 대한 표시; 상기 작업의 퍼센트 완성; 및 상기 현재 위상의 퍼센트 완성도에 대한 시각적 표시를 제공하는 작업 스케쥴링 장치.
  17. 제 1항에 있어서, 작업을 제출하는 사용자로부터 로그인 파라메타를 수락하도록 구성된 자동 로그인 장치를 더 포함하며; 여기서 상기 로그인 파라메타는 엔터프라이즈 스케쥴링 에이젼트가 제출된 작업에 착수 및 실행하는데 사용되는 작업 스케쥴링 장치.
  18. 제 1항에 있어서, 사용자에게 제출된 작업의 상태를 통보하기 위한 명령을 갖는 통보 스크립트를 실행하도록 구성된 통보 스크립팅 장치를 더 포함하며;
    여기서 상기 통보 스크립팅 장치가 특정 작업에 대한 통보 스크립트를 생성, 편집 및 선택하는 설비를 포함하는 작업 스케쥴링장치.
  19. 제 1항에 있어서, 상기 프리젠테이션 계층이 제출될 작업을 스케쥴링 및 명시하는 사용자 입력을 수락하는 GUI 인터페이스를 포함하고;
    여기서 상기 GUI 인터페이스는 스케쥴링 캘린더의 선택 및 생성, 시작 날짜 및 시간의 선택, 반복 작업 실행 주기의 선택 및 즉시의 작업 실행의 선택을 위한 설비들을 포함하는 작업 스케쥴링 장치.
  20. 제 1항에 있어서, 사용자가 작업 및 작업 실행을 위치설정 및 뷰잉할 수 있도록 구성된 자원 관리 장치를 더 포함하는 작업 스케쥴링 장치.
  21. 제 20항에 있어서, 상기 자원 관리 장치는 작업을 나타내는 객체를 정의하는 RM GUI를 포함하며,
    상기 RM GUI 는 작업을 확인하는 라벨과 작업에 대한 상세 설명을 위한 입력필드를 갖는 일반 프로퍼티와;
    작업을 나타내는 아이콘을 확인하는 선택필드를 갖는 상세 프로퍼티와; 그리고 작업시간을 표시하기 위한 시간대를 식별하는 선택필드를 갖는 저장 페이지를 갖는 작업 스케쥴링 장치.
  22. 제 21항에 있어서, 상기 자원 관리 장치에 의해 정의되는 객체는 모든 작업 폴더, 그룹 작업별 폴더, 노드 별 작업 폴더, 프러덕트 별 작업 폴더, 유형별 작업 폴더 및 사용자별 작업 폴더들 중 적어도 하나를 포함하는 폴더들의 계층으로 구성된 작업 스케쥴링 장치.
  23. 제 22항에 있어서, 상기 전체 작업 폴더는 폴더들을 포함하는데 이들 폴더들은 각 작업의 상태 및 관련 작업 이력에 무관하게 작업들을 리스트화 하는 전체 작업 임의 상태 폴더들과;
    완료 실행, 실패 실행, 비 착수 실행, 프리엠프트 실행, 수행 실행 및 정지 실행을 비롯한, 상태에 따라 작업들을 리스트화 하는 상태 폴더에 의해 전체실행들과;
    나중 시간동안 유지 및 스케쥴링 될 수 있는 작업들을 리스트화 하는 유지 작업 폴더와; 그리고
    실행이 스케쥴링된 작업들을 리스트화하는 스케쥴링 작업 폴더를 포함하는 작업 스케쥴링 장치.
  24. 제 1항에 있어서, 상기 프리젠테이션 계층은 사용자로 하여금 전략을 위한 스케쥴을 뷰잉, 생성, 변경 및 삭제하게 할 수 있도록 구성된 작업 스케쥴링 장치.
  25. 다중 네트워크 컴퓨팅 플랫폼을 통한 작업 스케쥴링 방법으로써,
    스케쥴링 될 적어도 하나의 작업에 대한 파라메타에 근거하여 적어도 하나의 작업을 결정하고;
    상기 적어도 하나의 작업을 상기 컴퓨팅 플랫폼의 선택된 노드들에 유지된적어도 하나의 스케쥴링 에이젼트에 전송하고; 그리고
    상기 스케쥴링의 관리하에서, 상기 선택된 노드에서 각 작업을 실행하는 단계를 포함하는 작업 스케쥴링 방법.
  26. 제 25항에 있어서, 상기 실행 작업의 진행을 모니터하고; 그리고 상기 진행을 진행 모니터에 표시하는 단계를 더 포함하는 작업 스케쥴링 방법.
  27. 제 25항에 있어서, 각 작업 및 각 작업의 이력을 작업 이력 저장고에 기록하는 단계를 더 포함하는 작업 스케쥴링 방법.
  28. 제 27항에 있어서, 작업 데이터 관리 장치를 이용하고;
    상기 작업의 선택된 노드의 스케쥴링 에이젼트로부터 전송된 각 작업에 관한 상태 메시지들을 검색하고; 그리고
    상기 상태 메시지들에 근거하여 상기 작업 이력 저장고를 갱신하는 단계를 더 포함하는 작업 스케쥴링 방법.
  29. 제 28항에 있어서, 상기 노드들 각각에 로컬작업 저장고들을 각각 유지하는 단계를 더 포함하며, 상기 저장고들 각각에는 작업 및 각 노드에 제출된 각 작업에 대한 작업이력이 포함된 작업 스케쥴링 방법.
  30. 제 29항에 있어서, 상기 작업 이력 저장고를 각 로컬 작업 저장고와 동기화 시키는 단계를 더 포함하는 작업 스케쥴링 방법.
  31. 제 25항에 있어서, 상기 결정 단계는 프로덕트와 그리고 상기 작업 파라메터들을 수집하는 사용자 인터페이스중 하나로부터 상기 작업 파라메타들을 검색하고;
    상기 작업 파라메타들을 유효화하고; 그리고
    상기 작업 파라메타들에 근거하여 작업을 할당하는 작업 스케쥴링 방법.
  32. 제 25항에 있어서, 상기 전송단계가 상기 작업 파라메터들을 PEC 통신 포맷으로 패키징하고; 그리고
    상기 패키징된 작업 파라메터들을 상기 작업 파라메터들이 결정된 컴퓨팅 플랫폼으로부터 선택된 노드상에 유지된 상기 스케쥴링 에이젼트를 전송하는 단계를 포함하는 작업 스케쥴링 방법.
  33. 제 25항에 있어서, 상기 실행 단계가 상기 선택된 노드를 상기 작업 파라메터 들에 의해 식별된 응용프로그램을 실행하도록 셋업하고;
    상기 선택된 노드에서 상기 응용 프로그램을 실행하고; 그리고
    상기 실행되는 응용 프로그램의 진행을 모니터링 하는 단계를 포함하는 작업 스케쥴링 방법.
  34. 제25항에 있어서, 상기 엔터프라이즈 스케쥴링 에이젼트에 제출된 작업들의 관리를 위한 명령 라인을 수락하고; 그리고
    실행을 위해 상기 명령라인을 상기 엔터프라이즈 스케쥴링 에이젼트에 커뮤니케이팅하는 단계를 더 포함하는 작업 스케쥴링 방법.
  35. 제34항에 있어서, 상기 명령 라인에 있는 콘텍스트를 상기 콘텍스트 변수 및 관리될 상기 작업에 근거하여 데이터로 대체하고; 그리고
    상기 명령라인을 실행하는 단계를 더 포함하는 작업 스케쥴링 방법.
  36. 제25항에 있어서, 작업 상태, 작업 로그파일, 셋업, 삭제, 작업 파라메타 함수, 및 프러덕트와 각 엔터프라이즈 스케쥴링 에이젼트사이에 상기 데이터를 위한 요청중 적어도 하나를 포함하는 데이터를 커뮤니케이팅하는 단계를 더 포함하는 작업 스케쥴링 방법.
  37. 제25항에 있어서, 각 엔터프라이즈 스케쥴링 에이젼트를 노드 어드레스에 등록하는 단계 - 상기 노드 어드레스는 상기 등록된 엔터프라이즈 스케쥴링 에이젼트를 고유 데이터그룹으로 식별한다-와;
    작업들과 작업 관리 명령들 및 각 엔터프라이즈 스케쥴링 에이젼트를 갖는 요청들을 메시지를 통해 커뮤니케이팅 하는 단계와; 그리고
    수취 엔터프라이즈 스케쥴링 에이젼트에 전송된 각 메시지를 데이터그룹에대응하는 적어도 하나의 목적지로 엔코딩 하는 단계 - 상기 목적지는 상기 메시지를 상기 수취 엔터프라이즈 스케쥴링 에이젼트에 전송한다 - 를 더 포함하는 작업 스케쥴링 방법.
  38. 제25항에 있어서, 자동 로그인 작업을 스케쥴링하는 사용자로부터 자동 로그인 파라메타를 검색하고; 그리고
    상기 자동 파라메타를 이용하여 상기 작업의 실행을 착수하는 단계를 더 포함하는 작업 스케쥴링 방법.
  39. 제38항에 있어서, 제출되는 작업에 대한 통지 스크립트를 검색하는 단계와; 그리고
    적어도 하나의 완성에서 그리고 요청된 상태 포인트에서 통지 스크립트를 실행하는 단계를 더 포함하는 작업 스케쥴링 방법.
  40. 제25항에 있어서, 상기 작업들 중 적어도 하나에 대한 실행시간 및 간격들 중 적어도 하나를 식별하는 스케쥴링 켈린더를 수락하는 단계와; 그리고
    상기 켈린더에서 식별된 시간 및 간격에서의 선택된 노드들에서 상기 작업들을 실행하는 단계를 더 포함하는 작업 스케쥴링 방법.
  41. 제25항에 있어서, 상기 작업을 나타내도록 선택된 기록 상세 설명, 라벨 및아이콘을 포함하는, 상기 작업들중 적어도 하나의 상세 설명을 제공하는 단계와; 그리고
    작업 시간을 표시하기 위한 시간대를 식별하는 단계를 더 포함하는 작업 스케쥴링 방법.
  42. 제25항에 있어서, 폴더들을 포함하는 객체에 작업 시간 및 상태에 관한 정보를 놓는 단계를 더 포함하며, 여기서 상기 폴더들 각각은 전체 작업 폴더, 그룹별 작업 폴더, 노드별 작업 폴더, 프러덕트 별 작업 폴더, 유형별 작업 폴더 및 사용자별 작업 폴더를 비롯한 그 내부에 포함된 작업들의 카테고리화를 식별하는 작업 스케쥴링 방법.
  43. 제42항에 있어서, 추가적인 폴더들을 유지하도록 상기 전체 작업 폴더를 조직하는 단계를 더 포함하며, 상기 추가의 폴더들은
    상태와 각 작업의 관련 작업 이력에 무관하게 작업들을 리스트화 하는 전체 작업 임의 상태 폴더와;
    완료 실행, 실패 실행, 비 착수 실행, 프리엠프트 실행, 수행 실행 및 정지 실행을 비롯한, 상태에 따라 작업들을 리스트화하는 상태 별 전체 실행 폴더와;
    나중 시간동안 유지 및 스케쥴링될 수 있는 작업들을 리스크화하는 유지 작업 폴더와; 그리고
    실행을 위해 스케쥴링된 작업들을 리스트화하는 스케쥴링 작업 폴더들중 적어도 하나를 포함하는 작업 스케쥴링 방법.
  44. 제25항에 있어서, 사용자로 하여금 전략을 위해 스케쥴들을 뷰, 생성, 변경 및 삭제할 수 있도록 하는 전략 스케쥴링 윈도우를 제공하는 단계를 더 포함하는 작업 스케쥴링 방법.
  45. 제42항에 있어서, 컴퓨터에 적재될때 컴퓨터로 하여금 스케쥴링될 적어도 하나의 작업에 대한 작업 파라메타에 근거하여 적어도 하나의 작업을 결정하고;
    상기 컴퓨터 플렛폼의 선택된 노드들에 유지된 적어도 하나의 스케쥴링 에이젼트에 상기 적어도 하나의 작업을 전송하고; 그리고
    상기 스케쥴링 에이전트의 관리하에서, 상기 선택된 노드에서 각 작업을 실행하는 단계를 실행할 수 있도록 하는 컴퓨터에 저장된 명령들을 갖는 컴퓨터 판독가능 매체.
  46. 제42항에 있어서, 적어도 하나의 컴퓨팅 플랫폼의 적어도 하나의 노드에서 실행하기위해 작업들을 스케쥴링하는 작업 스케쥴링 장치로서,
    각 노드에 설치되며, 자신에게 제출되는 작업들의 실행을 착수하도록 구성된 엔터프라이즈 스케쥴링 수단과;
    상기 노드들중 적어도 하나에서 실행을 위해 제출될 적어도 하나의 작업을 식별하는 파라메터들을 수락 및 유효화시키도록 구성된 프리젠테이션 수단과; 그리고
    상기 파라메타들에 근거하여 적어도 하나의 작업을 할당하고 그 할당된 작업을 적어도 하나의 엔터프라이즈 스케쥴링 수단에 제출하도록 구성된 작업 스케쥴러 수단을 포함하는 작업 스케쥴링 장치.
KR1020017008027A 1998-12-22 1999-12-21 컴퓨터를 스케쥴하고 모니터링하기 위한 시스템 KR20010099919A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/219,071 US7386586B1 (en) 1998-12-22 1998-12-22 System for scheduling and monitoring computer processes
US09/219,071 1998-12-22
PCT/US1999/031024 WO2000038033A2 (en) 1998-12-22 1999-12-21 System for scheduling and monitoring computer processes

Publications (1)

Publication Number Publication Date
KR20010099919A true KR20010099919A (ko) 2001-11-09

Family

ID=22817738

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017008027A KR20010099919A (ko) 1998-12-22 1999-12-21 컴퓨터를 스케쥴하고 모니터링하기 위한 시스템

Country Status (12)

Country Link
US (1) US7386586B1 (ko)
EP (1) EP1145098A4 (ko)
JP (1) JP2002533798A (ko)
KR (1) KR20010099919A (ko)
CN (1) CN1185590C (ko)
AU (1) AU2391700A (ko)
BR (1) BR9916478A (ko)
CA (1) CA2356563A1 (ko)
HK (1) HK1043211A1 (ko)
IL (1) IL143825A0 (ko)
WO (1) WO2000038033A2 (ko)
ZA (1) ZA200105301B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101446723B1 (ko) * 2012-11-30 2014-10-06 한국과학기술정보연구원 작업 실행 관리 방법, 작업 실행 관리 장치, 및 작업 실행을 관리하는 프로그램을 저장하는 저장매체

Families Citing this family (155)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7286115B2 (en) 2000-05-26 2007-10-23 Tegic Communications, Inc. Directional input system with automatic correction
US7030863B2 (en) 2000-05-26 2006-04-18 America Online, Incorporated Virtual keyboard system with automatic correction
AU2001261084A1 (en) * 2000-04-27 2001-11-07 Brio Technology, Inc. Method and apparatus for processing jobs on an enterprise-wide computer system
US20060168586A1 (en) * 2000-08-09 2006-07-27 Stone Glen D System and method for interactively utilizing a user interface to manage device resources
AUPQ968100A0 (en) * 2000-08-25 2000-09-21 Telstra Corporation Limited A management system
US7296238B1 (en) 2000-09-08 2007-11-13 Corel Corporation Method and apparatus for triggering automated processing of data
US6938030B1 (en) 2000-09-08 2005-08-30 Corel Corporation Method and apparatus for facilitating accurate automated processing of data
US7853833B1 (en) 2000-09-08 2010-12-14 Corel Corporation Method and apparatus for enhancing reliability of automated data processing
US7000223B1 (en) 2000-09-08 2006-02-14 Corel Corporation Method and apparatus for preparing a definition to control automated data processing
US6961922B1 (en) 2000-09-08 2005-11-01 Corel Corporation Method and apparatus for defining operations to be performed during automated data processing
US7747673B1 (en) * 2000-09-08 2010-06-29 Corel Corporation Method and apparatus for communicating during automated data processing
US6944865B1 (en) 2000-09-08 2005-09-13 Corel Corporation Method and apparatus for saving a definition for automated data processing
US6850956B1 (en) 2000-09-08 2005-02-01 Corel Inc. Method and apparatus for obtaining and storing data during automated data processing
US6868193B1 (en) 2000-09-08 2005-03-15 Corel Inc. Method and apparatus for varying automated data processing
US6925593B1 (en) 2000-09-08 2005-08-02 Corel Corporation Method and apparatus for transferring data during automated data processing
US7334000B2 (en) * 2001-07-16 2008-02-19 Aol Llc Method and apparatus for calendaring reminders
EP1283466A1 (en) * 2001-08-06 2003-02-12 Hewlett-Packard Company (a Delaware corporation) Management system for a cluster
US7076780B2 (en) 2001-09-13 2006-07-11 Conocophillips Company Application program interface for a computer program
US20030236994A1 (en) * 2002-06-21 2003-12-25 Microsoft Corporation System and method of verifying security best practices
US7219345B2 (en) * 2002-12-17 2007-05-15 Hewlett-Packard Development Company, L.P. System and method for terminating processes in a distributed computing system
US20080306902A1 (en) * 2003-01-03 2008-12-11 Gava Fabio M System and method for tracking print job status
US7174052B2 (en) 2003-01-15 2007-02-06 Conocophillips Company Method and apparatus for fault-tolerant parallel computation
TWI309024B (en) * 2003-04-09 2009-04-21 Hon Hai Prec Ind Co Ltd System and method for employee performance assessing
CA2442799A1 (en) 2003-09-26 2005-03-26 Ibm Canada Limited - Ibm Canada Limitee Generalized credential and protocol management of infrastructure
JP4313655B2 (ja) * 2003-11-19 2009-08-12 パナソニック株式会社 ネットワークシステム
US7404189B2 (en) * 2003-12-30 2008-07-22 International Business Machines Corporation Scheduler supporting web service invocation
JP2005209014A (ja) * 2004-01-23 2005-08-04 Canon Inc ジョブ管理装置、方法、制御プログラム
US7921082B2 (en) * 2004-01-23 2011-04-05 Lsi Corporation File recovery under linux operating system
EP1725947A4 (en) * 2004-03-13 2008-08-06 Cluster Resources Inc SYSTEM AND METHOD FOR ADVANCED RESERVATIONS IN A CALCULATION ENVIRONMENT
US7890629B2 (en) * 2004-03-13 2011-02-15 Adaptive Computing Enterprises, Inc. System and method of providing reservation masks within a compute environment
US9778959B2 (en) 2004-03-13 2017-10-03 Iii Holdings 12, Llc System and method of performing a pre-reservation analysis to yield an improved fit of workload with the compute environment
CA2558892A1 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for a self-optimizing reservation in time of compute resources
CA2831359A1 (en) 2004-03-13 2005-09-29 Adaptive Computing Enterprises, Inc. System and method of co-allocating a reservation spanning different compute resources types
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
US9626437B2 (en) * 2004-06-10 2017-04-18 International Business Machines Corporation Search scheduling and delivery tool for scheduling a search using a search framework profile
US7836411B2 (en) * 2004-06-10 2010-11-16 International Business Machines Corporation Search framework metadata
US7827175B2 (en) * 2004-06-10 2010-11-02 International Business Machines Corporation Framework reactive search facility
US20070266388A1 (en) * 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US7984443B2 (en) * 2004-07-22 2011-07-19 Computer Associates Think, Inc. System and method for normalizing job properties
US9600216B2 (en) * 2004-07-22 2017-03-21 Ca, Inc. System and method for managing jobs in heterogeneous environments
US8028285B2 (en) * 2004-07-22 2011-09-27 Computer Associates Think, Inc. Heterogeneous job dashboard
US7886296B2 (en) * 2004-07-22 2011-02-08 Computer Associates Think, Inc. System and method for providing alerts for heterogeneous jobs
US8427667B2 (en) * 2004-07-22 2013-04-23 Ca, Inc. System and method for filtering jobs
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
CA2827035A1 (en) 2004-11-08 2006-05-18 Adaptive Computing Enterprises, Inc. System and method of providing system jobs within a compute environment
JP2006155187A (ja) * 2004-11-29 2006-06-15 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム。
US8782231B2 (en) * 2005-03-16 2014-07-15 Adaptive Computing Enterprises, Inc. Simple integration of on-demand compute environment
US8863143B2 (en) * 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US7774471B2 (en) 2006-06-15 2010-08-10 Adaptive Computing Enterprises, Inc. Optimized multi-component co-allocation scheduling with advanced reservations for data transfers and distributed jobs
US7996455B2 (en) 2005-06-17 2011-08-09 Adaptive Computing Enterprises, Inc. System and method for providing dynamic roll-back reservations in time
US9015324B2 (en) 2005-03-16 2015-04-21 Adaptive Computing Enterprises, Inc. System and method of brokering cloud computing resources
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
CA2603577A1 (en) 2005-04-07 2006-10-12 Cluster Resources, Inc. On-demand access to compute resources
US8782120B2 (en) 2005-04-07 2014-07-15 Adaptive Computing Enterprises, Inc. Elastic management of compute resources between a web server and an on-demand compute environment
JP4001158B2 (ja) * 2005-08-08 2007-10-31 コニカミノルタビジネステクノロジーズ株式会社 ボックスデータ管理装置及び方法
US20070076228A1 (en) * 2005-10-04 2007-04-05 Jacob Apelbaum System and method for providing data services via a network
JP5025116B2 (ja) * 2005-10-25 2012-09-12 キヤノン株式会社 情報処理装置及びその制御方法ならびにプログラム
WO2007083973A1 (en) * 2006-01-23 2007-07-26 Lg Electronics Inc. Terminal and method for performing device management scheduled based on threshold
US8104037B2 (en) 2006-01-23 2012-01-24 Lg Electronics Inc. Terminal and method for performing device management scheduled based on threshold
KR101342372B1 (ko) * 2006-01-23 2013-12-16 엘지전자 주식회사 단말 및 그 단말에서의 장치관리 스케줄링 방법
KR101349805B1 (ko) 2006-01-25 2014-01-10 엘지전자 주식회사 트랩 메커니즘을 이용한 장치관리 스케줄링 방법 및 그단말
US9250972B2 (en) * 2006-06-19 2016-02-02 International Business Machines Corporation Orchestrated peer-to-peer server provisioning
US20080046097A1 (en) * 2006-08-18 2008-02-21 Microsoft Corporation Graphical representation of setup state on multiple nodes
US8291419B2 (en) * 2006-09-26 2012-10-16 International Business Machines Corporation Fault tolerant system for execution of parallel jobs
JP4671049B2 (ja) * 2006-11-20 2011-04-13 ソニー株式会社 認証装置、登録装置、登録方法、登録プログラム、認証方法及び認証プログラム
US8347291B2 (en) * 2006-12-29 2013-01-01 Sap Ag Enterprise scheduler for jobs performable on the remote system by receiving user specified values for retrieved job definitions comprising metadata representation of properties of jobs
US20080184241A1 (en) * 2007-01-30 2008-07-31 Microsoft Corporation Techniques for automated balancing of tasks across multiple computers
JP5046669B2 (ja) * 2007-01-31 2012-10-10 キヤノン株式会社 画像形成装置及び画像形成装置の制御方法、プログラム、記憶媒体
US20080301685A1 (en) * 2007-05-31 2008-12-04 Novell, Inc. Identity-aware scheduler service
WO2009029549A2 (en) * 2007-08-24 2009-03-05 Virtualmetrix, Inc. Method and apparatus for fine grain performance management of computer systems
US8065602B2 (en) * 2007-09-24 2011-11-22 At&T Intellectual Property I, Lp Methods of completing electronic forms relating to interactions with customers by carrying over call back numbers between forms
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US8694886B2 (en) * 2008-01-02 2014-04-08 International Business Machines Corporation Providing dynamic context assist for a command line interface
US9405348B2 (en) 2008-04-21 2016-08-02 Adaptive Computing Enterprises, Inc System and method for managing energy consumption in a compute environment
JP5529114B2 (ja) * 2008-04-21 2014-06-25 アダプティブ コンピューティング エンタープライジズ インク 計算環境内のエネルギ消費を管理するシステムおよび方法
US9720729B2 (en) * 2008-06-02 2017-08-01 Microsoft Technology Licensing, Llc Scheduler finalization
US20110093493A1 (en) 2008-10-28 2011-04-21 Honeywell International Inc. Building management system site categories
KR20110082147A (ko) * 2008-10-31 2011-07-18 인터내셔널 비지네스 머신즈 코포레이션 일괄 작업을 관리하기 위한 컴퓨터 시스템, 그 방법 및 컴퓨터 프로그램
US8832173B2 (en) * 2009-01-20 2014-09-09 Sap Ag System and method of multithreaded processing across multiple servers
US8332365B2 (en) 2009-03-31 2012-12-11 Amazon Technologies, Inc. Cloning and recovery of data volumes
US20100287553A1 (en) 2009-05-05 2010-11-11 Sap Ag System, method, and software for controlled interruption of batch job processing
US8566804B1 (en) * 2009-08-13 2013-10-22 The Mathworks, Inc. Scheduling generated code based on target characteristics
US8990783B1 (en) 2009-08-13 2015-03-24 The Mathworks, Inc. Scheduling generated code based on target characteristics
KR101304732B1 (ko) * 2009-09-28 2013-09-05 도시바 미쓰비시덴키 산교시스템 가부시키가이샤 플랜트 제어 시스템
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
JP5422342B2 (ja) * 2009-11-10 2014-02-19 株式会社日立製作所 インシデント管理方法および運用管理サーバ
US8875143B2 (en) * 2009-12-31 2014-10-28 Bmc Software, Inc. Utility-optimized scheduling of time-sensitive tasks in a resource-constrained environment
US20110196539A1 (en) * 2010-02-10 2011-08-11 Honeywell International Inc. Multi-site controller batch update system
US8677071B2 (en) * 2010-03-26 2014-03-18 Virtualmetrix, Inc. Control of processor cache memory occupancy
US8782653B2 (en) * 2010-03-26 2014-07-15 Virtualmetrix, Inc. Fine grain performance resource management of computer systems
US20110321056A1 (en) 2010-06-23 2011-12-29 International Business Machines Corporation Dynamic run time allocation of distributed jobs
US8706854B2 (en) * 2010-06-30 2014-04-22 Raytheon Company System and method for organizing, managing and running enterprise-wide scans
US8566837B2 (en) * 2010-07-16 2013-10-22 International Business Machines Corportion Dynamic run time allocation of distributed jobs with application specific metrics
US9098331B2 (en) * 2011-06-29 2015-08-04 Telefonaktiebolaget L M Ericsson (Publ) Joint scheduling of multiple processes on a shared processor
US8887164B2 (en) 2011-09-23 2014-11-11 International Business Machines Corporation Manufacturing process prioritization based on applying rules to task-based data
US20130155446A1 (en) * 2011-12-15 2013-06-20 Toshiba Tec Kabushiki Kaisha Image forming apparatus and control method for image forming apparatus
US9223839B2 (en) 2012-02-22 2015-12-29 Honeywell International Inc. Supervisor history view wizard
JP5882837B2 (ja) * 2012-06-11 2016-03-09 キヤノン株式会社 情報処理システム、画像形成装置、制御方法およびコンピュータプログラム
US10345765B2 (en) * 2012-09-14 2019-07-09 Ademco Inc. System and method of overriding a scheduled task in an intrusion system to reduce false alarms
US9529349B2 (en) 2012-10-22 2016-12-27 Honeywell International Inc. Supervisor user management system
US9092258B2 (en) * 2012-12-11 2015-07-28 Bank Of America Corporation Task concurrency limiter
US9588822B1 (en) 2012-12-18 2017-03-07 Amazon Technologies, Inc. Scheduler for data pipeline
US9317323B2 (en) * 2012-12-26 2016-04-19 Microsoft Technology Licensing, Llc Dynamic execution log in a distributed system
US9400728B2 (en) 2013-01-14 2016-07-26 Wal-Mart Stores, Inc. Cross platform workflow management
US10552774B2 (en) 2013-02-11 2020-02-04 Amazon Technologies, Inc. Cost-minimizing task scheduler
US9720732B1 (en) 2013-02-11 2017-08-01 Amazon Technologies, Inc. Parameter selection for optimization of task execution based on execution history for prior tasks
US9430280B1 (en) 2013-02-11 2016-08-30 Amazon Technologies, Inc. Task timeouts based on input data characteristics
JP6157181B2 (ja) * 2013-04-02 2017-07-05 キヤノン株式会社 サーバーシステム、その制御方法、およびそのプログラム
US9413854B1 (en) 2013-07-15 2016-08-09 Amazon Technologies, Inc. Network-accessible signal processing service
US9497145B2 (en) 2013-09-20 2016-11-15 Oracle International Corporation System and method for supporting fault tolerant job management in a cloud platform environment
US9971977B2 (en) 2013-10-21 2018-05-15 Honeywell International Inc. Opus enterprise report system
US9794135B2 (en) 2013-11-11 2017-10-17 Amazon Technologies, Inc. Managed service for acquisition, storage and consumption of large-scale data streams
US10635644B2 (en) 2013-11-11 2020-04-28 Amazon Technologies, Inc. Partition-based data stream processing framework
US9276959B2 (en) 2013-11-11 2016-03-01 Amazon Technologies, Inc. Client-configurable security options for data streams
US9858322B2 (en) 2013-11-11 2018-01-02 Amazon Technologies, Inc. Data stream ingestion and persistence techniques
US9720989B2 (en) 2013-11-11 2017-08-01 Amazon Technologies, Inc. Dynamic partitioning techniques for data streams
US9639589B1 (en) 2013-12-20 2017-05-02 Amazon Technologies, Inc. Chained replication techniques for large-scale data streams
US9471585B1 (en) 2013-12-20 2016-10-18 Amazon Technologies, Inc. Decentralized de-duplication techniques for largescale data streams
US9785510B1 (en) 2014-05-09 2017-10-10 Amazon Technologies, Inc. Variable data replication for storage implementing data backup
CN105279019B (zh) * 2014-06-10 2018-11-23 中国移动通信集团公司 一种应用程序的调度方法、装置和终端设备
US9933762B2 (en) 2014-07-09 2018-04-03 Honeywell International Inc. Multisite version and upgrade management system
US9600327B2 (en) 2014-07-10 2017-03-21 Oracle International Corporation Process scheduling and execution in distributed computing environments
US9734021B1 (en) 2014-08-18 2017-08-15 Amazon Technologies, Inc. Visualizing restoration operation granularity for a database
US9854028B2 (en) 2014-10-23 2017-12-26 Bloomberg Finance L.P. Apparatus and method for efficient, coordinated, distributed execution
US10356150B1 (en) 2014-12-15 2019-07-16 Amazon Technologies, Inc. Automated repartitioning of streaming data
CN104536770A (zh) * 2015-01-28 2015-04-22 浪潮电子信息产业股份有限公司 一种支持并行作业断点恢复的作业提交和恢复方法
US20160283285A1 (en) * 2015-03-23 2016-09-29 International Business Machines Corporation Synchronizing control and output of computing tasks
US9870266B2 (en) * 2015-07-30 2018-01-16 Nasdaq, Inc. Background job processing framework
US10362104B2 (en) 2015-09-23 2019-07-23 Honeywell International Inc. Data manager
US10209689B2 (en) 2015-09-23 2019-02-19 Honeywell International Inc. Supervisor history service import manager
US9882910B2 (en) * 2015-09-23 2018-01-30 Ca, Inc. Security authorization for service level agreements
US10853182B1 (en) 2015-12-21 2020-12-01 Amazon Technologies, Inc. Scalable log-based secondary indexes for non-relational databases
US10567500B1 (en) 2015-12-21 2020-02-18 Amazon Technologies, Inc. Continuous backup of data in a distributed data store
US10423493B1 (en) 2015-12-21 2019-09-24 Amazon Technologies, Inc. Scalable log-based continuous data protection for distributed databases
CN107766216A (zh) * 2016-08-19 2018-03-06 阿里巴巴集团控股有限公司 一种用于获取应用执行信息的方法与设备
US10430300B2 (en) 2017-06-05 2019-10-01 Bank Of America Corporation Predictive analysis, scheduling and observation system for use with loading multiple files
US10990581B1 (en) 2017-09-27 2021-04-27 Amazon Technologies, Inc. Tracking a size of a database change log
US10754844B1 (en) 2017-09-27 2020-08-25 Amazon Technologies, Inc. Efficient database snapshot generation
US11182372B1 (en) 2017-11-08 2021-11-23 Amazon Technologies, Inc. Tracking database partition change log dependencies
US11269731B1 (en) 2017-11-22 2022-03-08 Amazon Technologies, Inc. Continuous data protection
US11042503B1 (en) 2017-11-22 2021-06-22 Amazon Technologies, Inc. Continuous data protection and restoration
US10621049B1 (en) 2018-03-12 2020-04-14 Amazon Technologies, Inc. Consistent backups based on local node clock
US10768830B1 (en) 2018-07-16 2020-09-08 Amazon Technologies, Inc. Streaming data service with isolated read channels
US11075984B1 (en) 2018-07-16 2021-07-27 Amazon Technologies, Inc. Workload management at streaming data service supporting persistent connections for reads
US10855754B1 (en) 2018-07-16 2020-12-01 Amazon Technologies, Inc. Isolated read channel categories at streaming data service
US10798140B1 (en) 2018-07-16 2020-10-06 Amazon Technologies, Inc. Stream data record reads using push-mode persistent connections
US11070600B1 (en) 2018-07-16 2021-07-20 Amazon Technologies, Inc. Optimization techniques to support lagging readers at streaming data service
US10956246B1 (en) 2018-07-16 2021-03-23 Amazon Technologies, Inc. Isolated read channel management interfaces at streaming data service
CN110769017A (zh) * 2018-07-27 2020-02-07 北京国双科技有限公司 数据请求的处理方法、装置、存储介质和处理器
US11126505B1 (en) 2018-08-10 2021-09-21 Amazon Technologies, Inc. Past-state backup generator and interface for database systems
US11042454B1 (en) 2018-11-20 2021-06-22 Amazon Technologies, Inc. Restoration of a data source
CN109697112B (zh) * 2018-12-24 2023-05-16 广东亿迅科技有限公司 分布式集约化一站式作业系统和实现方法
US11544081B2 (en) * 2019-12-03 2023-01-03 Bank Of America Corporation Job execution integration to customized database
US20220309371A1 (en) * 2021-03-29 2022-09-29 Red Hat, Inc. Automated quantum circuit job submission and status determination

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5093794A (en) * 1989-08-22 1992-03-03 United Technologies Corporation Job scheduling system
US6115393A (en) * 1991-04-12 2000-09-05 Concord Communications, Inc. Network monitoring
JPH05265775A (ja) 1992-03-19 1993-10-15 Hitachi Ltd ジョブ実行予測制御方法およびジョブ実行状況表示方法
FR2693009B1 (fr) 1992-06-09 1994-11-25 Bull Sa Interface utilisateur pour système de traitement transactionnel.
FR2692058B1 (fr) 1992-06-09 1994-07-29 Bull Sa Systeme de traitement transactionnel entre un serveur informatique et une pluralite de stations de travail.
WO1994010645A1 (en) * 1992-10-28 1994-05-11 Intellution, Inc. A dynamic graphical system configuration utility
US5537550A (en) * 1992-11-18 1996-07-16 Canon Kabushiki Kaisha Interactive network board for logging peripheral statistics with logging level commands
US5363175A (en) 1993-03-01 1994-11-08 Xerox Corporation Distributed job scheduling with modular components
JP2550864B2 (ja) 1993-05-31 1996-11-06 日本電気株式会社 ジョブ実行における分散型制御方法及びその装置
US5517316A (en) * 1993-10-27 1996-05-14 Xerox Corporation Apparatus and method for saving/storing job run information generated by processing a job on a printing machine
US6300863B1 (en) * 1994-11-15 2001-10-09 Absolute Software Corporation Method and apparatus to monitor and locate an electronic device using a secured intelligent agent via a global network
JP3501385B2 (ja) 1995-04-13 2004-03-02 株式会社日立製作所 ジョブ実行順序決定方法
US5781908A (en) * 1995-12-18 1998-07-14 J.D. Edwards World Source Company File data synchronizer in a distributed data computer network
US6160988A (en) * 1996-05-30 2000-12-12 Electronic Data Systems Corporation System and method for managing hardware to control transmission and reception of video broadcasts
US6182110B1 (en) * 1996-06-28 2001-01-30 Sun Microsystems, Inc. Network tasks scheduling
US5819263A (en) * 1996-07-19 1998-10-06 American Express Financial Corporation Financial planning system incorporating relationship and group management
US5889989A (en) 1996-09-16 1999-03-30 The Research Foundation Of State University Of New York Load sharing controller for optimizing monetary cost
US6085243A (en) * 1996-12-13 2000-07-04 3Com Corporation Distributed remote management (dRMON) for networks
US5933647A (en) 1997-01-24 1999-08-03 Cognet Corporation System and method for software distribution and desktop management in a computer network environment
DE69808632T2 (de) * 1997-07-25 2003-06-12 British Telecomm Erzeugung von Softwaresystemen
DE69808633T2 (de) * 1997-07-25 2003-06-12 British Telecomm Ablaufsteuerung für ein softwaresystem
US6012084A (en) * 1997-08-01 2000-01-04 International Business Machines Corporation Virtual network communication services utilizing internode message delivery task mechanisms
US6704409B1 (en) * 1997-12-31 2004-03-09 Aspect Communications Corporation Method and apparatus for processing real-time transactions and non-real-time transactions
US6321264B1 (en) * 1998-08-28 2001-11-20 3Com Corporation Network-performance statistics using end-node computer systems
US6681010B1 (en) * 1998-09-01 2004-01-20 Genesys Telecommunications Laboratories, Inc. Methods, systems and computer program products for automatic task distribution
US6323882B1 (en) * 1998-10-26 2001-11-27 Simulation Sciences, Inc. Method and systems for a graphical real time flow task scheduler

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101446723B1 (ko) * 2012-11-30 2014-10-06 한국과학기술정보연구원 작업 실행 관리 방법, 작업 실행 관리 장치, 및 작업 실행을 관리하는 프로그램을 저장하는 저장매체

Also Published As

Publication number Publication date
US7386586B1 (en) 2008-06-10
JP2002533798A (ja) 2002-10-08
CN1185590C (zh) 2005-01-19
EP1145098A4 (en) 2005-03-30
EP1145098A2 (en) 2001-10-17
WO2000038033A3 (en) 2000-11-09
BR9916478A (pt) 2002-03-19
ZA200105301B (en) 2002-06-27
WO2000038033A2 (en) 2000-06-29
CN1350676A (zh) 2002-05-22
CA2356563A1 (en) 2000-06-29
IL143825A0 (en) 2002-04-21
HK1043211A1 (zh) 2002-09-06
AU2391700A (en) 2000-07-12

Similar Documents

Publication Publication Date Title
KR20010099919A (ko) 컴퓨터를 스케쥴하고 모니터링하기 위한 시스템
EP0272561B1 (en) Apparatus for distributing data processing across a plurality of loci of control
TW412707B (en) System, method and computer program product for discovery in a distributed computing environment
US6820118B1 (en) Method and system for providing a linkage between systems management systems and applications
US8234660B2 (en) Method and apparatus for a support platform
US20030192027A1 (en) Software application development
JPH05197573A (ja) タスク指向パラダイムによるタスク管理システム
US20100153940A1 (en) Transportable refactoring object
US10127019B2 (en) System to coordinate source code module changes
US20130227577A1 (en) Automated Administration Using Composites of Atomic Operations
US20030200526A1 (en) Optimistic transaction compiler
JP2002049587A (ja) ジョブ・モニタ
US7065768B1 (en) Servicing method for script monitor COM object
US10996983B1 (en) Job scheduler for remote maintenance of servers and workstations
US7093232B1 (en) Component stager
Cavaness Quartz job scheduling framework: Building open source enterprise applications
CN114787836A (zh) 用于远程执行一个或更多个任意定义的工作流的系统和方法
AU2004222721B2 (en) System for Scheduling and Monitoring Computer Processes
Acharya School management system project report.
Server Automation and Monitoring
Walters et al. Automation and Monitoring
Scheduler User's Guide and Reference
Friess et al. Websphere process server v6-business process choreographer: Concepts and architecture
Tripathi et al. Exception handling in CSCW applications in pervasive computing environments
Matsubara et al. A practical guide for Resource Monitoring and Control (RMC)

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application