KR100779116B1 - Rate compensation system in use of system using and thereof - Google Patents

Rate compensation system in use of system using and thereof Download PDF

Info

Publication number
KR100779116B1
KR100779116B1 KR1020060099003A KR20060099003A KR100779116B1 KR 100779116 B1 KR100779116 B1 KR 100779116B1 KR 1020060099003 A KR1020060099003 A KR 1020060099003A KR 20060099003 A KR20060099003 A KR 20060099003A KR 100779116 B1 KR100779116 B1 KR 100779116B1
Authority
KR
South Korea
Prior art keywords
resource
computer
usage
computers
module
Prior art date
Application number
KR1020060099003A
Other languages
Korean (ko)
Inventor
이민준
Original Assignee
(주)아이젠데이타시스템
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)아이젠데이타시스템 filed Critical (주)아이젠데이타시스템
Priority to KR1020060099003A priority Critical patent/KR100779116B1/en
Application granted granted Critical
Publication of KR100779116B1 publication Critical patent/KR100779116B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0283Price estimation or determination
    • G06Q30/0284Time or distance, e.g. usage of parking meters or taximeters
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Computer Hardware Design (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Software Systems (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Debugging And Monitoring (AREA)

Abstract

A system for compensating for a cost measured in accordance with usage of a system and a method thereof are provided to compensate for the cost according to a resource usage degree of computers which allow resources to be shared with one another. A system for compensating for a cost measured in accordance with usage of a system comprises a setup module(211), a resource collecting module(212), a level module(213), a resource providing module(214), a resource usage module(215), an intermediating module(216) and a cost calculation module(217). The setup module(211) checks resource information including an IP address, a CPU performance, a RAM capacity and a network speed of a computer, receives a resource providing condition of the computer from a user, and stores the resource information and the resource providing condition at a memory. The resource collecting module(212) collects resource information including an IP address, a CPU performance, a RAM capacity and a network speed of other computer and stores the collected resource information at the memory. The level module(213) analyzes the resource information of other computers, gives levels to the computers according to their performance, and stores the levels given to the computers at the memory. The resource providing module(214) analyzes a resource usage state if an arbitrary computer requests a resource usage, allows the arbitrary computer to use the resource if a resource providing condition is satisfied, performs a task requested by the arbitrary computer, and provides the task result to the computer. The resource usage module(215) requests a resource usage to other computers for guaranteeing necessary resources, distributes tasks to the computers, receives the task results from the computers and calculates a final result. The intermediating module(216) analyzes a resource usage state if an arbitrary computer requests a resource usage, allows the arbitrary computer to use the resource if a resource providing condition is satisfied, requests a resource usage to other computers for guaranteeing necessary resources, redistributes tasks to the computers, receives the task results from the computers and provides the task results for the requesting computer. The cost calculation module(217) calculates a cost for each computer regarding usage of a CPU, a PF, a handle, a thread, a process or a memory performed by other computers.

Description

시스템 사용에 따른 종량요금 보상 시스템 및 보상 방법{Rate Compensation System in use of System using and Thereof}Rate Compensation System in use of System using and Thereof}

도 1은 본 발명의 실시예에 따른 시스템 사용에 따른 종량요금 보상 시스템의 구성도이다.1 is a block diagram of a pay-as-you-go system according to an embodiment of the present invention.

도 2는 본 발명의 실시예에 따른 시스템 사용에 따른 종량요금 보상 시스템의 블록도이다.2 is a block diagram of a pay-as-you-go compensation system according to the use of the system according to an embodiment of the present invention.

도 3은 본 발명의 실시예에 따른 시스템 사용에 따른 종량요금 보상 방법을 도시한 동작 흐름도이다.3 is a flowchart illustrating a method of compensating for a pay-as-you-go fee according to the use of a system according to an embodiment of the present invention.

도 4는 자원공유정도에 따른 비용계산을 도시한 흐름도이다.4 is a flowchart illustrating the cost calculation according to the degree of resource sharing.

도 5는 자원공유정도에 따른 비용계산하기 위한 예시도이다.5 is an exemplary view for calculating the cost according to the degree of resource sharing.

* 도면의 주요 부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings

210 : 미들웨어 211 : 설정 모듈210: middleware 211: setting module

212 : 자원수집모듈 213 : 등급화모듈212 resource collection module 213 grading module

214 : 자원제공모듈 215 : 자원사용모듈214: resource provision module 215: resource usage module

216 : 중개모듈 217 : 비용계산모듈216: mediation module 217: cost calculation module

220 : 네트워크 230 : 메모리220: network 230: memory

본 발명은 시스템 사용에 따른 종량요금 보상 시스템 및 보상 방법에 관한 것으로서, 더욱 상세하게는 컴퓨터 공유가 가능한 소정의 컴퓨터가 다른 컴퓨터의 자원을 요청하여 사용하거나 타 컴퓨터에 자원을 제공할 수 있도록 하며, 이에 따른 소정의 사용에 대한 보상을 제공할 수 있도록 하는 시스템 사용에 따른 종량요금 보상 시스템 및 보상 방법에 관한 것이다.The present invention relates to a pay-as-you-go system and compensation method according to the use of the system, and more particularly, a computer capable of sharing a computer can request and use resources of another computer or provide resources to another computer. Accordingly, the present invention relates to a pay-as-you-go compensation system and a compensation method for using the system to provide compensation for a predetermined use.

최근에 네크워크의 속도가 초고속화되고 컴퓨터의 성능이 향상됨에 따라 네트워크를 통해 다수의 컴퓨터를 연결하여 기상예측, 암호문처리, 인공지능, 시뮬레이션 등의 많은 양의 연산을 빠른 시간내에 처리하는 분야에 사용되고 있으며, 설계 분야에서 많이 이용되고 있다.Recently, as the network speed has been increased and the performance of computers has been improved, it is used in the field of processing a large amount of operations such as weather forecasting, cipher text processing, artificial intelligence, and simulation in a short time by connecting a large number of computers through a network. It is widely used in the design field.

클러스터 기술란 인트라넷 환경에서 서버와 다수의 클라이언트를 네트워크 장비로 연결하여 병렬처리시스템을 구축하는 기술이다. 이 병렬처리시스템은 시스템의 자원을 확장하려면 또 다른 클라이언트를 네트워크 장비로 추가 연결하여야 하기 때문에 확장 연결될 수 있는 클라이언트의 개수가 제한되고, 운영체제(OS)가 다른 클라이언트는 연결할 수 없는 문제점이 있다.Cluster technology is a technology that establishes a parallel processing system by connecting a server and a plurality of clients through an network device in an intranet environment. This parallel processing system has a problem in that the number of clients that can be extended is limited because another client must be additionally connected to the network equipment in order to expand the resources of the system, and another operating system (OS) cannot connect.

그리드컴퓨팅 기술이란 인터넷에 접속된 컴퓨터들을 연결하여 단일 시스템처 럼 사용할 수 있도록 하는 정보통신 인프라이다. 이 그리드컴퓨팅 기술에 따르면 운영체제가 다른 이기종의 컴퓨터의 연결이 가능하며, 연결 가능한 컴퓨터의 대수가 무한하고, 컴퓨팅 자원의 동적인 추가와 삭제가 가능한 잇점이 있다.Grid computing technology is an information and communications infrastructure that connects computers connected to the Internet and uses them as a single system. According to the grid computing technology, heterogeneous computers with different operating systems can be connected, the number of connectable computers is infinite, and the dynamic addition and deletion of computing resources can be performed.

이 그리드컴퓨팅 기술을 지원하는 미들웨어로서, 글로버스(Globus)가 있다. 이 글로버스는 서버-클라이언트 환경을 지원하며, 자원 정보를 수집하는 서버와 수집된 자원 정보를 통합하는 서버를 구비한다. 이 서버들은 클라이언트의 자원을 수집하고 통합하며, 분산할 작업들을 클라이언트들에게 배포하고, 클라이언트들은 자신에게 할당된 작업을 수행한 다음 그 결과를 서버로 전달한다. 즉, 이 글로버스에서는 서버와 클라이언트가 고정되어 있기 때문에 자원관리 및 작업분배요청 등을 서버에서만 할 수가 있었다. 그렇기 때문에 서버가 다운되거나 고장나면, 클라이언트가 정상적으로 동작하더라도 그리드컴퓨팅 시스템을 사용할 수 없게 되는 문제점이 있었다.The middleware supporting this grid computing technology is Globus. This globus supports a server-client environment and has a server that collects resource information and a server that integrates the collected resource information. These servers collect and consolidate the client's resources, distribute the tasks to be distributed to the clients, which perform the tasks assigned to them, and then deliver the results to the server. That is, in this globus, the server and the client are fixed so that the resource management and work distribution request can be made only from the server. Therefore, when the server is down or fails, there was a problem that the grid computing system cannot be used even if the client operates normally.

본 발명은 상기의 문제점을 해결하기 위한 것으로, The present invention is to solve the above problems,

인터넷에 접속된 컴퓨터들 간에 자원공유를 허락한 소정의 컴퓨터가 자원공유를 허락한 타 컴퓨터의 자원을 이용하거나 자원공유를 허락한 타 컴퓨터로 자원을 제공할 수 있도록 하여 이에 따라 자원공유를 제공한 컴퓨터들의 자원사용 정도에 따른 비용을 보상할 수 있도록 하는데 있다.Resource sharing between computers connected to the Internet can provide resources to other computers that allow resource sharing or to provide resources to other computers that allow resource sharing. It is to be able to compensate the cost of the resource usage of computers.

상기의 목적을 달성하기 위하여 본 발명인 시스템 사용에 따른 종량요금 보상 시스템 및 보상 방법은,In order to achieve the above object, the pay-as-you-go system and compensation method according to the use of the present inventors system,

시스템 사용에 따른 종량요금 보상 시스템은,The pay-as-you-go reward system for using the system,

컴퓨터에 설치되어 타 컴퓨터와의 자원공유 기능을 수행하는 자원공유 미들웨어와,타 컴퓨터와의 물리적인 접속수단인 네트워크와,메모리를 구비한 병렬 분산처리시스템에 있어서,In a parallel distributed processing system having a memory sharing middleware installed in a computer and performing a resource sharing function with another computer, a network as a physical connection means with the other computer, and a memory,

상기 자원공유 미들웨어는,The resource sharing middleware,

상기 컴퓨터의 IP주소와 CPU 성능과 RAM 용량과 네트워크 속도를 포함하는 자원정보를 파악하고,상기 컴퓨터의 자원제공조건을 사용자로부터 입력받아 상기 메모리에 저장하는 설정모듈과;A setting module for grasping resource information including an IP address, CPU performance, RAM capacity, and network speed of the computer, and receiving the resource provision condition of the computer from a user and storing the received resource in the memory;

상기 네트워크에 접속된 상기 타 컴퓨터의 IP주소와 CPU성능과 RAM용량과 네트워크 속도를 포함하는 자원정보를 수집하여 상기 메모리에 저장하는 자원수집모듈과;A resource collection module for collecting resource information including the IP address, CPU performance, RAM capacity, and network speed of the other computer connected to the network and storing the information in the memory;

상기 자원수집모듈에서 수집한 상기 타 컴퓨터의 자원정보를 파악하여 상기 타 컴퓨터의 성능에 따라 등급을 부여하고 상기 메모리에 저장하는 등급화모듈과;A grading module for grasping the resource information of the other computer collected by the resource collection module, assigning a rating according to the performance of the other computer, and storing the information in the memory;

임의의 컴퓨터로부터 자원사용 요청이 있으면 상기 컴퓨터의 자원사용 상태를 파악하여 상기 자원제공조건에 부합되면 자원사용을 허락하고,상기 컴퓨터로부터 요청된 작업을 수행한 후 작업결과를 상기 컴퓨터에게 제공하는 자원제공모듈과;If there is a request for resource usage from any computer, the resource usage status of the computer is grasped and the resource usage is allowed if the resource providing conditions are met, and the resource is provided to the computer after performing the requested task from the computer. A providing module;

임의의 타 컴퓨터들에게 자원을 요청하여 작업에 필요한 자원을 확보하고,상기 자원 확보된 타 컴퓨터들에게 상기 작업을 분배한 후 작업결과를 수신받아 취합하여 최종 결과치를 산출하는 자원사용모듈과;A resource usage module for requesting a resource from any other computer to secure a resource for a task, and distributing the task to the other computers having the resources, receiving a work result, collecting the work result, and calculating a final result value;

임의의 컴퓨터로부터 자원사용 요청이 있으면 상기 타 컴퓨터의 자원사용 상태를 파악하여 상기 자원제공조건에 부합되면 자원사용을 허락하고,임의의 다른 타 컴퓨터들에게 자원을 요청하여 상기 타 컴퓨터로부터 요청된 작업을 수행하기 위한 필요한 자원을 확보하고,상기 자원 확보된 임의의 다른 타 컴퓨터들에게 상기 요청된 작업을 재분배한 후 작업결과를 수신받아 취합하여 상기 타 컴퓨터에게 제공하는 중개모듈과;If there is a request for resource usage from any computer, the resource usage status of the other computer is checked, and if the resource provision conditions are met, resource usage is allowed, and a request is made from another computer by requesting a resource from any other computer. A mediation module which secures necessary resources for performing the data processing, redistributes the requested work to any other computers having the resources, receives the work results, collects them, and provides them to the other computers;

상기 자원제공모듈을 통해 제공되는 타 컴퓨터들의 CPU사용, PF사용, 핸들사용, 스레드 사용, 프로세스 사용, 메모리 사용에 대한 비용을 컴퓨터마다 계산하는 비용계산모듈;을 포함한 것을 특징으로 한다.And a cost calculation module that calculates costs for each computer for CPU usage, PF usage, handle usage, thread usage, process usage, and memory usage of the other computers provided through the resource provision module.

또한, 시스템 사용에 따른 종량요금 보상 방법은,In addition, the pay-as-you-go method according to the system usage,

컴퓨터에 설치되어 타 컴퓨터와의 자원공유 기능을 수행하는 자원공유 미들웨어와,타 컴퓨터와의 물리적인 접속수단인 네트워크와,메모리를 구비한 병렬 분산처리시스템에서의 분산처리방법에 있어서,In a distributed processing method in a parallel distributed processing system having a memory sharing middleware installed in a computer and performing a resource sharing function with another computer, a network as a physical connection means with another computer, and a memory,

상기 자원공유 미들웨어가 상기 컴퓨터의 IP주소와 CPU 성능과 RAM 용량과 네트워크 속도를 포함하는 자원정보와 자원제공조건을 파악하는 자원정보파악단계와;Determining, by the resource sharing middleware, resource information including the IP address, CPU performance, RAM capacity, and network speed of the computer and resource provision conditions;

상기 자원공유 미들웨어가 상기 네트워크에 접속된 상기 타 컴퓨터의 IP 주 소와 CPU 성능과 RAM 용량과 네트워크 속도를 포함하는 자원정보를 수집하고 상기 타 컴퓨터의 성능에 따라 등급을 부여하는 등급부여단계와;A rating step of the resource sharing middleware collecting resource information including the IP address, CPU performance, RAM capacity, and network speed of the other computer connected to the network, and assigning a rating according to the performance of the other computer;

임의의 컴퓨터로부터 자원사용 요청이 있으면,상기 자원공유 미들웨어가 상기 컴퓨터의 자원사용 상태를 파악하여 상기 자원제공조건에 부합되면 자원사용을 허락하고,상기 임의의 컴퓨터로부터 요청된 작업을 수행한 후 작업결과를 임의의 컴퓨터에게 제공하는 결과제공단계와;If there is a request for resource usage from any computer, the resource sharing middleware grasps the resource usage status of the computer and permits the use of resources if the resource provision conditions are met, and then performs the requested operation from the random computer. Providing a result to any computer;

상기 자원공유 미들웨어가 임의의 타 컴퓨터들에게 자원을 요청하여 작업에 필요한 자원을 확보하고,상기 자원 확보된 임의의 타 컴퓨터들에게 상기 작업을 분배한 후 작업결과를 수신받아 취합하여 최종 결과치를 산출하는 결과치산출단계와;The resource sharing middleware requests a resource from any other computer to secure a resource necessary for the job, distributes the job to any other secured computer, receives the work result, collects the work result, and calculates a final result value. Calculating a result value;

임의의 다른 타 컴퓨터로부터 자원사용 요청이 있으면 상기 컴퓨터의 자원사용 상태를 파악하여 상기 자원제공조건에 부합되면 자원사용을 허락하고,임의의 다른 타 컴퓨터들에게 자원을 요청하여 상기 임의의 다른 타 컴퓨터로부터 요청된 작업을 수행하기 위한 필요한 자원을 확보하고,상기 자원 확보된 다른 타 컴퓨터들에게 상기 요청된 작업을 재분배한 후 작업결과를 수신받아 취합하여 상기 다른 타 컴퓨터에게 제공하는 자원중개단계와;If there is a request for resource usage from any other computer, the resource usage status of the computer is checked, and if the resource providing condition is met, resource usage is allowed, and any other computer is requested by requesting a resource from any other computer. A resource brokering step of obtaining necessary resources for performing the requested task from the server, receiving the collected work results by redistributing the requested task to the other computers having the resources, and providing the collected work results to the other other computers;

타 컴퓨터들의 CPU사용, PF사용, 핸들사용, 스레드 사용, 프로세스 사용, 메모리 사용에 대한 비용을 컴퓨터마다 계산하는 비용계산단계;를 포함한 것을 특징으로 한다.It includes a cost calculation step for calculating the cost of the other computer CPU usage, PF usage, handle usage, thread usage, process usage, memory usage for each computer.

상기 비용계산단계는,The cost calculation step,

작업과정을 수행하고 있는 컴퓨터들의 CPU 사용량을 계산하는 CPU사용량계산 단계와,CPU usage calculation step of calculating the CPU usage of the computers performing the work process,

작업과정을 수행하고 있는 컴퓨터들의 페이지 파일 사용량을 계산하는 페이지파일사용량계산단계와,A page file usage calculation step of calculating page file usage of computers performing a work process;

작업과정을 수행하는 컴퓨터들의 핸들 사용량을 계산하는 핸들사용량계산단계와,A handle usage calculation step of calculating the handle usage of the computers performing the work process;

작업과정을 수행하는 컴퓨터들의 스레드 사용량을 계산하는 스레드사용량계산단계와,A thread usage calculation step of calculating thread usage of computers that perform work processes;

작업과정을 수행하는 컴퓨터들의 프로세스 사용량을 계산하는 프로세스사용량계산단계와,A process usage calculation step of calculating process usage of computers that perform work processes;

작업과정을 수행하는 컴퓨터들의 프로세스 사용량을 계산하는 메모리사용량계산단계를 포함하는 것을 특징으로 한다.And a memory usage calculation step of calculating process usage of the computers performing the work process.

이하, 첨부된 도면을 참조하여 본 발명인 시스템 사용에 따른 종량요금 보상 시스템 및 보상 방법의 바람직한 실시예를 상세하게 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of a pay-as-you-go system and compensation method according to the use of the present inventors system.

도 1은 본 발명에 따른 시스템 사용에 따른 종량요금 보상 시스템의 구성도이다.1 is a block diagram of a pay-as-you-go system according to the present invention.

컴퓨터에 설치되어 타 컴퓨터와의 자원공유 기능을 수행하는 자원공유 미들웨어와,타 컴퓨터와의 물리적인 접속수단인 네트워크와,메모리를 구비한 병렬 분산처리시스템에 있어서,In a parallel distributed processing system having a memory sharing middleware installed in a computer and performing a resource sharing function with another computer, a network as a physical connection means with the other computer, and a memory,

상기 자원공유 미들웨어는,The resource sharing middleware,

상기 컴퓨터의 IP주소와 CPU 성능과 RAM 용량과 네트워크 속도를 포함하는 자원정보를 파악하고,상기 컴퓨터의 자원제공조건을 사용자로부터 입력받아 상기 메모리에 저장하는 설정모듈과;A setting module for grasping resource information including an IP address, CPU performance, RAM capacity, and network speed of the computer, and receiving the resource provision condition of the computer from a user and storing the received resource in the memory;

상기 네트워크에 접속된 상기 타 컴퓨터의 IP주소와 CPU성능과 RAM용량과 네트워크 속도를 포함하는 자원정보를 수집하여 상기 메모리에 저장하는 자원수집모듈과;A resource collection module for collecting resource information including the IP address, CPU performance, RAM capacity, and network speed of the other computer connected to the network and storing the information in the memory;

상기 자원수집모듈에서 수집한 상기 타 컴퓨터의 자원정보를 파악하여 상기 타 컴퓨터의 성능에 따라 등급을 부여하고 상기 메모리에 저장하는 등급화모듈과;A grading module for grasping the resource information of the other computer collected by the resource collection module, assigning a rating according to the performance of the other computer, and storing the information in the memory;

임의의 컴퓨터로부터 자원사용 요청이 있으면 상기 컴퓨터의 자원사용 상태를 파악하여 상기 자원제공조건에 부합되면 자원사용을 허락하고,상기 컴퓨터로부터 요청된 작업을 수행한 후 작업결과를 상기 컴퓨터에게 제공하는 자원제공모듈과;If there is a request for resource usage from any computer, the resource usage status of the computer is grasped and the resource usage is allowed if the resource providing conditions are met, and the resource is provided to the computer after performing the requested task from the computer. A providing module;

임의의 타 컴퓨터들에게 자원을 요청하여 작업에 필요한 자원을 확보하고,상기 자원 확보된 타 컴퓨터들에게 상기 작업을 분배한 후 작업결과를 수신받아 취합하여 최종 결과치를 산출하는 자원사용모듈과;A resource usage module for requesting a resource from any other computer to secure a resource for a task, and distributing the task to the other computers having the resources, receiving a work result, collecting the work result, and calculating a final result value;

임의의 컴퓨터로부터 자원사용 요청이 있으면 상기 타 컴퓨터의 자원사용 상태를 파악하여 상기 자원제공조건에 부합되면 자원사용을 허락하고,임의의 다른 타 컴퓨터들에게 자원을 요청하여 상기 타 컴퓨터로부터 요청된 작업을 수행하기 위한 필요한 자원을 확보하고,상기 자원 확보된 임의의 다른 타 컴퓨터들에게 상기 요청된 작업을 재분배한 후 작업결과를 수신받아 취합하여 상기 타 컴퓨터에게 제공하 는 중개모듈과;If there is a request for resource usage from any computer, the resource usage status of the other computer is checked, and if the resource provision conditions are met, resource usage is allowed, and a request is made from another computer by requesting a resource from any other computer. A mediation module which secures necessary resources for performing the task, redistributes the requested task to any other computer having the resources, receives the task result, collects the result of the task, and provides it to the other computer;

상기 자원제공모듈을 통해 제공되는 타 컴퓨터들의 CPU사용, PF사용, 핸들사용, 스레드 사용, 프로세스 사용, 메모리 사용에 대한 비용을 컴퓨터마다 계산하는 비용계산모듈;을 포함한 것을 특징으로 한다.And a cost calculation module that calculates costs for each computer for CPU usage, PF usage, handle usage, thread usage, process usage, and memory usage of the other computers provided through the resource provision module.

본 발명에 따른 병렬 분산처리시스템은 본 발명에 따른 병렬 분산처리방법을 수행하는 미들웨어(middle ware)가 설치되고 인터넷(100)에 접속된 다수의 컴퓨터(110,121∼123,131∼134,141,142)로 이루어진다.The parallel distributed processing system according to the present invention comprises a plurality of computers 110, 121 to 123, 131 to 134, 141 and 142 installed with middle ware for performing the parallel distributed processing method according to the present invention and connected to the Internet.

모든 컴퓨터는 인터넷(100)에 접속되어 상호 억세스(access)가 가능하다.All computers are connected to the Internet 100 and are mutually accessible.

각 컴퓨터는 타 컴퓨터의 자원(CPU,메모리(RAM),하드디스크(HDD)등)을 사용하는 자원사용컴퓨터로 동작할 수도 있고,타 컴퓨터에게 자신의 자원을 제공하는 자원제공컴퓨터로 동작할 수도 있다.Each computer can operate as a resource-using computer using the resources of another computer (CPU, memory (RAM), hard disk (HDD), etc.) or as a resource providing computer that provides its own resources to other computers. have.

본 발명의 실시예에서는 편의상 110이 '자원사용컴퓨터'이고,121∼123,131∼134,141,142가 '자원제공컴퓨터'라고 한다.그리고,자원 공유를 하고 온라인 상태이나 현재 자원사용컴퓨터나 자원제공컴퓨터로 동작하지 않는 컴퓨터를 대기노드(151∼154)라 고 한다.In the embodiment of the present invention, 110 is referred to as a resource resource computer, and 121 to 123, 131 to 134, 141, 142 is referred to as a resource resource computer. A computer that does not operate is called a standby node (151 to 154).

자원사용컴퓨터(110)는 자원제공컴퓨터(121∼123,131∼134,141,142)에게 작업을 분배하고,자원제공컴퓨터(121∼123,131∼134,141,142)는 분배된 작업을 수행한 후 그 결과를 자원사용컴퓨터(110)에게 피드백한다.그러면 자원사용컴퓨터(110)는 피드백된 작업 결과를 취합한다.The resource use computer 110 distributes the work to the resource providing computers 121 to 123, 131 to 134, 141 and 142, and the resource providing computers 121 to 123, 131 to 134, 141 and 142 perform the distributed work and then use the result. Then, the resource using computer 110 collects the feedback result.

이 방식을 도 1을 참조하면서 설명하면,자원사용컴퓨터(110)는 우선 사용하 고자 하는 자원제공컴퓨터들의 자원을 수집한다.This method will be described with reference to FIG. 1, and the resource using computer 110 first collects the resources of the resource providing computers to be used.

그리고,자원사용컴퓨터는 자원제공컴퓨터를 A,B,C 그룹으로 나누고,각 그룹의 리더컴퓨터(121,131,141)를 설정한다.이때,그룹은 자원제공컴퓨터의 IP를 기준으로 근접한 IP끼리 묶는 방식을 사용할 수 있고,그룹 중 가장 성능이 우수한 컴퓨터를 리더컴퓨터로 설정한다.The resource consuming computer divides the resource providing computer into groups A, B, and C, and sets up the leader computers 121, 131, and 141 of each group. In this case, the group uses a method of grouping adjacent IPs based on the IP of the resource providing computer. The computer with the best performance in the group is set as the leader computer.

자원사용컴퓨터(110)는 각 그룹의 리더컴퓨터(121,131,141)에게 작업을 분배하고,각 그룹의 리더컴퓨터(121,131,141)는 분배된 작업을 다시 나누어서 해당 그룹의 타 자원제공컴퓨터에게 분배한 후 작업 결과를 입력받아 취합한다.그리고,각 그룹의 리더컴퓨터(121,131,141)는 취합한 작업 결과를 다시 자원사용컴퓨터(110)에게 전달한다.자원사용컴퓨터(110)는 모든 그룹의 리더컴퓨터(121,131,141)로부터 입력된 작업 결과를 취합한다.이러한 방식에 따르면 작업이 계층적으로 분배되어 이루어지기 때문에 복잡한 작업도 효율적으로 분배되어 처리될 수 있다.The resource use computer 110 distributes the work to the leader computers 121, 131, and 141 of each group, and the leader computers 121, 131, 141 of each group divide the distributed work and distribute the work to other resource providing computers of the group. The reader computers 121, 131, and 141 of each group deliver the collected work results to the resource usage computer 110. The resource usage computer 110 is inputted from the reader computers 121, 131, and 141 of all groups. In this way, the work is distributed hierarchically, so that even complex work can be efficiently distributed and processed.

컴퓨터에 설치되는 자원공유 미들웨어는 도 2에 도시된 바와 같이 설정모듈(211)과 자원수집모듈(212)과 등급화모듈(213)과 자원제공모듈(214)과 자원사용모듈(215)과 중개모듈(216)과 비용계산모듈(217)로 이루어진다.The resource sharing middleware installed in the computer includes a configuration module 211, a resource collection module 212, a rating module 213, a resource providing module 214, a resource usage module 215, and an intermediate as shown in FIG. It consists of a module 216 and a cost calculation module 217.

설정모듈(211)은 컴퓨터의 자원정보를 체크하고, 사용자로부터 자원제공조건을 입력받아 메모리(230)에 저장한다.The setting module 211 checks the resource information of the computer, receives a resource provision condition from the user, and stores the resource information in the memory 230.

즉,설정모듈(211)은 컴퓨터의 IP주소, 사용자이름,CPU 성능,RAM 용량,운영체제,네트워크 속도 등의 정보를 체크하여 메모리(230)에 저장한다.That is, the setting module 211 checks and stores information such as an IP address, a user name, a CPU performance, a RAM capacity, an operating system, a network speed, and the like of the computer in the memory 230.

또한,설정모듈(211)은 자원제공조건을 설정하는 환경을 사용자에게 제공하 고, 사용자로부터 자원제공조건을 입력받아 메모리(230)에 저장한다.In addition, the setting module 211 provides a user with an environment for setting the resource providing condition, receives the resource providing condition from the user and stores it in the memory 230.

자원수집모듈(212)은 컴퓨터의 전원이 온되면 네트워크(220)를 통해 근접한 IP주소로 라우팅메시지를 송출한다.이 라우팅메시지에 대한 응답메시지가 수신되면 자원수집모듈(212)은 응답컴퓨터가 동일한 미들웨어를 구비하고 있다고 인식하고,응답컴퓨터와 IP자원정보 및 자원제공조건정보를 교환한다.이때 자원수집모듈(212)은 본인의 IP자원정보 및 자원제공조건정보 뿐만 아니라 메모리(230)에 저장된 타 컴퓨터의 IP자원정보 및 자원제공조건정보도 응답컴퓨터에게 제공하거나,응답컴퓨터로부터 제공받는다.그리고,자원수집모듈(212)은 응답컴퓨터로부터 제공된 타 컴퓨터의 IP자원정보 및 자원제공조건정보를 메모리(230)에 업데이트한다.응답컴퓨터와 교환되며 메모리에 저장되는 IP자원정보에는 IP주소,사용자이름,CPU 성능,RAM 용량,운영체제,네트워크 속도 등의 내용이 포함된다.When the computer is powered on, the resource collection module 212 transmits a routing message to a nearby IP address through the network 220. When a response message is received for the routing message, the resource collection module 212 may have the same response computer. It recognizes that the middleware is provided, and exchanges the IP resource information and the resource provision condition information with the response computer. At this time, the resource collection module 212, as well as its own IP resource information and resource provision condition information, the other stored in the memory 230 The IP resource information and resource provision condition information of the computer are also provided to the responding computer or received from the responding computer. The resource collection module 212 stores the IP resource information and resource provision condition information of another computer provided from the responding computer in memory ( The IP resource information exchanged with the response computer and stored in the memory includes the IP address, user name, CPU performance, RAM capacity, operating system, and network. It includes the information such as in FIG.

자원수집모듈(212)은 주기적으로 다른 IP주소에 라우팅메시지를 송출하여 자원수집과정을 반복 수행한다.이러한 자원수집과정을 반복 수행하면,최종적으로 모든 사용 가능한 컴퓨터의 자원을 수집할 수 있게 된다.The resource collection module 212 periodically sends a routing message to another IP address to repeat the resource collection process. By repeating such a resource collection process, it is possible to finally collect all available computer resources.

등급화모듈(213)은 메모리(230)에 저장되는 IP자원정보 중 CPU 성능,RAM 용량,운영체제,JVM 버전,네트워크 속도에 따라 가산점을 주고,그 가산점 합계를 기준으로 각 컴퓨터별 등급을 부여하고 등급정보를 메모리(230)에 추가한다.The grading module 213 gives an additional point according to CPU performance, RAM capacity, operating system, JVM version, and network speed among the IP resource information stored in the memory 230, and gives a rating for each computer based on the sum of the total points. The rating information is added to the memory 230.

자원제공모듈(214)은 자원사용컴퓨터에게 자신의 컴퓨터 자원을 제공하는 기능을 수행한다.즉,자원사용컴퓨터로부터 자원사용 요청이 있으면,자원제공모듈(214)은 현재 컴퓨터의 상태가 사용자가 설정한 자원제공조건에 해당하는 지를 체크하고,자원제공조건에 부합되면 자원사용을 허락한다.그리고,필요한 경우 작업을 수행하기 위한 응용프로그램을 다운로드받아 컴퓨터에 설치하고,자원사용컴퓨터로부터 작업을 분배받아 처리한 후 그 결과를 자원사용컴퓨터에게 전달한다.The resource providing module 214 performs a function of providing its own computer resource to the resource using computer. That is, if a resource use request is received from the resource using computer, the resource providing module 214 sets the status of the current computer to the user. Checks if a resource provisioning condition is met, permits the use of the resource if it meets the resource provisioning requirements, and downloads and installs an application to perform the task on the computer, if necessary, and distributes the task from the resource-using computer. After processing, the result is transmitted to the resource using computer.

자원사용모듈(215)은 자원제공컴퓨터에게 자원사용을 요청하고,자원제공컴퓨터로부터 자원사용이 허락되면 작업을 분배하여 작업요청메시지를 전송한다.이 작업요청메시지는 작업사용컴퓨터의 IP주소와,작업결과를 보고할 컴퓨터의 IP주소와,작업내용과,작업내용을 교환할 타 작업제공컴퓨터의 IP주소 정보를 포함한다.이때,자원사용모듈은 사용자가 지정한 노드수만큼의 작업사용컴퓨터에게 작업요청을 할 수도 있고,작업량에 따라 필요한 노드수를 파악하고 그 노드수만큼의 작업사용컴퓨터에게 작업요청을 할 수도 있다.The resource usage module 215 requests the resource providing computer to use the resource, and if the resource usage is allowed from the resource providing computer, distributes the job and transmits a job request message. The job request message includes the IP address of the job using computer, It contains the IP address of the computer that will report the results of the job, the job details, and the IP address of the other job providing computer that will exchange the job details. You can make a request, or you can figure out how many nodes you need based on the amount of work you are doing, and you can make a job request to as many nodes as you use.

또한,자원사용모듈(215)은 필요에 따라 자원제공컴퓨터에게 작업을 위한 응용프로그램 설치를 요청할 수 있다.자원제공컴퓨터가 직접 자원사용컴퓨터들에게 작업을 분배할 경우 작업요청메시지의 작업사용컴퓨터의 IP주소와 작업결과를 보고할 컴퓨터의 IP주소는 일치한다.그러나,자원제공컴퓨터가 그룹의 리더 컴퓨터를 통해 작업을 분배할 때 리더컴퓨터가 그룹 내 타 자원제공컴퓨터에게 전달하는 작업요청메시지의 경우,자원사용컴퓨터의 IP주소와 작업결과를 보고할 컴퓨터의 IP는 일치하지 않는다.또한,자원사용컴퓨터가 매우 바쁠 경우,자원사용모듈(215)은 작업결과를 보고할 컴퓨터의 IP주소를 다른 컴퓨터로 지정하여 작업을 분배할 수 있는데,이때에도 자원사용컴퓨터의 IP주소와 작업결과를 보고할 컴퓨터의 IP주소가 일치하지 않게 된다.In addition, the resource usage module 215 may request a resource providing computer to install an application program for a task, if necessary. When the resource providing computer directly distributes the work to the resource using computers, the resource using module of the task request message may be used. The IP address matches the IP address of the computer that will report the job results; however, in the case of a job request message that the reader computer forwards to another volunteer computer in the group when the volunteer computer distributes the job through the group's leader computer. If the resource usage computer is very busy, the resource usage module 215 sets the IP address of the computer for which the operation result is to be reported. In this case, the IP address of the resource-using computer and the IP address of the computer to report the job result do not match.

중개모듈(216)은 리더컴퓨터로서의 기능을 수행한다.즉,작업사용컴퓨터로부터 분배된 작업에 대해 자원사용모듈(215)을 구동하여 그룹내 타 작업제공컴퓨터에게 작업을 재분배한다.그리고,그 작업 결과를 취합하여 작업사용컴퓨터에게 제공한다.The mediation module 216 functions as a reader computer. That is, the resource usage module 215 is redistributed to other job providing computers in the group for the jobs distributed from the job using computer. Collect the results and provide them to the working computer.

상기 비용계산모듈(217)은 컴퓨터들의 CPU사용, PF사용, 핸들사용, 스레드 사용, 프로세스 사용, 메모리 사용에 대한 비용을 계산하는 기능을 수행한다. 즉, 작업사용컴퓨터로부터 분배된 작업에 대해 자원사용정도를 판단하여 이에 따른 자원을 제공한 컴퓨터마다 비용을 계산하여 자원사용에 따른 보상을 정확히 계산하기 위한 것이다.The cost calculation module 217 calculates costs for CPU usage, PF usage, handle usage, thread usage, process usage, and memory usage of computers. In other words, it is to accurately calculate the compensation for the use of resources by determining the degree of resource use for the work distributed from the work use computer and calculating the cost for each computer that provides the resource accordingly.

이를 위해 CPU사용, PF사용, 핸들사용, 스레드 사용, 프로세스 사용, 메모리 사용을 체크하는 모듈들이 상기 비용계산모듈에 구성되어진다.For this purpose, modules for checking CPU usage, PF usage, handle usage, thread usage, process usage, and memory usage are configured in the cost calculation module.

본 발명의 자원공유 미들웨어는 자원사용컴퓨터로서 그룹내 리더컴퓨터 또는 타 자원제공컴퓨터에게 작업을 분배하는 기능을 수행하고,리더컴퓨터로서 타 자원사용컴퓨터로부터 분배된 작업을 그룹내 타 자원제공컴퓨터에게 분배하는 기능을 수행하고,자원제공컴퓨터로서 자원사용컴퓨터나 그룹내 리더컴퓨터로부터 분배된 작업을 수행하여 그 결과를 자원사용컴퓨터나 리더컴퓨터에게 전달하는 기능을 수행한다.The resource sharing middleware of the present invention performs a function of distributing a job to a leader computer or another resource providing computer in a group as a resource using computer, and distributes a job distributed from another resource using computer to another resource providing computer in a group as a leader computer. Perform a function distributed from a resource using computer or a group leader computer as a resource providing computer, and delivering the result to the resource using computer or the leader computer.

도 3은 본 발명의 한 실시예에 따른 시스템 사용에 따른 종량요금 보상 방법을 도시한 동작 흐름도이다.3 is an operation flowchart illustrating a method of pay-as-you-go based on system usage according to an embodiment of the present invention.

컴퓨터의 전원이 온되면,자원공유 미들웨어 프로그램은 컴퓨터의 자원정보와 자원제공조건을 파악한다(S301).이때,파악하는 자원정보에는 IP주소,사용자이름,CPU 성능,RAM 용량,운영체제,네트워크 속도 등의 정보가 포함되고,자원제공조건으로서는 항상 제공,CPU 사용량 15%미만일 때 제공,특정 시간대동안 제공 중 하나의 조건이다.When the computer is powered on, the resource sharing middleware program grasps the resource information and resource provision conditions of the computer (S301). At this time, the resource information to be identified includes IP address, user name, CPU performance, RAM capacity, operating system, and network speed. Information is provided, and as a resource providing condition, it is always provided, provided when the CPU usage is less than 15%, and provided for a specific time period.

컴퓨터의 자원정보는 컴퓨터의 전원이 온 될 때마다 파악하고,자원제공조건은 자원공유 미들웨어 프로그램 설치시 사용자가 선택한 조건을 기억하고 있다가 전원이 온 될 때 저장된 정보를 파악한다.The resource information of the computer is identified each time the computer is turned on, and the resource provision condition remembers the condition selected by the user when installing the resource sharing middleware program, and the information stored when the power is turned on.

자원공유 미들웨어는 대기상태로 진행하고(S302),자원수집 및 등급화과정을 진행한다(S303).Resource sharing middleware proceeds to the standby state (S302), and proceeds with the resource collection and grading process (S303).

즉,자원공유 미들웨어가 근접 IP주소로 라우팅메시지를 송출하고,이 라우팅메시지에 대한 응답메시지가 수신되면 응답컴퓨터와 IP자원정보 및 자That is, the resource sharing middleware sends a routing message to a neighboring IP address, and when a response message is received for the routing message, the responding computer, the IP resource information, and the

원제공조건정보를 교환함으로써,자원을 수집한다.Collect resources by exchanging source condition information.

또한,외부 컴퓨터로부터 라우팅메시지가 수신되면 응답하고,그 외부컴퓨터와 IP자원정보 및 자원제공조건정보를 교환하여 자원을 수집한다.그리고,수집된 자원에 대해 CPU 성능,RAM 용량,운영체제,네트워크 속도 등을 고려하여 등급화를 수행한다.In addition, when a routing message is received from an external computer, it responds, exchanges IP resource information and resource provision condition information with the external computer, and collects the resource. The collected resources include CPU performance, RAM capacity, operating system, and network speed. The rating is performed in consideration of the above.

사용자로부터 자원사용이 요구되는 응용 프로그램이 실행되어 자원사용명령이 수신되면(S304),자원공유 미들웨어는 작업에 필요한 노드수를 파악한다(S305).When an application program requiring resource use is executed from a user and a resource use command is received (S304), the resource sharing middleware determines the number of nodes required for the operation (S305).

그리고,자원공유 미들웨어는 작업량에 따라 계층적 작업이 필요한 지 여부를 파악한다(S306). In addition, the resource sharing middleware determines whether hierarchical work is required according to the amount of work (S306).

즉,자원공유 미들웨어는 작업에 필요한 노드수가 직접 관리할 수 있을 정도인 지를 파악한다.In other words, the resource sharing middleware determines whether the number of nodes required for the task can be directly managed.

계층적 작업이 필요하면 타 자원제공컴퓨터들에게 그룹작업요청 서브루틴(S340)을 수행하고,계층적 작업이 필요하지 않으면 타 자원제공컴퓨터들에게 개별작업요청 서브루틴(S350)을 수행한다.If the hierarchical work is required, the group work request subroutine S340 is performed to the other resource providing computers, and if the hierarchical work is not required, the individual work request subroutine S350 is performed to the other resource providing computers.

자원공유 미들웨어는 작업을 분배한 각 리더컴퓨터 또는 자원제공컴퓨터들로부터 작업결과가 수신되면(S307),수신된 작업결과들을 취합하여 최종 결과치를 산출한(S308)후 대기상태(S302)로 되돌아간다.When the resource sharing middleware receives a task result from each reader computer or resource providing computers that distributes the task (S307), the received task results are collected and the final result is calculated (S308), and then the process returns to the standby state (S302). .

한편,단계 S304에서 사용자로부터 자원사용명령이 수신되지 않고,타 자원사용컴퓨터 또는 그룹내 리더컴퓨터로부터 자원요청이 수신되면(S309),자원공유 미들웨어는 컴퓨터의 현재 자원상태를 파악한다(S310).On the other hand, if a resource use command is not received from the user in step S304, and a resource request is received from another resource use computer or a leader computer in the group (S309), the resource sharing middleware determines the current resource state of the computer (S310).

단계 S310의 파악 결과,컴퓨터의 현재 자원상태가 자원제공조건에 부합되면(S311)타 자원사용컴퓨터에게 자원사용허가메시지를 전송한다(S312).컴퓨터의 현재 자원상태가 자원제공조건에 부합되지 않으면(S311),타 자원사용컴퓨터에게As a result of the grasp of step S310, if the current resource status of the computer meets the resource provisioning conditions (S311), a resource use permission message is transmitted to another resource using computer (S312). If the current resource status of the computer does not meet the resource provisioning conditions, (S311), to other resource using computer

자원사용거부메시지를 전송한(S313)후 대기상태(S302)로 되돌아간다.After the resource usage rejection message is transmitted (S313), the process returns to the standby state (S302).

자원사용허가메시지를 전송받은 리더컴퓨터 또는 타 자원사용컴퓨터로부터 작업요청메시지가 수신되고(S314),현재 수신된 작업요청메시지가 그룹작업을 위한 작업요청메시지이면(S315),그룹작업 서브루틴(S360)을 수행한다.여기서,그룹 작업 서브루틴(S360)은 자원사용컴퓨터로부터 리더컴퓨터로 지정되어 작업을 분배받고,분배된 작업을 그룹내 타 자원제공컴퓨터에게 재분배하는 기능을 수행하며,이는 도 6에 상세하게 기술되어 있다.그룹작업 서브루틴을 수행한 후 타 자원제공컴퓨터로부터 작업 결과가 수신되면(S316),수신된 결과를 취합하여 자원사용컴퓨터에게 전송한다(S317).If a work request message is received from the reader computer or another resource using computer that has received the resource use permission message (S314), and the currently received work request message is a work request message for group work (S315), the group work subroutine (S360). Here, the group job subroutine (S360) is assigned to the leader computer from the resource use computer to receive the job, and performs the function of redistributing the distributed job to other resource providing computers in the group, which is shown in FIG. After the group work subroutine is performed, when a work result is received from another resource providing computer (S316), the received result is collected and transmitted to the resource using computer (S317).

한편,단계 S315에서 리더컴퓨터 또는 타 자원사용컴퓨터로부터 수신된 작업요청메시지가 그룹작업요청메시지가 아니면(S315),요청된 작업을 수행하기 위한 응용처리모듈을 실행한(S318)후 작업결과를 리더컴퓨터 또는 타 자원사용컴퓨터에게 전송한다(S319).이때 컴퓨터가 시퀀스한 작업을 수행하는 경우에는 타 자원제공컴퓨터와 작업에 필요한 정보를 교환하면서 응용처리모듈을 실행할 수도 있다.On the other hand, if the job request message received from the reader computer or other resource using computer in step S315 is not a group work request message (S315), after executing the application processing module for performing the requested work (S318) and then the work result reader In operation S319, when the computer performs a sequence of tasks, the application processing module may be executed while exchanging information required for the task with another resource providing computer.

상기 자원사용컴퓨터에게 전송시 자원제공컴퓨터의 자원 공유 정도를 확인(S320)하여 이에 따른 각 사용요소의 비용을 계산하게 된다.When transmitting to the resource using computer to check the resource sharing degree of the resource providing computer (S320) to calculate the cost of each use element accordingly.

예를 들어 CPU사용, PF사용, 핸들사용, 스레드 사용, 프로세스 사용, 메모리 사용을 체크하여 이에 따른 비용을 계산하게 된다.For example, you can check CPU usage, PF usage, handle usage, thread usage, process usage, and memory usage to calculate the cost.

도 4는 도 3에 도시된 자원공유정도에 따른 비용계산을 도시한 흐름도이다.4 is a flowchart illustrating a cost calculation based on the degree of resource sharing illustrated in FIG. 3.

즉, 작업과정을 수행하고 있는 컴퓨터들의 CPU 사용량을 계산하는 CPU사용량계산단계(S410)와,That is, the CPU usage calculation step (S410) for calculating the CPU usage of the computers performing the work process,

작업과정을 수행하고 있는 컴퓨터들의 페이지 파일 사용량을 계산하는 페이지파일사용량계산단계(S420)와,A page file usage calculation step (S420) of calculating page file usage of computers performing a work process;

작업과정을 수행하는 컴퓨터들의 핸들 사용량을 계산하는 핸들사용량계산단계(S430)와,A handle usage calculation step (S430) of calculating the handle usage of the computers performing the work process;

작업과정을 수행하는 컴퓨터들의 스레드 사용량을 계산하는 스레드사용량계 산단계(S440)와,A thread usage calculation step (S440) of calculating thread usage of computers performing a work process;

작업과정을 수행하는 컴퓨터들의 프로세스 사용량을 계산하는 프로세스사용량계산단계(S450)와,A process usage calculation step (S450) of calculating process usage of computers performing a work process;

작업과정을 수행하는 컴퓨터들의 메모리 사용량을 계산하는 메모리사용량계산단계(S460)로 이루어진다.Memory usage calculation step (S460) of calculating the memory usage of the computers performing the work process.

도5는 측정이 가능한 예시도로서 각 컴퓨터에서 제공하는 것이다.Figure 5 is an exemplary view that can be measured is provided by each computer.

즉, CPU사용, PF사용, 핸들사용, 스레드 사용, 프로세스 사용, 메모리 사용에 대해 비용을 계산하는 것으로 예를 들어 설명하자면, 상기 CPU사용량계산은 각 컴퓨터마다 CPU성능의 사용에 따른 비용을 처리하는 것으로서, 작업을 수행하기 전에 CPU사용량이 1%이었지만 작업을 수행한 후 CPU사용량이 25%로 변동되면, 이에 따른 24%의 CPU사용을 하게 되는 것이다.In other words, the CPU usage calculation calculates costs for CPU usage, PF usage, handle usage, thread usage, process usage, and memory usage. If the CPU usage is 1% before the task is executed but the CPU usage is changed to 25% after the task is executed, the CPU usage is 24% accordingly.

또한, 작업의 수행시간이 2분 정도 수행하였다면, 실질적인 CPU사용은 사용량에 사용시간을 사용자가 제공하는 금액에 책정하게 된다.In addition, if the execution time of the task is about 2 minutes, the actual CPU usage is set to the amount provided by the user to the usage time.

예를 들어, 자원사용컴퓨터에서 CPU사용을 5원으로 책정해 놓는다면, 24%에 2분을 사용하였으므로 5원을 곱하게 되면 CPU사용에 따른 비용은 240원이 책정되는 것이다.For example, if a resource-use computer sets CPU usage to 5 won, 24 minutes was used for 2 minutes, so multiplying by 5 won would cost 240 won.

나머지 각 단계에서의 비용 계산도 상기한 CPU의 사용에 따른 비용계산 방식과 동일하다.The cost calculation in the remaining steps is the same as the cost calculation method based on the use of the CPU.

이상에서와 같은 내용의 본 발명이 속하는 기술분야의 당업자는 본 발명의 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시된 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. Those skilled in the art to which the present invention pertains as described above may understand that the present invention may be implemented in other specific forms without changing the technical spirit or essential features of the present invention. Therefore, the above-described embodiments are to be understood as illustrative in all respects and not restrictive.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구 범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the invention is indicated by the following claims rather than the above description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the invention. do.

이상에서 살펴본 바와 같이, 본 발명의 시스템 사용에 따른 종량요금 보상 시스템 및 보상 방법은 전세계에 산재된 컴퓨터와 인터넷을 이용하여 분산 병렬처리시스템을 구축할 수 있기 때문에 매우 저렴한 비용으로 초고속 연산처리능을 갖는 시스템을 제공할 수 있다. 아울러, 자원공유를 허락한 사용자는 자신의 컴퓨터를 사용하지 않을 때는 타 컴퓨터에게 자원을 제공하고, 필요시에는 타 컴퓨터의 자원을 사용할 수 있고 이에 따른 효율적인 비용 계산을 통해 사용한 컴퓨터의 사용자에게 보상을 제공하기 때문에 컴퓨터의 활용도를 증대시킬 수 있는 효과가 있다.As described above, the pay-as-you-go compensation system and the compensation method according to the use of the system of the present invention can be used to build a distributed parallel processing system using a computer and the Internet scattered around the world, so the ultra-high speed processing performance at a very low cost It can provide a system having. In addition, a user who allows resource sharing can provide resources to other computers when not using his computer, and can use resources of other computers when necessary, and reward the user of the used computer through efficient cost calculation accordingly. It provides the effect of increasing the utilization of the computer.

Claims (3)

삭제delete 컴퓨터에 설치되어 타 컴퓨터와의 자원공유 기능을 수행하는 자원공유 미들웨어와,타 컴퓨터와의 물리적인 접속수단인 네트워크와,메모리를 구비한 병렬 분산처리시스템에서의 분산처리방법에 있어서,In a distributed processing method in a parallel distributed processing system having a memory sharing middleware installed in a computer and performing a resource sharing function with another computer, a network as a physical connection means with another computer, and a memory, 상기 자원공유 미들웨어가 상기 컴퓨터의 IP주소와 CPU 성능과 RAM 용량과 네트워크 속도를 포함하는 자원정보와 자원제공조건을 파악하는 자원정보파악단계와;Determining, by the resource sharing middleware, resource information including the IP address, CPU performance, RAM capacity, and network speed of the computer and resource provision conditions; 상기 자원공유 미들웨어가 상기 네트워크에 접속된 상기 타 컴퓨터의 IP 주소와 CPU 성능과 RAM 용량과 네트워크 속도를 포함하는 자원정보를 수집하고 상기 타 컴퓨터의 성능에 따라 등급을 부여하는 등급부여단계와;A rating step of the resource sharing middleware collecting resource information including the IP address, CPU performance, RAM capacity, and network speed of the other computer connected to the network and assigning a rating according to the performance of the other computer; 임의의 컴퓨터로부터 자원사용 요청이 있으면,상기 자원공유 미들웨어가 상기 컴퓨터의 자원사용 상태를 파악하여 상기 자원제공조건에 부합되면 자원사용을 허락하고,상기 임의의 컴퓨터로부터 요청된 작업을 수행한 후 작업결과를 임의의 컴퓨터에게 제공하는 결과제공단계와;If there is a request for resource usage from any computer, the resource sharing middleware grasps the resource usage status of the computer and permits the use of resources if the resource provision conditions are met, and then performs the requested operation from the random computer. Providing a result to any computer; 상기 자원공유 미들웨어가 임의의 타 컴퓨터들에게 자원을 요청하여 작업에 필요한 자원을 확보하고,상기 자원 확보된 임의의 타 컴퓨터들에게 상기 작업을 분배한 후 작업결과를 수신받아 취합하여 최종 결과치를 산출하는 결과치산출단계와;The resource sharing middleware requests a resource from any other computer to secure a resource necessary for the job, distributes the job to any other secured computer, receives the work result, collects the work result, and calculates a final result value. Calculating a result value; 임의의 다른 타 컴퓨터로부터 자원사용 요청이 있으면 상기 컴퓨터의 자원사용 상태를 파악하여 상기 자원제공조건에 부합되면 자원사용을 허락하고,임의의 다른 타 컴퓨터들에게 자원을 요청하여 상기 임의의 다른 타 컴퓨터로부터 요청된 작업을 수행하기 위한 필요한 자원을 확보하고,상기 자원 확보된 다른 타 컴퓨터들에게 상기 요청된 작업을 재분배한 후 작업결과를 수신받아 취합하여 상기 다른 타 컴퓨터에게 제공하는 자원중개단계와;If there is a request for resource usage from any other computer, the resource usage status of the computer is checked, and if the resource providing condition is met, resource usage is allowed, and any other computer is requested by requesting a resource from any other computer. A resource brokering step of obtaining necessary resources for performing the requested task from the server, receiving the collected work results by redistributing the requested task to the other computers having the resources, and providing the collected work results to the other other computers; 타 컴퓨터들의 CPU사용, PF사용, 핸들사용, 스레드 사용, 프로세스 사용, 메모리 사용에 대한 비용을 컴퓨터마다 계산하는 비용계산단계;를 포함하여 구성하되,The cost calculation step of calculating the cost of CPU, PF usage, handle usage, thread usage, process usage, memory usage of other computers for each computer; 상기 비용계산단계는,The cost calculation step, 작업과정을 수행하고 있는 컴퓨터들의 CPU 사용량을 계산하는 CPU사용량계산단계와,CPU usage calculation step of calculating the CPU usage of the computers performing the work process, 작업과정을 수행하고 있는 컴퓨터들의 페이지 파일 사용량을 계산하는 페이지파일사용량계산단계와,A page file usage calculation step of calculating page file usage of computers performing a work process; 작업과정을 수행하는 컴퓨터들의 핸들 사용량을 계산하는 핸들사용량계산단계와,A handle usage calculation step of calculating the handle usage of the computers performing the work process; 작업과정을 수행하는 컴퓨터들의 스레드 사용량을 계산하는 스레드사용량계산단계와,A thread usage calculation step of calculating thread usage of computers that perform work processes; 작업과정을 수행하는 컴퓨터들의 프로세스 사용량을 계산하는 프로세스사용량계산단계와,A process usage calculation step of calculating process usage of computers that perform work processes; 작업과정을 수행하는 컴퓨터들의 프로세스 사용량을 계산하는 메모리사용량계산단계를 포함하는 것을 특징으로 하는 시스템 사용에 따른 종량요금 보상 방법.Compensation method according to the use of the system, characterized in that it comprises a memory usage calculation step of calculating the process usage of the computers performing the work process. 삭제delete
KR1020060099003A 2006-10-11 2006-10-11 Rate compensation system in use of system using and thereof KR100779116B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060099003A KR100779116B1 (en) 2006-10-11 2006-10-11 Rate compensation system in use of system using and thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060099003A KR100779116B1 (en) 2006-10-11 2006-10-11 Rate compensation system in use of system using and thereof

Publications (1)

Publication Number Publication Date
KR100779116B1 true KR100779116B1 (en) 2007-11-27

Family

ID=39080717

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060099003A KR100779116B1 (en) 2006-10-11 2006-10-11 Rate compensation system in use of system using and thereof

Country Status (1)

Country Link
KR (1) KR100779116B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013151535A1 (en) * 2012-04-03 2013-10-10 Hewlett-Packard Development Company, L.P. Processing events in view of historical data

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004240671A (en) 2003-02-05 2004-08-26 Hitachi Ltd Processing method and system for distributed computer
KR20040084831A (en) * 2003-03-26 2004-10-06 김기환 parallel distributed processing system and method
JP2004326452A (en) 2003-04-24 2004-11-18 Ricoh Co Ltd Distributed processing service providing server, distributed processing method, and distributed processing service providing program
KR20050000772A (en) * 2003-06-24 2005-01-06 김기환 Parallel distributed processing system and method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004240671A (en) 2003-02-05 2004-08-26 Hitachi Ltd Processing method and system for distributed computer
KR20040084831A (en) * 2003-03-26 2004-10-06 김기환 parallel distributed processing system and method
JP2004326452A (en) 2003-04-24 2004-11-18 Ricoh Co Ltd Distributed processing service providing server, distributed processing method, and distributed processing service providing program
KR20050000772A (en) * 2003-06-24 2005-01-06 김기환 Parallel distributed processing system and method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013151535A1 (en) * 2012-04-03 2013-10-10 Hewlett-Packard Development Company, L.P. Processing events in view of historical data

Similar Documents

Publication Publication Date Title
Huang et al. SSUR: an approach to optimizing virtual machine allocation strategy based on user requirements for cloud data center
EP3400535B1 (en) System and method for distributed resource management
CN104601664B (en) A kind of control system of cloud computing platform resource management and scheduling virtual machine
Hussein et al. A light-weight data replication for cloud data centers environment
CN110597639B (en) CPU distribution control method, device, server and storage medium
EP2755133B1 (en) Application execution controller and application execution method
WO2018131556A1 (en) Resource setting control device, resource setting control system, resource setting control method, and computer-readable recording medium
CN109614227A (en) Task resource concocting method, device, electronic equipment and computer-readable medium
Delavar et al. A synthetic heuristic algorithm for independent task scheduling in cloud systems
Peddi Design of Simulators for Job Group Resource Allocation Scheduling In Grid and Cloud Computing Environments
Wu et al. Towards collaborative storage scheduling using alternating direction method of multipliers for mobile edge cloud
El-Zoghdy A hierarchical load balancing policy for grid computing environment
KR100609459B1 (en) parallel distributed processing system and method
Hao et al. Evaluation of nine heuristic algorithms with data‐intensive jobs and computing‐intensive jobs in a dynamic environment
Gadhavi et al. Adaptive cloud resource management through workload prediction
Alam et al. An NBDMMM algorithm based framework for allocation of resources in cloud
KR100779116B1 (en) Rate compensation system in use of system using and thereof
Sood Function points‐based resource prediction in cloud computing
Jiang et al. AMS: Adaptive multiget scheduling algorithm for distributed key-value stores
Xue et al. Communication-aware virtual machine migration in cloud data centres
Thakor et al. PDLB: an effective prediction-based dynamic load balancing algorithm for clustered heterogeneous computational environment
Zhou et al. Stability property of clouds and cooperative scheduling policies on multiple types of resources in cloud computing
Sharma et al. A highly reliable and cost-effective service model for finite population clouds: Analysis and implementation
Cao et al. Online cost-rejection rate scheduling for resource requests in hybrid clouds
Goudarzi et al. Effective load balancing in cloud computing

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
G170 Publication of correction
LAPS Lapse due to unpaid annual fee