WO2012153376A1 - 計算機システム、及び、情報処理方法 - Google Patents

計算機システム、及び、情報処理方法 Download PDF

Info

Publication number
WO2012153376A1
WO2012153376A1 PCT/JP2011/060591 JP2011060591W WO2012153376A1 WO 2012153376 A1 WO2012153376 A1 WO 2012153376A1 JP 2011060591 W JP2011060591 W JP 2011060591W WO 2012153376 A1 WO2012153376 A1 WO 2012153376A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
job
information
server
requested
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2011/060591
Other languages
English (en)
French (fr)
Inventor
敦行 乾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to US14/115,769 priority Critical patent/US20140082066A1/en
Priority to JP2013513834A priority patent/JP5688452B2/ja
Priority to PCT/JP2011/060591 priority patent/WO2012153376A1/ja
Publication of WO2012153376A1 publication Critical patent/WO2012153376A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5013Request control
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/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

Definitions

  • the present invention relates to a computer system, and more particularly to a computer system that determines job priority.
  • the client-server type system needs to schedule execution of a job instructed to start by the user.
  • the conventional method for scheduling job execution is to detect whether a user is seated by a human sensor, and execute a job instructed to start if it is determined that the user is away.
  • a method of not executing a job instructed to start is proposed (for example, see Patent Document 1).
  • Patent Document 1 controls a job based on only two stages of whether the user is away or seated, the job cannot be accurately scheduled according to the degree of attention (attention level) of the user's job. .
  • the priority of the job that defines the mutual relationship between the plurality of jobs is not taken into consideration, and therefore the priority of the job cannot be finely controlled.
  • Patent Literature 2 and Patent Literature 3 can dynamically change the priority between a plurality of jobs, but the priority is given in consideration of the computer resources used and the time limit for executing the job. Therefore, the job cannot be scheduled according to the user's attention to the job.
  • the present invention has been made for such a problem, and an object of the present invention is to automatically acquire a degree of attention to a user's job and to schedule a job accurately according to the obtained degree of attention. Is an offer.
  • a computer comprising at least one terminal used by at least one user, a server connected to each terminal, and at least one monitoring device that measures the state of each user.
  • the monitoring device measures first information indicating whether or not the user is present in front of the terminal, and transmits a measurement result including the first information to the server. Then, the terminal requests the server to start the job instructed by the user, requests the server for the progress status of the job inquired by the user, and the server requests the start.
  • Second information including the job that has been executed, the user who has requested the start of the job, the number of requests for the progress status of the job, and the user who has requested the progress of the job And holding the user's attention level for the job based on the transmitted measurement result and the second information, and prioritizing the job requested to start according to the calculated attention level. Determine the degree.
  • the priority of a job can be determined according to the degree of attention to the user's job.
  • the computer system acquires the degree (attention level) that a user who requests job execution pays attention to the job, and determines the priority of the job according to the acquired attention level.
  • FIG. 1 is a block diagram showing a configuration of a computer system according to the first embodiment of this invention.
  • the computer system according to the first embodiment of the present invention has a plurality of information processing apparatuses connected to a network.
  • the information processing apparatus of this embodiment is a computer.
  • the plurality of information processing apparatuses include at least one user terminal 101, a server 107, and at least one user state monitoring apparatus 105.
  • the user terminal 101 is a client of the server 107.
  • the server 107 is a device that receives a job request from the user terminal 101 and processes the job.
  • the user status monitoring device 105 is a device that monitors the status of a user who uses the user terminal 101.
  • the user terminal 101 and the server 107 are computers having an OS (Operating System, hereinafter the same).
  • User terminal 101 communicates with at least one user state monitoring device 105.
  • the server 107 communicates with a plurality of user terminals 101.
  • FIG. 2 is a block diagram illustrating a physical configuration of the information processing apparatus according to the first embodiment of this invention.
  • the server 107 and the user terminal 101 are information processing apparatuses including a memory 202, a processor 201, an external storage device 203, and a communication device 204.
  • the user state monitoring apparatus 105 is an information processing apparatus including at least a memory 202, a processor 201, and a communication device 204.
  • the processor 201 is an arithmetic device such as a CPU, and may include a plurality of processors.
  • the memory 202 is a primary storage area.
  • the processor 201 reads a program into the memory 202 and executes the read program, thereby implementing functions to be described later of each information processing apparatus.
  • the communication device 204 is a network interface such as a NIC, and may include an antenna for wireless communication. Each information processing apparatus communicates via the communication apparatus 204 which each has.
  • the operator or the like stores a program or the like in the external storage device 203 in the server 107, the user terminal 101, and the user state monitoring device 105.
  • the processor 201 executes a program stored in the external storage device 203 by the OS included in each information processing device, the program stored in the external storage device 203 is read into the memory 202. For this reason, a program group described later is described as being stored in the memory 202 of each information processing apparatus.
  • the user state monitoring device 105 includes a device that measures a user state such as a camera, a human sensor, or a seating sensor. Thereby, the user state monitoring apparatus 105 can acquire information necessary for determining whether or not the user is present in front of the display of the user terminal 101.
  • the camera included in the user state monitoring apparatus 105 is, for example, a Web camera.
  • the user state monitoring apparatus 105 can photograph the facial expression of the user. Further, when the user condition monitoring device 105 includes a human sensor that detects body temperature or frequency, the user condition monitoring device 105 can measure the user's body temperature, the user's body movement, or the like. Moreover, when the user state monitoring apparatus 105 has a seating sensor, the user state monitoring apparatus 105 can measure whether the user is present.
  • the user state monitoring device 105 When the user state monitoring device 105 includes a human sensor that can measure a user's body movement, the user state monitoring device 105 acquires a camera or a seating sensor in order to acquire whether or not the user is present, It has a human sensor. Further, the user state monitoring apparatus 105 may include a plurality of sensors that measure the user state.
  • the server 107 includes a job request reception program 108, a progress status response program 109, a priority update program 110, a job processing program 111, a user status reception program 112, a user status table 113, a progress request count table 114, an executable job table 115, And an executing job table 116.
  • the job request reception program 108 has a function for receiving a job execution request transmitted from the user terminal 101.
  • the progress status response program 109 has a function for transmitting the job progress status to the user terminal 101.
  • the priority update program 110 has a function for changing the priority of a job.
  • the job processing program 111 has a function for processing a job.
  • the user status reception program 112 has a function for receiving information (hereinafter referred to as user status information) indicating a user status transmitted from the user status monitoring device 105.
  • the user status table 113 is a table in which user status information is stored.
  • the progress request count table 114 is a table that stores the number of times the job progress has been requested from the user terminal 101.
  • the executable job table 115 is a table in which information indicating whether a job can be executed by the user terminal 101 is stored.
  • the in-execution job table 116 is a table in which information indicating the job being executed is stored.
  • the user terminal 101 has a user status notification program 102, a job execution request program 103, and a progress status request program 104.
  • the user status notification program 102 has a function for transmitting user status information transmitted from the user status monitoring device 105 to the server 107.
  • the job execution request program 103 has a function for requesting job execution.
  • the progress status request program 104 has a function for requesting the server 107 to transmit the progress status of the job.
  • the user status monitoring device 105 has a user status response program 106.
  • the user status response program 106 has a function for transmitting user status information to the server 107 when user status information is requested from the server 107.
  • the user status information is an image taken by the camera.
  • the user status information is a body measured by the human sensor. It is a value such as a vibration frequency or body temperature indicating movement.
  • the user status information is an identifier indicating whether the user is present or absent.
  • the processor 201 operates as a functional unit that realizes a predetermined function by processing the above-described program.
  • the processor 201 functions as a job request reception unit by processing the job request reception program 108, and functions as a progress status response unit by processing the progress status response program 109.
  • the processor 201 also operates as a functional unit that implements each of a plurality of processes executed by each program.
  • the information processing apparatus of the present embodiment is an apparatus or system that includes these functional units.
  • the program of this embodiment is installed in each information processing apparatus by a program distribution server or a non-transitory storage medium readable by the information processing apparatus, and a nonvolatile storage device (external storage device 203) of each information processing apparatus. ) May be stored.
  • a program for implementing each function and information such as a table are stored in a storage device such as a nonvolatile semiconductor memory, a hard disk drive, or an SSD (Solid State Drive), or a computer such as an IC card, an SD card, or a DVD. It may be stored on a readable non-transitory data storage medium.
  • a storage device such as a nonvolatile semiconductor memory, a hard disk drive, or an SSD (Solid State Drive), or a computer such as an IC card, an SD card, or a DVD. It may be stored on a readable non-transitory data storage medium.
  • the server 107, the user terminal 101, and the user state monitoring apparatus 105 are each implemented by a single computer.
  • the information processing apparatus according to the present embodiment includes a plurality of information processing apparatuses including a plurality of processors 201. May be implemented.
  • all of the server 107, the user terminal 101, and the user state monitoring apparatus 105 may be mounted on one housing.
  • the processor 201, the memory 202, the external storage device 203, and the communication device 204 are a processor, a memory, an external storage device, and a communication device that are virtualized by a plurality of processors, the memory, the external storage device, and the communication device. May be.
  • FIG. 3 is a flowchart showing processing for collecting user status information according to the first embodiment of this invention.
  • the OS of the user terminal 101 starts the user status notification program 102.
  • the user status notification program 102 is activated by the OS of the user terminal 101, the user status information is obtained from the user status monitoring device 105 by requesting the user status response program 106 for user status information (step 301). .
  • the user status response program 106 periodically acquires user status information by measuring the user using a device such as a camera that the user status response program 106 has.
  • the user status response program 106 displays the acquired user status information and the date and time when the user status information was acquired as the user status notification program of the user terminal 101. 102.
  • the user status notification program 102 acquires the user identifier corresponding to the user status information.
  • the user identifier is an identifier that uniquely identifies the user, and each program that the server 107 and the user terminal 101 have identifies each user by the user identifier.
  • the user status notification program 102 may acquire the identifier of one user terminal 101 as the user identifier.
  • the user status notification program 102 uses the identifier input in user authentication performed when the user uses the user terminal 101 as the user identifier corresponding to the user status information. As such, it may be acquired.
  • the user status monitoring apparatus 105 may hold a user identifier in advance by being transmitted from the user terminal 101.
  • the user status response program 106 may transmit user status information including the user identifier to the user terminal 101.
  • the user status notification program 102 includes the user identifier and the date and time when the user status information was acquired in the acquired user status information. Then, the user status information including the user identifier and the like is transmitted to the server 107 (step 302). Then, the user status reception program 112 of the server 107 receives user status information and the like from the user terminal 101. The user status reception program 112 stores the received user status information and the like in the user status table 113.
  • the user status notification program 102 waits for a certain time after transmitting the user status information to the server 107 in order to cause the user status monitoring device 105 to sufficiently measure the user status information (step 303), and then returns to step 301. .
  • FIG. 4 is an explanatory diagram illustrating the user status table 113 according to the first embodiment of this invention.
  • the user status table 113 includes a user 1131, a status 1132, and a date 1133.
  • the user 1131 includes a user identifier corresponding to the user status information.
  • the state 1132 includes user state information of a user who uses the user terminal 101.
  • the date and time 1133 includes the date and time when the user status information included in the status 1132 is acquired.
  • the user state information included in the state 1132 is an image identifier or an image.
  • the identifier of the image is a name of a folder in which the image is stored, a file name, or the like.
  • Each program of the server 107 specifies an image included in the user state information by specifying the state 1132.
  • the user state information included in the state 1132 is a value indicating the user's body temperature or a frequency indicating body movement.
  • the user state information included in the state 1132 is an identifier indicating whether the user is present or absent.
  • the state 1132 may include a plurality of pieces of user state information acquired from each apparatus.
  • the user status table 113 shown in FIG. 4 there are two rows corresponding to each user.
  • the user status table 113 according to the present embodiment includes a plurality of rows acquired in a certain period, that is, a plurality of user status information. May be included. Further, when only the latest user status information is used in the processing described later, the user status table 113 of the present embodiment may hold only rows including only the latest user status information.
  • FIG. 5 is a flowchart illustrating processing in which the server 107 according to the first embodiment of this invention receives a job execution request.
  • each program of the server 107 executes the process shown in FIG.
  • the user activates the job execution request program 103 of the user terminal 101 in order to request job execution.
  • the job execution request program 103 acquires information about a job that the user requests to execute, and includes information about the acquired job and an identifier that uniquely indicates the user who requests the execution of the job
  • a job execution request is transmitted to the server 107.
  • Job information includes job identifiers.
  • Each program included in the server 107 and the user terminal 101 uniquely identifies a job by a job identifier.
  • the job request reception program 108 of the server 107 receives the job execution request transmitted from the job execution request program 103.
  • the job request reception program 108 according to the first embodiment is a program that provides a service for receiving an HTTP request.
  • the job request reception program 108 according to the present embodiment requests execution of a job and displays a job execution result.
  • the service is a reply service, the program may provide any service.
  • the job request reception program 108 refers to the executable job table 115 shown in FIG. 6 and determines whether or not the user who requests execution of the job can execute the requested job (step 401).
  • FIG. 6 is an explanatory diagram illustrating the executable job table 115 according to the first embodiment of this invention.
  • the executable job table 115 includes a user 1151 and an executable job 1152.
  • the user 1151 includes an identifier of a user who can execute the job.
  • User 1151 and user 1131 include corresponding values.
  • the executable job 1152 includes an identifier of a job that can be executed by the user indicated by the user 1151.
  • the job request reception program 108 identifies a row of the executable job table 115 based on the user identifier included in the job execution request transmitted from the job execution request program 103, and is included in the identified row.
  • the executable job 1152 is specified.
  • the identified executable job 1152 includes the identifier of the job included in the transmitted job execution request, it is determined that the user who requests the job execution can execute the requested job. To do.
  • the job request reception program 108 transmits a failure response to the user terminal 101 because the job cannot be executed (step 405). Then, the process shown in FIG.
  • the job request reception program 108 adds an identifier indicating the job to the executing job table 116 (step 402).
  • FIG. 7 is an explanatory diagram illustrating the executing job table 116 according to the first embodiment of this invention.
  • the executing job table 116 includes a job 1161, an executing user 1162, a progress status 1163, and a priority 1164.
  • the job 1161 includes an identifier indicating the job being executed.
  • the execution user 1162 includes the identifier of the user who has requested execution of the job.
  • the progress status 1163 includes a progress status indicating how far the job being executed has been executed.
  • the priority 1164 includes a priority of a job to be started or a priority of a job being executed.
  • the execution user 1162 includes a value corresponding to the user 1151 in the executable job table 115.
  • the job 1161 includes a value corresponding to the executable job 1152 in the executable job table 115.
  • the job request reception program 108 stores the user identifier included in the transmitted job execution request in the execution user 1162, and uses the identifier indicating the job included in the transmitted job execution request as the job. 1161 is stored.
  • the job request reception program 108 adds the job requested to be executed by the user to the execution job queue (step 403).
  • the execution job queue is a queue held in the memory 202 of the server 107 and holds jobs scheduled to be executed.
  • step 403 the job request reception program 108 transmits a success response to the user terminal 101 (step 404). Then, the process shown in FIG.
  • the job request reception program 108 selects FIG. It is determined that the user X can execute the job C by referring to the executable job table 115 shown in FIG.
  • step 402 the job request reception program 108 adds a line including “C” to the job 1161 and “X” to the execution user 1162 in the executing job table 116.
  • step 403 job C is added to the execution job queue. Then, after transmitting a success response to the user terminal 101, the process is terminated.
  • the job request reception program 108 refers to the executable job table 115 shown in FIG. Then, it is determined that the user Z cannot execute the job C (step 401). For this reason, after transmitting a failure response to the user terminal 101 in step 405, the processing is terminated.
  • the executable job table 115 may include only one area of the executable job 1152, and the executing job table 116 includes the executing user 1162. It does not have to be.
  • the job request reception program 108 may determine only whether the job can be executed.
  • a job that the user requests to execute is added to the execution job queue and stored in the executing job table 116 indicating that it is being executed.
  • the user inquires about the job progress status to the server 107 via the user terminal 101 in order to inquire how much the job is executed. Generally, when a user is paying attention to a job, the user frequently inquires about the progress status.
  • the user activates the progress request program 104 of the user terminal 101 in order to inquire about the progress of the job.
  • the progress request program 104 When the progress request program 104 is activated by the user, it inquires of the server 107 about the job progress.
  • the progress request program 104 requests the job progress from the server 107 by transmitting a progress request including the identifier of the job whose progress has been requested by the user.
  • the progress status response program 109 of the server 107 When the progress status response program 109 of the server 107 receives a request for progress status from the progress status request program 104, the progress status response program 109 refers to the progress status 1163 of the running job table 116, and determines the requested job. The progress status is transmitted to the user terminal 101. Then, the cell values indicated by the row 1141 including the identifier of the job whose progress status is requested and the column 1142 including the identifier of the user who requested the progress status in the progress request count table 114 of FIG. 8 are increased.
  • FIG. 8 is an explanatory diagram illustrating the progress request count table 114 according to the first embodiment of this invention.
  • the progress request count stored in the progress request count table 114 is used for priority determination to be described later.
  • each row 1141 indicates each job, and each column 1142 indicates each user.
  • the row 1141 includes values corresponding to the executable job 1152 of the executable job table 115 and the job 1161 of the running job table 116.
  • the column 1142 includes values corresponding to the user 1131 of the user status table 113, the user 1151 of the executable job table 115, and the execution user 1162 of the running job table 116.
  • the progress status response program 109 increases the value of the cell by two. If the job whose progress is requested is a job whose execution is requested by a user different from the user who requests the progress, the progress response program 109 increments the value of the cell by one.
  • the progress status response program 109 refers to the executing job table 116 and identifies which user requested the execution of the job whose progress status is requested. Then, the progress response program 109 determines whether or not the identified user is the user who requested the progress. When the identified user is the user who requested the progress status, the request for the progress status made by the user indicates a highly necessary query, indicating that the user is paying keen attention to the job.
  • the progress response program 109 adds 2 to the value of the cell corresponding to the job for which the progress is requested and the user who has requested the progress in the progress request count table 114.
  • the progress response program 109 adds 1 to the value of the cell in the progress request count table 114 corresponding to the job whose progress is requested and the user who requested the progress.
  • the progress request count table 114 includes the values shown in FIG. 8 and the running job table 116 includes the values shown in FIG. 7, the user X is the job B (the job whose identifier is “B”, and so on).
  • the progress status response program 109 refers to the executing job table 116 and acquires that the user X does not request execution of the job B. Then, 1 is added to the value of the cell in the progress request count table 114 corresponding to the user X and the job B.
  • the progress status response program 109 refers to the executing job table 116 and acquires that the user X has requested execution of the job C. Then, 2 is added to the value of the cell in the progress request count table 114 corresponding to the user X and the job C.
  • the progress response program 109 changes the value stored in the progress request count table 114 according to the number of requests for progress status and the user who requested the progress status.
  • the degree of attention can be indicated by numerical values. Further, in the processing described later, the priority is determined by the value stored in the progress request count table 114.
  • the progress status response program 109 may change the amount by which the value of the cell in the progress request count table 114 is increased to an arbitrary value.
  • the weight of the inquiry about the progress status may be determined by the user who has requested execution, and the value to be added may be changed.
  • FIG. 9 is a flowchart showing processing for updating the priority according to the first embodiment of this invention.
  • the processing shown in FIG. 9 is periodically executed before the job starts and during the job execution. With the processing shown in FIG. 9, the priority of the job to be started or the priority of the job being executed is determined.
  • the priority update program 110 of the server 107 periodically executes the process shown in FIG. First, the priority update program 110 refers to the state 1132 of the user state table 113 and acquires user state information. Then, the presence status of the user is determined (step 801). In step 801, the priority update program 110 assigns 1 to the presence status of the user when the user is present, and assigns 0 to the presence status of the user when the user is absent.
  • the acquired user state information includes an image.
  • the priority update program 110 analyzes the image included in the user status information and determines whether or not the user (ie, person) is in front of the user terminal 101, thereby determining whether or not the user is present. judge.
  • the priority update program 110 determines whether or not the temperature in front of the user terminal 101 is the same as the human body temperature. It is determined whether or not the user is present.
  • the priority update program 110 determines whether the identifier included in the status 1132 indicates presence or absence by indicating whether the user is present or absent. It is determined whether or not the person is present.
  • the priority update program 110 analyzes the user status information and calculates the user's frustration (step 802).
  • the frustration degree of the present embodiment is evaluated by three states of “good mood”, “normal”, and “bad mood”, and numerical values of 1, 2, and 3 are assigned respectively. These numerical values may be changed depending on which state indicates that the user's attention is high.
  • the frustration degree of this embodiment is a value indicating how much the user is frustrated while waiting for the end of the job.
  • the user's attention to whether or not the job is being executed is the highest. For this reason, when the user is “bad”, the highest value is assigned to the frustration degree of the present embodiment.
  • the user is “pleasant”, the user's attention to whether or not the job is being executed is the lowest. For this reason, when a user is "good in mood", the lowest value is assigned to the frustration degree of this embodiment.
  • the priority update program 110 analyzes the facial expression of the user displayed on the image indicating the user status information. Then, the priority update program 110 calculates the degree of wrinkles between the user's eyebrows, and when the degree of wrinkles is high, the user determines that the user is “bad” and assigns 3 to the frustration degree. Also good. Further, when the degree of wrinkles is low, the user may determine “normal” or “good feeling” and assign 1 or 2 to the frustration degree.
  • the priority update program 110 calculates the degree of increase in the mouth angle of the user's face. Then, when the calculated degree indicates that the mouth angle is rising, the priority update program 110 may determine that the user is “good in mood” and assign 3 to the frustration degree. Further, when the calculated degree indicates that the mouth angle is decreasing, the priority update program 110 may determine that the user is “bad” and assign 1 to the frustration degree. Further, when the mouth corner is parallel to the tip of the lips, the user may determine that it is “normal” and assign 2 to the frustration degree.
  • a technology for recognizing a user's facial expression by an image includes a smile recognition technology possessed by a digital camera or the like.
  • the smile recognition technology possessed by a digital camera or the like generally identifies the emotion of a photographed person based on the arrangement of the photographed person's eyes, mouth, outline, and the like.
  • the priority update program 110 specifies the user's body temperature in a certain period from the user state information. And when the user's body temperature in a fixed period is rising, a user may determine that he / she is bad and assign 3 to the frustration degree. Further, when there is no change in the user's body temperature in a certain period, the user may determine “normal” or “good feeling” and assign 1 or 2 to the frustration degree.
  • the priority update program 110 specifies the vibration frequency of the user's body movement over a certain period from the user state information. And when the frequency of a user's body movement is rising in a fixed period, or when it is a value higher than a predetermined threshold, there is a possibility that the user is acting calmly such as a poor lily. Since it is high, the user may determine that “the mood is bad” and assign 3 to the frustration level. Further, when the vibration frequency of the user's body movement has decreased for a certain period, or when the frequency is lower than a predetermined threshold, the user determines “normal” or “good feeling”, and the degree of frustration is 1 or 2 May be assigned.
  • the priority update program 110 determines the frustration numerically according to the state determined by the plurality of methods described above.
  • the total frustration degree may be calculated by multiplying the frustration degree by a predetermined weight coefficient and adding the multiplied results.
  • the priority update program 110 executes each job based on the presence status determined in step 801, the number of progress requests indicated in the progress request count table 114, and the irritability calculated in step 802.
  • the attention level of the user is calculated (step 803).
  • the degree of attention of user X to job A (the job whose identifier is “A”, the same applies hereinafter) is calculated by equation (1).
  • User X's attention to job A number of progress requests for job X by user X ⁇ attended status of user X ⁇ irritability of user X (1) Further, the degree of attention to job A is calculated as follows.
  • Attention to job A sum of all users' attention to job A (2)
  • the degree of attention of the present embodiment is calculated according to each element of the number of progress requests, the presence status, and the irritability.
  • the manager or the like may weight each element of the number of progress requests, the presence status, and the frustration degree according to the importance of the number of progress requests, the presence status, and the frustration level.
  • the degree of attention when the user is not present is always 0.
  • the server 107 does not have a function such as a face recognition function for acquiring information necessary for calculating the frustration level
  • the priority update program 110 cannot calculate the frustration level. May always be set to 1.
  • a small value such as 0.1 may be set as the degree of attention when the user is not present.
  • the priority update program 110 changes the value of the number of progress requests in step 803 depending on the number of users who requested the progress. May be. Then, the attention level may be calculated according to the changed value of the number of progress requests.
  • the priority update program 110 executes the job in the progress request count table 114.
  • the value stored in the row including C may be multiplied by 3 respectively.
  • the priority update program 110 may calculate the above formulas (1) and (2) based on the result obtained by multiplying the progress request count by 3.
  • the priority update program 110 updates the job priority based on the attention level calculated in step 803 (step 804). For example, when the priority update program 110 determines the priority at a plurality of stages between the lower limit value and the upper limit value, according to the attention level value of each job, between the lower limit value of the priority and the upper limit value, The priority may be proportionally distributed.
  • the priority update program 110 indicates that the priority of job A is 4, the priority of job B is 2, and the priority of job C is 6. Note that the priority of the present embodiment indicates that the higher the value, the higher the priority.
  • the priority update program 110 may lower the priority if the attention level is below a certain threshold, and increase the priority if the attention level is higher than the threshold. Further, for example, when the OS of the server 107 is Linux, the priority of the process being executed may be assigned by 40 stages of ⁇ (minus) 19 to 20 by the rename command.
  • step 804 the priority update program 110 determines the priority according to the attention level, and stores the determined priority in the priority 1164 of the running job table 116.
  • the priority update program 110 updates all the progress request counts stored in the progress request count table 114 to zero (0) times (step 805). This is because the attention level of the user is calculated according to the status of the latest progress request.
  • step 805 the priority update program 110 waits for a certain period of time to acquire a sufficient progress request status (step 806), and then returns to step 801.
  • the priority update program 110 calculates the attention level using all of the user's presence status, the user's frustration, and the number of progress requests.
  • the priority update program 110 may calculate the attention level by using one or two elements among the user's presence status, the user's frustration level, and the number of progress requests. .
  • the priority update program 110 may calculate the attention level by using the presence status of the user and the number of progress requests.
  • FIG. 10 is a flowchart showing a process for executing a job with a predetermined priority according to the first embodiment of this invention.
  • the process shown in FIG. 10 is executed after the process shown in FIG. 9 is executed.
  • the process shown in FIG. 10 is executed before the start of each job or during the execution of each job.
  • the job processing program 111 refers to the execution job queue held in the memory 202 of the server 107 and acquires a job from the top of the execution job queue (step 1001). After step 1001, the priority 1164 in the job execution table 116 is referred to, and the processor 201 is assigned to each job for execution for a time proportional to the value stored in the priority 1164 (step 1002).
  • step 1002 the job processing program 111 adds the job being executed among the jobs executed for the time allocated in step 1002 to the end of the execution job queue (step 1003). Then, the job processing program 111 returns to step 1001 and acquires a new job from the head of the execution job queue.
  • step 1003 the job processing program 111 acquires the progress status of the job and stores it in the progress status 1163 of the executing job table 116.
  • the priority of the jobs can be finely controlled according to the degree of attention to the jobs of the plurality of users. This makes it possible to effectively use computer resources while improving the satisfaction of each user.
  • FIG. 11 is a block diagram illustrating a configuration of a computer system according to the second embodiment of this invention.
  • the computer system of the second embodiment is different from the computer system of the first embodiment in that the user status monitoring device 105 is directly connected to the server 107 and the user status monitoring device 105 is informed of the user status. This is a point having a program 117. For this reason, the user terminal 101 does not need to have the user status notification program 102.
  • Programs and tables that are common to the computer system of the first embodiment and the computer system of the second embodiment have the same functions and the same values.
  • an identifier indicating a user who uses the user terminal 101 is held in the user state monitoring apparatus 105 in advance.
  • the user status notification program 117 acquires user status information by a camera or the like included in the user status monitoring device 105 and periodically transmits a user identifier and user status information given in advance to the server 107.
  • the user status reception program 112 of the server 107 receives the user status information transmitted from the user status monitoring device 105, and executes the processing shown in FIG.
  • the load on the user terminal 101 can be reduced.
  • the system of the present embodiment is a client-server system having a plurality of clients, and can be applied to a system in which a user requests a server to execute a job via a client.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Facsimiles In General (AREA)
  • Debugging And Monitoring (AREA)

Abstract

 少なくとも一つの端末と、サーバと、監視装置とを備える計算機システムであって、監視装置は、ユーザが端末の前に在席しているか否かを示す第1の情報を測定し、第1の情報を含む測定結果を、サーバに送信し、端末は、ユーザによって指示されたジョブの開始を、サーバに要求し、ユーザによって問い合わせられたジョブの進捗状況を、サーバに要求し、サーバは、開始が要求されたジョブと、ジョブの開始を要求したユーザと、ジョブの進捗状況の要求の回数と、ジョブの進捗を要求したユーザと、を含む第2の情報を保持し、送信された測定結果と、第2の情報とに基づいて、ジョブに対するユーザの注目度を算出し、算出された注目度に従って、開始が要求されたジョブの優先度を決定する。

Description

計算機システム、及び、情報処理方法
 本発明は、計算機システムに関し、特に、ジョブの優先度を決定する計算機システムに関する。
 大量なデータの処理など、時間のかかる処理を行うクライアント-サーバ型のシステムを複数のユーザが利用する場合、一般的に、ユーザ同士がコンピュータの資源を共有する。このため、限られたコンピュータの資源を各ユーザに公平に割り当てるため、クライアント-サーバ型のシステムは、ユーザによって開始を指示されたジョブの実行をスケジューリングする必要がある。
 ジョブの実行をスケジューリングする従来の方法には、人感知センサによって、ユーザが着席しているか否かを感知し、ユーザが離席していると判定された場合、開始が指示されたジョブを実行し、ユーザが着席していると判定された場合、開始が指示されたジョブを実行しないという方法が提案されている(例えば、特許文献1参照)。
 また、ジョブの実行をスケジューリングする従来の方法には、ジョブを実行するコンピュータの資源量に従って、ジョブを実行する優先度を動的に変更する方法が提案されている(例えば、特許文献2参照)。
 また、ジョブの実行をスケジューリングする従来の方法には、ジョブに必要なポイントを算出し、算出されたポイントの消費状況に従ってジョブをスケジューリングする方法が提案されている(例えば、特許文献3参照)。
特開2010-231814号公報 特開2009-277041号公報 特開2006-048275号公報
 しかし、特許文献1は、ユーザが離席しているか着席しているかの2段階のみによってジョブを制御するため、ユーザのジョブへ注目する度合い(注目度)に従って正確にジョブをスケジューリングすることはできない。また、複数ジョブが実行される場合、複数ジョブの相互関係を規定するジョブの優先度に関しては考慮されていないため、きめ細かくジョブの優先度を制御できない。
 一方、特許文献2及び特許文献3は、複数のジョブ間の優先度を動的に変更することは可能であるが、使用されるコンピュータの資源及びジョブを実行する期限等を考慮して優先度を決定するため、ユーザのジョブへの注目度に従ってジョブをスケジューリングすることができない。
 本発明はこのような問題に対してなされたものであり、本発明の目的は、ユーザのジョブへの注目度を自動的に取得し、取得された注目度に従って、正確にジョブをスケジューリングするシステムの提供である。
 本発明の代表的な一形態によると、少なくとも一人のユーザが用いる少なくとも一つの端末と、前記各端末に接続されるサーバと、前記各ユーザの状態を測定する少なくとも一つの監視装置とを備える計算機システムであって、前記監視装置は、前記ユーザが前記端末の前に在席しているか否かを示す第1の情報を測定し、前記第1の情報を含む測定結果を、前記サーバに送信し、前記端末は、前記ユーザによって指示されたジョブの開始を、前記サーバに要求し、前記ユーザによって問い合わせられた前記ジョブの進捗状況を、前記サーバに要求し、前記サーバは、前記開始が要求されたジョブと、前記ジョブの開始を要求したユーザと、前記ジョブの進捗状況の要求の回数と、前記ジョブの進捗を要求したユーザと、を含む第2の情報を保持し、前記送信された測定結果と、前記第2の情報とに基づいて、前記ジョブに対する前記ユーザの注目度を算出し、前記算出された注目度に従って、前記開始が要求されたジョブの優先度を決定する。
 本発明の一実施形態によると、ユーザのジョブに対する注目度に従って、ジョブの優先度を決定できる。
本発明の第1の実施形態の計算機システムの構成を示すブロック図である。 本発明の第1の実施形態の情報処理装置の物理的な構成を示すブロック図である。 本発明の第1の実施形態のユーザ状態情報を収集する処理を示すフローチャートである。 本発明の第1の実施形態のユーザ状態テーブルを示す説明図である。 本発明の第1の実施形態のサーバがジョブの実行要求を受信する処理を示すフローチャートである。 本発明の第1の実施形態の実行可能ジョブテーブルを示す説明図である。 本発明の第1の実施形態の実行中ジョブテーブルを示す説明図である。 本発明の第1の実施形態の進捗要求回数テーブルを示す説明図である。 本発明の第1の実施形態の優先度を更新する処理を示すフローチャートである。 本発明の第1の実施形態の定められた優先度によってジョブを実行する処理を示すフローチャートである。 本発明の第2の実施形態の計算機システムの構成を示すブロック図である。
 本実施形態の計算機システムは、ジョブの実行を要求するユーザがジョブに注目する度合い(注目度)を取得し、取得された注目度に従ってジョブの優先度を決定する。
 (第1の実施形態)
 以下、本発明を実施するための第1の実施形態を説明する。
 図1は、本発明の第1の実施形態の計算機システムの構成を示すブロック図である。
 本発明の第1の実施形態の計算機システムは、ネットワークに接続された複数の情報処理装置を有する。本実施形態の情報処理装置は、計算機である。これらの複数の情報処理装置には、少なくとも1台のユーザ端末101、サーバ107、少なくとも1台のユーザ状態監視装置105が含まれる。
 ユーザ端末101は、サーバ107のクライアントである。サーバ107は、ユーザ端末101からのジョブのリクエストを受信し、ジョブを処理する装置である。ユーザ状態監視装置105は、ユーザ端末101を用いるユーザの状態を監視する装置である。ユーザ端末101及びサーバ107は、OS(Operating System、以下同じ)を有する計算機である。
 ユーザ端末101は、少なくとも一つのユーザ状態監視装置105と通信する。サーバ107は、複数のユーザ端末101と通信する。
 図2は、本発明の第1の実施形態の情報処理装置の物理的な構成を示すブロック図である。
 サーバ107及びユーザ端末101は、メモリ202、プロセッサ201、外部記憶装置203、及び、通信装置204を有する情報処理装置である。また、ユーザ状態監視装置105は、少なくともメモリ202、プロセッサ201、及び、通信装置204を有する情報処理装置である。
 プロセッサ201は、CPU等の演算装置であり、複数のプロセッサを有してもよい。メモリ202は、一次記憶領域である。プロセッサ201は、プログラムをメモリ202に読み出し、読み出されたプログラムを実行することによって、各情報処理装置の後述する機能を実装する。
 通信装置204は、NIC等のネットワークインタフェースであり、無線通信のためのアンテナ等を有してもよい。各情報処理装置は、各々有する通信装置204を介して、通信する。
 オペレータ等は、サーバ107、ユーザ端末101及びユーザ状態監視装置105に、プログラム等を外部記憶装置203に格納する。そして、プロセッサ201が、各情報処理装置が有するOSによって、外部記憶装置203に格納されたプログラムを実行する場合、外部記憶装置203に格納されたプログラムは、メモリ202に読み出される。このため、後述するプログラム群は、各情報処理装置のメモリ202に格納されるものとして記載する。
 ユーザ状態監視装置105は、例えば、カメラ、人感知センサ、又は、着座センサなどのユーザの状態を測定する装置を有する。これによって、ユーザ状態監視装置105は、ユーザがユーザ端末101のディスプレイの前に在席しているか否かを判定するのに必要な情報を取得できる。なお、ユーザ状態監視装置105が有するカメラは、例えばWebカメラである。
 また具体的には、ユーザ状態監視装置105がカメラを有する場合、ユーザ状態監視装置105は、ユーザの表情を撮影できる。また、ユーザ状態監視装置105が体温又は振動数を検知する人感知センサを有する場合、ユーザ状態監視装置105は、ユーザの体温、又は、ユーザの体動等を測定できる。また、ユーザ状態監視装置105が着座センサを有する場合、ユーザ状態監視装置105は、ユーザが在籍しているか否かを測定できる。
 なお、ユーザ状態監視装置105がユーザの体動を測定できる人感知センサを有する場合、ユーザ状態監視装置105は、ユーザが在席しているか否かを取得するため、カメラ又は着座センサ等と、人感知センサとを共に有する。また、ユーザ状態監視装置105は、ユーザの状態を測定する複数のセンサを有してもよい。
 サーバ107は、ジョブ要求受付プログラム108、進捗状況応答プログラム109、優先度更新プログラム110、ジョブ処理プログラム111、ユーザ状態受付プログラム112、ユーザ状態テーブル113、進捗要求回数テーブル114、実行可能ジョブテーブル115、及び、実行中ジョブテーブル116を有する。
 ジョブ要求受付プログラム108は、ユーザ端末101から送信されるジョブの実行要求を受信するための機能を有する。進捗状況応答プログラム109は、ユーザ端末101に、ジョブの進捗状況を送信するための機能を有する。優先度更新プログラム110は、ジョブの優先度を変更するための機能を有する。
 ジョブ処理プログラム111は、ジョブを処理するための機能を有する。ユーザ状態受付プログラム112は、ユーザ状態監視装置105から送信されるユーザの状態を示す情報(以下、ユーザ状態情報と記載)を受信するための機能を有する。
 ユーザ状態テーブル113は、ユーザ状態情報が格納されるテーブルである。進捗要求回数テーブル114は、ジョブの進捗をユーザ端末101から要求された回数が格納されるテーブルである。
 実行可能ジョブテーブル115は、ユーザ端末101によってジョブが実行できるか否かを示す情報が格納されるテーブルである。実行中ジョブテーブル116は、実行中のジョブを示す情報が格納されるテーブルである。
 ユーザ端末101は、ユーザ状態通知プログラム102、ジョブ実行要求プログラム103、及び進捗状況要求プログラム104を有する。ユーザ状態通知プログラム102は、ユーザ状態監視装置105から送信されるユーザ状態情報を、サーバ107に送信するための機能を有する。
 ジョブ実行要求プログラム103は、ジョブの実行を要求するための機能を有する。進捗状況要求プログラム104は、ジョブの進捗状況を送信するよう、サーバ107に要求するための機能を有する。
 ユーザ状態監視装置105は、ユーザ状態応答プログラム106を有する。ユーザ状態応答プログラム106は、サーバ107からユーザ状態情報を要求された場合に、ユーザ状態情報を、サーバ107に送信するための機能を有する。ユーザ状態監視装置105がカメラを有する場合、ユーザ状態情報は、カメラが撮影した画像であり、ユーザ状態監視装置105が人感知センサを有する場合、ユーザ状態情報は、人感知センサによって測定された体動を示す振動数、又は、体温等の値である。また、ユーザ状態監視装置105が着座センサを有する場合、ユーザ状態情報は、ユーザの在席又は不在を示す識別子である。
 なお、プロセッサ201は、前述のプログラムを処理することによって、所定の機能を実現する機能部として動作する。例えば、プロセッサ201は、ジョブ要求受付プログラム108を処理することによって、ジョブ要求受付部として機能し、進捗状況応答プログラム109を処理することによって進捗状況応答部として機能する。他のプログラムについても同様である。さらに、プロセッサ201は、各プログラムによって実行される複数の処理のそれぞれを実現する機能部としても動作する。本実施形態の情報処理装置は、これらの機能部を含む装置又はシステムである。
 また、本実施形態のプログラムは、プログラム配布サーバ、又は、情報処理装置によって読み取り可能な非一時的記憶媒体によって各情報処理装置にインストールされ、各情報処理装置の不揮発性記憶デバイス(外部記憶装置203)に格納されてもよい。
 また、各機能を実装するプログラム、及び、テーブル等の情報は、不揮発性半導体メモリ、ハードディスクドライブ、若しくはSSD(Solid State Drive)等の記憶デバイス、又は、ICカード、SDカード、若しくはDVD等の計算機読み取り可能な非一時的データ記憶媒体に格納されてもよい。
 また、前述のサーバ107、ユーザ端末101、及び、ユーザ状態監視装置105は、各々一つの計算機によって実装されるが、本実施形態の情報処理装置は、複数のプロセッサ201を含む複数の情報処理装置によって実装されてもよい。また、サーバ107、ユーザ端末101、及び、ユーザ状態監視装置105のすべてが一つの筐体に実装されてもよい。また、プロセッサ201、メモリ202、外部記憶装置203、通信装置204は、複数のプロセッサ、メモリ、外部記憶装置、及び通信装置によって、仮想化されたプロセッサ、メモリ、外部記憶装置、及び通信装置であってもよい。
 以下に、本実施形態の計算機システムの処理について説明する。
 図3は、本発明の第1の実施形態のユーザ状態情報を収集する処理を示すフローチャートである。
 ユーザ端末101が有するOSは、ユーザ状態通知プログラム102を起動する。ユーザ状態通知プログラム102は、ユーザ端末101が有するOSによって起動されると、ユーザ状態応答プログラム106にユーザ状態情報を要求することによって、ユーザ状態監視装置105からユーザ状態情報を取得する(ステップ301)。
 ユーザ状態応答プログラム106は、自らが有するカメラ等の装置を用いてユーザを測定することによって、定期的にユーザ状態情報を取得する。そして、ユーザ状態通知プログラム102からユーザ状態情報を要求された場合、ユーザ状態応答プログラム106は、取得されたユーザ状態情報とユーザ状態情報が取得された日時とを、ユーザ端末101のユーザ状態通知プログラム102に送信する。
 ユーザ状態応答プログラム106からユーザ状態情報を受信した場合、ユーザ状態通知プログラム102は、ユーザ状態情報に対応するユーザの識別子を取得する。ユーザの識別子は、ユーザを一意に示す識別子であり、サーバ107及びユーザ端末101が有する各プログラムは、ユーザの識別子によって、各ユーザを特定する。
 一つのユーザ端末101を用いるユーザが一人である場合、ユーザ状態通知プログラム102は、一つのユーザ端末101の識別子を、ユーザの識別子として取得してもよい。また、複数のユーザが一つのユーザ端末101を用いる場合、ユーザ状態通知プログラム102は、ユーザがユーザ端末101を用いる際に行うユーザ認証において入力された識別子を、ユーザ状態情報に対応するユーザの識別子として、取得してもよい。
 なお、ユーザ状態監視装置105は、ユーザ端末101から送信されることによって、ユーザの識別子をあらかじめ保持してもよい。ユーザ状態監視装置105がユーザの識別子をあらかじめ保持する場合、ユーザ状態応答プログラム106は、ユーザの識別子を含むユーザ状態情報を、ユーザ端末101に送信してもよい。
 そして、ユーザ状態通知プログラム102は、取得されたユーザ状態情報に、ユーザの識別子と、ユーザ状態情報が取得された日時とを含める。そして、ユーザの識別子等を含むユーザ状態情報を、サーバ107に送信する(ステップ302)。そして、サーバ107のユーザ状態受付プログラム112は、ユーザ端末101からユーザ状態情報等を受信する。ユーザ状態受付プログラム112は、受信したユーザ状態情報等を、ユーザ状態テーブル113に格納する。
 そして、ユーザ状態通知プログラム102は、ユーザ状態監視装置105にユーザ状態情報を十分に測定させるため、ユーザ状態情報をサーバ107に送信してから一定時間待機した後(ステップ303)、ステップ301に戻る。
 図4は、本発明の第1の実施形態のユーザ状態テーブル113を示す説明図である。
 ユーザ状態テーブル113は、ユーザ1131、状態1132、及び日時1133を含む。ユーザ1131は、ユーザ状態情報に対応するユーザの識別子を含む。状態1132は、ユーザ端末101を用いるユーザのユーザ状態情報を含む。日時1133は、状態1132に含まれるユーザ状態情報が取得された日時を含む。
 ユーザ状態監視装置105がカメラを有する場合、状態1132に含まれるユーザ状態情報は、画像の識別子、又は、画像である。画像の識別子は、画像が格納されるフォルダ名、又は、ファイル名等である。サーバ107の各プログラムは、状態1132を特定することによって、ユーザ状態情報に含まれる画像を特定する。
 また、ユーザ状態監視装置105が体温又は振動数を測定する人感知センサを有する場合、状態1132に含まれるユーザ状態情報は、ユーザの体温を示す値、又は、体動を示す振動数である。また、ユーザ状態監視装置105が着座センサを有する場合、状態1132に含まれるユーザ状態情報は、ユーザの在席又は不在を示す識別子である。
 なお、ユーザ状態監視装置105が、ユーザ状態を測定する前述の装置(カメラ等)を複数有する場合、状態1132には、各装置から取得されたユーザ状態情報が複数含まれてもよい。
 図4に示すユーザ状態テーブル113において、各ユーザに対応する行は二つであるが、本実施形態のユーザ状態テーブル113は、一定期間において取得された複数の行、すなわち複数のユーザ状態情報を含んでもよい。また、後述する処理において、最新のユーザ状態情報のみを用いる場合、本実施形態のユーザ状態テーブル113は、最新のユーザ状態情報のみを含む行のみを保持してもよい。
 図5は、本発明の第1の実施形態のサーバ107がジョブの実行要求を受信する処理を示すフローチャートである。
 ユーザがジョブの実行をサーバ107に要求する場合、サーバ107の各プログラムは、図5に示す処理を実行する。
 ユーザは、ジョブの実行を要求するため、ユーザ端末101のジョブ実行要求プログラム103を起動する。ジョブ実行要求プログラム103は、ユーザによって起動されると、ユーザが実行を要求するジョブに関する情報を取得し、取得されたジョブに関する情報と、ジョブの実行を要求するユーザを一意に示す識別子とを含むジョブの実行要求を、サーバ107に送信する。
 ジョブに関する情報とは、ジョブの識別子等である。サーバ107及びユーザ端末101が有する各プログラムは、ジョブの識別子によって、ジョブを一意に識別する。
 サーバ107のジョブ要求受付プログラム108は、ジョブ実行要求プログラム103から送信されたジョブの実行要求を受信する。第1の実施形態のジョブ要求受付プログラム108は、HTTPリクエストを受信するサービスを提供するプログラムであるが、本実施形態のジョブ要求受付プログラム108は、ジョブの実行を要求し、ジョブの実行結果を返信するサービスであれば、いかなるサービスを提供するプログラムでもよい。
 ジョブ要求受付プログラム108は、図6に示す実行可能ジョブテーブル115を参照し、ジョブの実行を要求するユーザが、要求したジョブを実行可能であるか否かを判定する(ステップ401)。
 図6は、本発明の第1の実施形態の実行可能ジョブテーブル115を示す説明図である。
 実行可能ジョブテーブル115は、ユーザ1151、及び、実行可能ジョブ1152を含む。ユーザ1151は、ジョブを実行可能なユーザの識別子を含む。ユーザ1151と、ユーザ1131とは、対応する値を含む。実行可能ジョブ1152は、ユーザ1151が示すユーザによって実行可能なジョブの識別子を含む。
 ジョブ要求受付プログラム108は、ステップ401において、ジョブ実行要求プログラム103から送信されたジョブの実行要求に含まれるユーザの識別子によって、実行可能ジョブテーブル115の行を特定し、特定された行に含まれる実行可能ジョブ1152を特定する。そして、特定された実行可能ジョブ1152に、送信されたジョブの実行要求に含まれるジョブの識別子が含まれている場合、ジョブの実行を要求するユーザが、要求したジョブを実行可能であると判定する。
 ジョブの実行を要求するユーザが、要求したジョブを実行できない場合、ジョブを実行することができないため、ジョブ要求受付プログラム108は、ユーザ端末101に失敗レスポンスを送信する(ステップ405)。そして、図5に示す処理を終了する。
 ジョブの実行を要求するユーザが、要求したジョブを実行可能である場合、ジョブ要求受付プログラム108は、実行中ジョブテーブル116にジョブを示す識別子を追加する(ステップ402)。
 図7は、本発明の第1の実施形態の実行中ジョブテーブル116を示す説明図である。
 実行中ジョブテーブル116は、ジョブ1161、実行ユーザ1162、進捗状況1163、及び、優先度1164を含む。ジョブ1161は、実行中のジョブを示す識別子を含む。実行ユーザ1162は、ジョブの実行を要求したユーザの識別子を含む。進捗状況1163は、実行中のジョブがどれくらいまで実行されたかを示す進捗状況を含む。優先度1164は、これから開始されるジョブの優先度、又は、実行中のジョブの優先度を含む。
 実行ユーザ1162は、実行可能ジョブテーブル115のユーザ1151に対応する値を含む。ジョブ1161は、実行可能ジョブテーブル115の実行可能ジョブ1152に対応する値を含む。
 ステップ402において、ジョブ要求受付プログラム108は、送信されたジョブの実行要求に含まれるユーザの識別子を、実行ユーザ1162に格納し、送信されたジョブの実行要求に含まれるジョブを示す識別子を、ジョブ1161に格納する。
 そして、ジョブ要求受付プログラム108は、ユーザによって実行を要求されたジョブを、実行ジョブキューに追加する(ステップ403)。実行ジョブキューは、サーバ107のメモリ202に保持されるキューであり、実行する予定のジョブを保持する。
 ステップ403の後、ジョブ要求受付プログラム108は、成功レスポンスをユーザ端末101に送信する(ステップ404)。そして、図5に示す処理を終了する。
 例えば、ユーザX(識別子が「X」であるユーザ、以下同じ)が、ジョブC(識別子が「C」であるジョブ、以下同じ)の実行を要求した場合、ジョブ要求受付プログラム108は、図6に示す実行可能ジョブテーブル115を参照することによって、ユーザXがジョブCを実行可能であることを判定する(ステップ401)。
 そして、ジョブ要求受付プログラム108は、ステップ402において、実行中ジョブテーブル116のジョブ1161に「C」を含み、実行ユーザ1162に「X」を含む行を追加する。そして、ステップ403において、ジョブCを実行ジョブキューに追加する。そして、成功レスポンスをユーザ端末101に送信した後、処理を終了する。
 また、例えば、ユーザZ(識別子が「Z」であるユーザ、以下同じ)がジョブCの実行を要求した場合、ジョブ要求受付プログラム108は、図6に示す実行可能ジョブテーブル115を参照することによって、ユーザZがジョブCを実行できないと判定する(ステップ401)。このため、ステップ405において失敗レスポンスをユーザ端末101に送信した後、処理を終了する。
 なお、ユーザごとに実行可能ジョブを管理する必要がない場合、実行可能ジョブテーブル115は、実行可能ジョブ1152の一領域のみを含んでもよく、また、実行中ジョブテーブル116は、実行ユーザ1162を含まなくてもよい。そして、ジョブ要求受付プログラム108は、ステップ401において、ジョブが実行できるか否かのみを判定してもよい。
 図5に示す処理によって、ユーザが実行を要求するジョブが、実行ジョブキューに追加され、実行中であることを示す実行中ジョブテーブル116に格納される。
 図5に示す処理の後、ユーザは、ジョブがどの程度実行されているかを問い合わせるため、ユーザ端末101を介して、サーバ107にジョブの進捗状況を問い合わせる。一般的に、ユーザがジョブを強く注目している場合、ユーザは進捗状況を頻繁に問い合わせる。
 ユーザは、ジョブの進捗状況を問い合わせるため、ユーザ端末101の進捗状況要求プログラム104を起動する。進捗状況要求プログラム104は、ユーザによって起動されると、ジョブの進捗状況をサーバ107に問い合わせる。進捗状況要求プログラム104は、ユーザから進捗状況を要求されたジョブの識別子を含む進捗状況の要求を送信することによって、ジョブの進捗状況をサーバ107に要求する。
 サーバ107の進捗状況応答プログラム109は、進捗状況要求プログラム104から進捗状況の要求を受信した場合、進捗状況応答プログラム109は、実行中ジョブテーブル116の進捗状況1163を参照し、要求されたジョブの進捗状況を、ユーザ端末101に送信する。そして、図8の進捗要求回数テーブル114の、進捗状況が要求されたジョブの識別子を含む行1141と、進捗状況を要求したユーザの識別子を含む列1142とが示すセルの値を増加させる。
 図8は、本発明の第1の実施形態の進捗要求回数テーブル114を示す説明図である。
 進捗要求回数テーブル114に格納される進捗要求回数は、後述する優先度の決定に用いられる。進捗要求回数テーブル114は、各行1141が各ジョブを示し、各列1142が各ユーザを示す。
 行1141は、実行可能ジョブテーブル115の実行可能ジョブ1152、及び、実行中ジョブテーブル116のジョブ1161に対応する値を含む。列1142は、ユーザ状態テーブル113のユーザ1131、実行可能ジョブテーブル115のユーザ1151、及び、実行中ジョブテーブル116の実行ユーザ1162に対応する値を含む。
 例えば、進捗状況が要求されたジョブが、進捗状況を要求したユーザによって実行を要求されたジョブである場合、進捗状況応答プログラム109は、セルの値を2増加させる。また、進捗状況が要求されたジョブが、進捗状況を要求したユーザとは異なるユーザによって、実行を要求されたジョブである場合、進捗状況応答プログラム109は、セルの値を1増加させる。
 具体的には、進捗状況応答プログラム109は、実行中ジョブテーブル116を参照し、進捗状況が要求されたジョブが、どのユーザによって実行を要求されたかを特定する。そして、進捗状況応答プログラム109は、特定されたユーザが、進捗状況を要求したユーザであるか否かを判定する。そして、特定されたユーザが、進捗状況を要求したユーザである場合、ユーザが行った進捗状況の要求は、必要性が高い問い合わせであり、ユーザがジョブに強く注目していることを示す。
 このため、進捗状況応答プログラム109は、進捗要求回数テーブル114の、進捗状況が要求されたジョブと、進捗状況を要求したユーザとに対応するセルの値に2を加算する。
 また、特定されたユーザが、進捗状況を要求したユーザでない場合、進捗状況の要求は、普通程度の必要性による要求であることを示す。このため、進捗状況応答プログラム109は、進捗状況が要求されたジョブと、進捗状況を要求したユーザとに対応する、進捗要求回数テーブル114のセルの値に、1を加算する。
 例えば、進捗要求回数テーブル114が図8に示す値を含み、実行中ジョブテーブル116が図7に示す値を含む際に、ユーザXがジョブB(識別子が「B」であるジョブ、以下同じ)の進捗状況を要求した場合、進捗状況応答プログラム109は、実行中ジョブテーブル116を参照し、ユーザXはジョブBの実行を要求していないことを取得する。そして、ユーザXとジョブBとに対応する進捗要求回数テーブル114のセルの値に、1を加算する。
 一方で、ユーザXがジョブCの進捗状況を要求した場合、進捗状況応答プログラム109は、実行中ジョブテーブル116を参照し、ユーザXはジョブCの実行を要求したことを取得する。そして、ユーザXとジョブCとに対応する進捗要求回数テーブル114のセルの値に、2を加算する。
 進捗状況応答プログラム109が、進捗要求回数テーブル114に格納される値を進捗状況の要求の回数と、進捗状況を要求したユーザとに従って変化させることによって、進捗要求回数テーブル114は、ジョブがユーザによって注目されている程度を数値によって示すことができる。また、後述の処理において、進捗要求回数テーブル114に格納される値によって、優先度が決定される。
 なお、進捗状況応答プログラム109は、進捗要求回数テーブル114のセルの値を増加させる量を、任意の値に変更させてよい。例えば、実行を要求したユーザによって、進捗状況の問い合わせの重みを定め、加算する値を変化させてもよい。
 図9は、本発明の第1の実施形態の優先度を更新する処理を示すフローチャートである。
 図9に示す処理は、ジョブの開始前、及び、ジョブの実行中において定期的に実行される。図9に示す処理によって、開始するジョブの優先度、又は、実行中のジョブの優先度が決定される。
 サーバ107の優先度更新プログラム110は、図9に示す処理を定期的に実行する。まず、優先度更新プログラム110は、ユーザ状態テーブル113の状態1132を参照し、ユーザ状態情報を取得する。そして、ユーザの在席状況を判定する(ステップ801)。ステップ801において、優先度更新プログラム110は、ユーザが在席している場合、ユーザの在席状況に1を割り当て、ユーザが不在である場合、ユーザの在席状況に0を割り当てる。
 例えば、ユーザ状態監視装置105がカメラを有する場合、取得されたユーザ状態情報には画像が含まれる。優先度更新プログラム110は、ユーザ状態情報に含まれる画像を解析し、ユーザ(すなわち、人)がユーザ端末101の前にいるか否かを判定することによって、ユーザが在席しているか否かを判定する。
 また、ユーザ状態監視装置105が温度を測定する人感知センサを有する場合、優先度更新プログラム110は、ユーザ端末101の前が人の体温と同程度の温度であるか否かを判定することによって、ユーザが在席しているか否かを判定する。
 また、ユーザ状態監視装置105が温度を測定する着座センサを有する場合、優先度更新プログラム110は、状態1132に含まれている識別子が在席を示すか不在を示すかを判定することによって、ユーザが在席しているか否かを判定する。
 ステップ801の後、優先度更新プログラム110は、ユーザ状態情報を解析し、ユーザのイライラ度を算出する(ステップ802)。本実施形態のイライラ度は、「機嫌が良い」、「普通」及び「機嫌が悪い」の三つの状態によって評価され、それぞれ1、2、3の数値が割り当てられる。これらの数値は、いずれの状態がユーザの注目が高いことを示すかによって、値を変更されてもよい。
 すなわち、本実施形態のイライラ度は、ジョブの終了を待つ間、ユーザがどの程度苛立っているかを示す値である。ユーザが「機嫌が悪い」場合、ジョブが実行されているか否かへのユーザの注目度は最も高い。このため、ユーザが「機嫌が悪い」場合、本実施形態のイライラ度は、最も高い値が割り当てられる。また、ユーザが「機嫌が良い」場合、ジョブが実行されているか否かへのユーザの注目度が最も低い。このため、ユーザが「機嫌が良い」場合、本実施形態のイライラ度は、最も低い値が割り当てられる。
 例えば、ユーザ状態監視装置105がカメラを有する場合、優先度更新プログラム110は、ユーザ状態情報を示す画像に表示されるユーザの表情を解析する。そして、優先度更新プログラム110は、ユーザの眉間にしわが寄っている度合いを算出し、しわが寄っている度合いが高い場合、ユーザが「機嫌が悪い」と判定し、イライラ度に3を割り当ててもよい。また、しわが寄っている度合いが低い場合、ユーザが「普通」又は「機嫌が良い」と判定し、イライラ度に1又は2を割り当ててもよい。
 また、ユーザ状態監視装置105がカメラを有する場合、優先度更新プログラム110は、ユーザの顔の口角が上がっている度合いを算出する。そして、算出された度合いが口角が上がっていることを示す場合、優先度更新プログラム110は、ユーザが「機嫌が良い」と判定し、イライラ度に3を割り当ててもよい。また、算出された度合いが口角が下がっていることを示す場合、優先度更新プログラム110は、ユーザが「機嫌が悪い」と判定し、イライラ度に1を割り当ててもよい。また、口角が唇の先端と平行である場合、ユーザが「普通」であると判定し、イライラ度に2を割り当ててもよい。
 画像によるユーザの表情を認識する技術には、デジタルカメラ等が有する笑顔認識技術などがある。デジタルカメラ等が有する笑顔認識技術は、一般的に、撮影された人の目、口、及び、輪郭等の配置に基づいて、撮影された人の感情を識別する。
 また、例えば、ユーザ状態監視装置105が温度を測定する人感知センサを有する場合、優先度更新プログラム110は、ユーザ状態情報から、一定期間におけるユーザの体温を特定する。そして、一定期間におけるユーザの体温が上昇している場合、ユーザが「機嫌が悪い」と判定し、イライラ度に3を割り当てもよい。また、一定期間におけるユーザの体温に変化がない場合、ユーザが「普通」又は「機嫌が良い」と判定し、イライラ度に1又は2を割り当ててもよい。
 また、例えば、ユーザ状態監視装置105が体動を測定する人感知センサを有する場合、優先度更新プログラム110は、ユーザ状態情報から、一定期間におけるユーザの体動の振動数を特定する。そして、一定期間においてユーザの体動の振動数が上昇している場合、又は、所定の閾値よりも高い値である場合、ユーザが、貧乏ゆすりなどの落ち着きのない行動をしている可能性が高いため、ユーザが「機嫌が悪い」と判定し、イライラ度に3を割り当ててもよい。また、一定期間においてユーザの体動の振動数が低下している場合、又は、所定の閾値よりも低い場合、ユーザが「普通」又は「機嫌が良い」と判定し、イライラ度に1又は2を割り当ててもよい。
 優先度更新プログラム110は、前述の複数の方法によって判定された状態によって、イライラ度を数値によって定める。ここで、あらかじめ定められた重み係数によってイライラ度を乗じ、乗じられた結果を加算することによって、総合的なイライラ度を算出してもよい。
 ステップ802の後、優先度更新プログラム110は、ステップ801において判定された在席状況と、進捗要求回数テーブル114が示す進捗要求回数と、ステップ802において算出されたイライラ度とに基づいて、各ジョブへのユーザの注目度を算出する(ステップ803)。ユーザXのジョブA(識別子が「A」であるジョブ、以下同じ)への注目度は、式(1)によって算出される。
  ジョブAへのユーザXの注目度=ユーザXのジョブAに対する進捗要求回数×ユーザXの在席状況×ユーザXのイライラ度       (1)
 さらに、ジョブAへの注目度は、以下のように計算する。
  ジョブAへの注目度=ジョブAへの全ユーザの注目度の合計 (2)
 式(2)によれば、本実施形態の注目度は、進捗要求回数と、在席状況と、イライラ度との各要素に従って算出される。管理者等は、進捗要求回数と、在席状況と、イライラ度との重要性に従って、進捗要求回数と、在席状況と、イライラ度との各要素の重み付けをしてもよい。
 第1の実施形態の在席状況は、前述の通り0又は1であるため、ユーザが在席していない場合の注目度は、常に0である。また、イライラ度を算出するために必要な情報を取得する、顔認識機能などの機能をサーバ107が有さない場合、優先度更新プログラム110がイライラ度を算出することができないため、イライラ度には常に1が定められてもよい。また、ユーザが在席していない場合にも、ある程度ジョブを実行させたい場合、ユーザが在席していない場合の注目度に、0.1などの小さい値が定められてもよい。
 また、多くのユーザが進捗状況を注目しているジョブの優先度を上げるため、優先度更新プログラム110は、ステップ803において、進捗状況を要求したユーザの数によって、進捗要求回数の値を変化させてもよい。そして、変化させた進捗要求回数の値に従って、注目度を算出してもよい。
 例えば、ジョブCが、ユーザX、ユーザY(識別子が「Y」であるユーザ、以下同じ)及びユーザZによって進捗状況を要求された場合、優先度更新プログラム110は、進捗要求回数テーブル114のジョブCを含む行に格納される値に3を各々乗じてもよい。そして、優先度更新プログラム110は、進捗要求回数に3を乗じた結果によって、前述の式(1)及び式(2)を算出してもよい。
 ステップ803の後、優先度更新プログラム110は、ステップ803において算出された注目度に基づいて、ジョブの優先度を更新する(ステップ804)。例えば、優先度更新プログラム110は、下限値と上限値との間の複数の段階に優先度を定める場合、各ジョブの注目度の値に従って、優先度の下限値から上限値までの間で、優先度を比例配分してもよい。
 具体的には、優先度が1から12までであり、ジョブAの注目度が16であり、ジョブBの注目度が8であり、ジョブCの注目度が24である場合、優先度更新プログラム110は、ジョブAの優先度を4、ジョブBの優先度を2、ジョブCの優先度を6とする。なお、本実施形態の優先度は、値が高い程優先して実行されることを示す。
 また、優先度更新プログラム110は、注目度がある閾値以下なら優先度を下げ、閾値以上なら優先度を上げてもよい。また、例えば、サーバ107が有するOSがLinuxである場合、実行中のプロセスの優先度は、reniceコマンドによって-(マイナス)19~20の40段階によって割り当てられてもよい。
 優先度更新プログラム110は、ステップ804において、注目度に従って優先度を定め、定められた優先度を、実行中ジョブテーブル116の優先度1164に格納する。
 ステップ804の後、優先度更新プログラム110は、進捗要求回数テーブル114に格納された進捗要求回数をすべてゼロ(0)回に更新する(ステップ805)。これは、最新の進捗要求の状況によって、ユーザの注目度を算出するためである。
 ステップ805の後、優先度更新プログラム110は、十分な進捗要求の状況を取得するための一定時間待機した後(ステップ806)、ステップ801に戻る。
 前述の図9に示す処理において、優先度更新プログラム110は、ユーザの在席状況、ユーザのイライラ度、及び、進捗要求回数のすべてを用いて、注目度を算出した。しかし、本実施形態の優先度更新プログラム110は、ユーザの在席状況、ユーザのイライラ度、及び、進捗要求回数のうち、一つ又は二つの要素を用いて、注目度を算出してもよい。例えば、優先度更新プログラム110は、ユーザの在席状況、及び、進捗要求回数を用いて、注目度を算出してもよい。
 図10は、本発明の第1の実施形態の定められた優先度によってジョブを実行する処理を示すフローチャートである。
 図10に示す処理は、図9に示す処理が実行された後に実行される。図10に示す処理は、各ジョブの開始前、又は各ジョブの実行中に実行される。
 ジョブ処理プログラム111は、サーバ107のメモリ202に保持された実行ジョブキューを参照し、実行ジョブキューの先頭からジョブを取得する(ステップ1001)。ステップ1001の後、実行中ジョブテーブル116の優先度1164を参照し、優先度1164に格納される値に比例した時間、各ジョブにプロセッサ201を割り当て実行する(ステップ1002)。
 ステップ1002の後、ジョブ処理プログラム111は、ステップ1002によって割り当てられた時間実行されたジョブのうち、実行途中であるジョブを、実行ジョブキューの末尾に追加する(ステップ1003)。そして、ジョブ処理プログラム111は、ステップ1001に戻り、新たなジョブを実行ジョブキューの先頭から取得する。
 なお、ステップ1003において、ジョブ処理プログラム111は、ジョブの進捗状況を取得し、実行中ジョブテーブル116の進捗状況1163に格納する。
 第1の実施形態によれば、複数のユーザが利用するクライアント-サーバシステムにおいて、複数のユーザのジョブへの注目度に従い、ジョブの優先度を細かく制御することができる。これによって、各ユーザの満足度を向上しつつ、コンピュータリソースを有効に活用できる。
 (第2の実施形態)
 図11は、本発明の第2の実施形態の計算機システムの構成を示すブロック図である。
 第2の実施形態の計算機システムが、第1の実施形態の計算機システムと異なる点は、ユーザ状態監視装置105は、サーバ107に直接接続される点と、ユーザ状態監視装置105は、ユーザ状態通知プログラム117を有する点である。このため、ユーザ端末101は、ユーザ状態通知プログラム102を有する必要はない。第1の実施形態の計算機システムと、第2の実施形態の計算機システムとにおいて共通するプログラム及びテーブルは、同じ機能及び同じ値を有する。
 第2の実施形態において、ユーザ端末101を用いるユーザを示す識別子は、あらかじめユーザ状態監視装置105に保持される。ユーザ状態通知プログラム117は、ユーザ状態監視装置105が有するカメラ等によってユーザ状態情報を取得し、あらかじめ与えられたユーザの識別子と、ユーザ状態情報とを、サーバ107に定期的に送信する。
 そして、サーバ107のユーザ状態受付プログラム112は、ユーザ状態監視装置105から送信されたユーザ状態情報を受信し、図3に示す処理を実行する。
 第2の実施形態によれば、ユーザ端末101がユーザ状態通知プログラム102を有さないため、ユーザ端末101の負荷を低減できる。
 以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。
 本実施形態のシステムは、複数のクライアントを有するクライアントーサーバシステムであり、ユーザがジョブの実行をクライアントを介してサーバに要求するシステムに適用できる。

Claims (14)

  1.  少なくとも一人のユーザが用いる少なくとも一つの端末と、前記各端末に接続されるサーバと、前記各ユーザの状態を測定する監視装置とを備える計算機システムであって、
     前記監視装置は、
     前記ユーザが前記端末の前に在席しているか否かを示す第1の情報を測定し、
     前記第1の情報を含む測定結果を、前記サーバに送信し、
     前記端末は、
     前記ユーザによって指示されたジョブの開始を、前記サーバに要求し、
     前記ユーザによって問い合わせられた前記ジョブの進捗状況を、前記サーバに要求し、
     前記サーバは、
     前記開始が要求されたジョブと、前記ジョブの開始を要求したユーザと、前記ジョブの進捗状況の要求の回数と、前記ジョブの進捗を要求したユーザと、を含む第2の情報を保持し、
     前記送信された測定結果と、前記第2の情報とに基づいて、前記ジョブに対する前記ユーザの注目度を算出し、
     前記算出された注目度に従って、前記開始が要求されたジョブの優先度を決定することを示す計算機システム。
  2.  請求項1に記載された計算機システムであって、
     前記監視装置は、前記測定されたユーザの状態を示す第3の情報を前記測定結果に含め、
     前記サーバは、
     前記送信された測定結果に含まれる第3の情報に従って、前記ユーザの苛立ちの程度を判定し、
     前記判定の結果と、前記第1の情報と、前記第2の情報とに基づいて、前記ユーザの注目度を算出することを特徴とする計算機システム。
  3.  請求項2に記載された計算機システムであって、
     前記監視装置は、前記ユーザの状態を示す画像を取得し、
     前記第3の情報は、前記取得されたユーザの状態を示す画像であることを特徴とする計算機システム。
  4.  請求項2に記載された計算機システムであって、
     前記監視装置は、前記ユーザの体温又は体動を測定し、
     前記第3の情報は、前記測定されたユーザの体温又は体動を示すことを特徴とする計算機システム。
  5.  請求項1に記載された計算機システムであって、
     前記サーバは、
     前記優先度が決定された場合、前記第2の情報に含まれる前記ジョブの進捗状況の要求の回数を、0回に更新し、
     前記端末によって前記ジョブの進捗状況が要求された場合、前記第2の情報に含まれる前記ジョブの進捗状況の要求の回数に、所定の値を加算することを特徴とする計算機システム。
  6.  請求項5に記載された計算機システムであって、
     前記サーバは、
     第1のユーザによって指示された第1のジョブの開始を要求され、かつ、第2のユーザによって問い合わせられた前記第1のジョブの進捗状況を要求された場合、前記第2の情報に含まれる前記第1のジョブの進捗状況の要求の回数に、第1の値を加算し、
     前記第1のユーザによって指示された前記第1のジョブの開始を要求され、かつ、前記第1のユーザによって問い合わせられた前記第1のジョブの進捗状況を要求された場合、前記第2の情報に含まれる前記第1のジョブの進捗状況の要求の回数に、前記第1の値より高い値を加算することを特徴とする計算機システム。
  7.  請求項5に記載された計算機システムであって、
     前記サーバは、
     一人の前記ユーザによって第2のジョブの進捗状況が問い合わせられた場合、前記第2の情報に含まれる前記第2のジョブの進捗状況の要求の回数に、第2の値を加算し、
     複数の前記ユーザによって第2のジョブの進捗状況が問い合わせられた場合、前記第2の情報に含まれる前記第2のジョブの進捗状況の要求の回数に、前記第2の値より高い値を加算することを特徴とする計算機システム。
  8.  少なくとも一人のユーザが用いる少なくとも一つの端末と、前記各端末に接続されるサーバと、前記各ユーザの状態を測定する監視装置とを備える計算機システムによる情報処理方法であって、
     前記方法は、
     前記監視装置が、前記ユーザが前記端末の前に在席しているか否かを示す第1の情報を測定し、
     前記監視装置が、前記第1の情報を含む測定結果を、前記サーバに送信し、
     前記端末が、前記ユーザによって指示されたジョブの開始を、前記サーバに要求し、
     前記端末が、前記ユーザによって問い合わせられた前記ジョブの進捗状況を、前記サーバに要求し、
     前記サーバが、前記開始が要求されたジョブと、前記ジョブの開始を要求したユーザと、前記ジョブの進捗状況の要求の回数と、前記ジョブの進捗を要求したユーザと、を含む第2の情報を保持し、
     前記サーバが、前記送信された測定結果と、前記第2の情報とに基づいて、前記ジョブに対する前記ユーザの注目度を算出し、
     前記サーバが、前記算出された注目度に従って、前記開始が要求されたジョブの優先度を決定することを示す情報処理方法。
  9.  請求項8に記載された情報処理方法であって、
     前記監視装置が、前記測定されたユーザの状態を示す第3の情報を前記測定結果に含め、
     前記サーバが、前記送信された測定結果に含まれる第3の情報に従って、前記ユーザの苛立ちの程度を判定し、
     前記サーバが、前記判定の結果と、前記第1の情報と、前記第2の情報とに基づいて、前記ユーザの注目度を算出することを特徴とする情報処理方法。
  10.  請求項9に記載された情報処理方法であって、
     前記監視装置が、前記ユーザの状態を示す画像を取得し、
     前記第3の情報は、前記取得されたユーザの状態を示す画像であることを特徴とする情報処理方法。
  11.  請求項9に記載された情報処理方法であって、
     前記監視装置が、前記ユーザの体温又は体動を測定し、
     前記第3の情報は、前記測定されたユーザの体温又は体動を示すことを特徴とする情報処理方法。
  12.  請求項8に記載された情報処理方法であって、
     前記サーバが、前記優先度が決定された場合、前記第2の情報に含まれる前記ジョブの進捗状況の要求の回数を、0回に更新し、
     前記サーバが、前記端末によって前記ジョブの進捗状況が要求された場合、前記第2の情報に含まれる前記ジョブの進捗状況の要求の回数に、所定の値を加算することを特徴とする情報処理方法。
  13.  請求項12に記載された情報処理方法であって、
     第1のユーザによって指示された第1のジョブの開始を要求され、かつ、第2のユーザによって問い合わせられた前記第1のジョブの進捗状況を要求された場合、前記サーバが、前記第2の情報に含まれる前記第1のジョブの進捗状況の要求の回数に、第1の値を加算し、
     前記第1のユーザによって指示された前記第1のジョブの開始を要求され、かつ、前記第1のユーザによって問い合わせられた前記第1のジョブの進捗状況を要求された場合、前記サーバが、前記第2の情報に含まれる前記第1のジョブの進捗状況の要求の回数に、前記第1の値より高い値を加算することを特徴とする情報処理方法。
  14.  請求項12に記載された情報処理方法であって、
     一人の前記ユーザによって第2のジョブの進捗状況が問い合わせられた場合、前記サーバが、前記第2の情報に含まれる前記第2のジョブの進捗状況の要求の回数に、第2の値を加算し、
     複数の前記ユーザによって第2のジョブの進捗状況が問い合わせられた場合、前記サーバが、前記第2の情報に含まれる前記第2のジョブの進捗状況の要求の回数に、前記第2の値より高い値を加算することを特徴とする情報処理方法。
PCT/JP2011/060591 2011-05-06 2011-05-06 計算機システム、及び、情報処理方法 Ceased WO2012153376A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US14/115,769 US20140082066A1 (en) 2011-05-06 2011-05-06 Computer system and information processing method
JP2013513834A JP5688452B2 (ja) 2011-05-06 2011-05-06 計算機システム、及び、情報処理方法
PCT/JP2011/060591 WO2012153376A1 (ja) 2011-05-06 2011-05-06 計算機システム、及び、情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/060591 WO2012153376A1 (ja) 2011-05-06 2011-05-06 計算機システム、及び、情報処理方法

Publications (1)

Publication Number Publication Date
WO2012153376A1 true WO2012153376A1 (ja) 2012-11-15

Family

ID=47138879

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/060591 Ceased WO2012153376A1 (ja) 2011-05-06 2011-05-06 計算機システム、及び、情報処理方法

Country Status (3)

Country Link
US (1) US20140082066A1 (ja)
JP (1) JP5688452B2 (ja)
WO (1) WO2012153376A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018507496A (ja) * 2015-01-08 2018-03-15 北京京東尚科信息技術有限公司Beijing Jingdong Shangke Information Technology Co., Ltd. 高同時実行性データの記憶方法および装置
JP2020154530A (ja) * 2019-03-19 2020-09-24 Necソリューションイノベータ株式会社 リソース管理装置、ユーザ装置側リソース管理装置、リソース管理方法、ユーザ装置側リソース管理方法、プログラム及び記録媒体
JP2025058988A (ja) * 2023-09-27 2025-04-09 ソフトバンクグループ株式会社 システム
JP2025058975A (ja) * 2023-09-27 2025-04-09 ソフトバンクグループ株式会社 システム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5449473B2 (ja) 2012-07-27 2014-03-19 グリー株式会社 ゲームシステム、装置及びプログラム
US10977570B2 (en) * 2017-06-19 2021-04-13 Rigetti & Co, Inc. Distributed quantum computing system
US11010145B1 (en) 2018-02-21 2021-05-18 Rigetti & Co, Inc. Retargetable compilation for quantum computing systems

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10269091A (ja) * 1997-03-24 1998-10-09 Canon Inc 情報処理装置及びその方法
JP2003321123A (ja) * 2002-05-08 2003-11-11 Nippon Telegr & Teleph Corp <Ntt> 通信販売の販売フォロー装置、販売フォロー方法、プログラムおよび記録媒体
JP2008058039A (ja) * 2006-08-29 2008-03-13 Toyota Motor Corp 車載不満情報収集装置、情報収集センタ及び不満情報収集システム
JP2010287046A (ja) * 2009-06-11 2010-12-24 Nec Corp リソース配分システム、リソース配分方法及びリソース配分プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4261545B2 (ja) * 2003-01-27 2009-04-30 株式会社アイ・オー・データ機器 状態管理システム
US7971156B2 (en) * 2007-01-12 2011-06-28 International Business Machines Corporation Controlling resource access based on user gesturing in a 3D captured image stream of the user
US8448177B1 (en) * 2008-04-10 2013-05-21 United Services Automobile Association (Usaa) Task prioritization based on users' interest
TWI486762B (zh) * 2009-04-17 2015-06-01 Mstar Semiconductor Inc 一種可監控本身系統資源之方法與電子裝置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10269091A (ja) * 1997-03-24 1998-10-09 Canon Inc 情報処理装置及びその方法
JP2003321123A (ja) * 2002-05-08 2003-11-11 Nippon Telegr & Teleph Corp <Ntt> 通信販売の販売フォロー装置、販売フォロー方法、プログラムおよび記録媒体
JP2008058039A (ja) * 2006-08-29 2008-03-13 Toyota Motor Corp 車載不満情報収集装置、情報収集センタ及び不満情報収集システム
JP2010287046A (ja) * 2009-06-11 2010-12-24 Nec Corp リソース配分システム、リソース配分方法及びリソース配分プログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018507496A (ja) * 2015-01-08 2018-03-15 北京京東尚科信息技術有限公司Beijing Jingdong Shangke Information Technology Co., Ltd. 高同時実行性データの記憶方法および装置
US11327945B2 (en) 2015-01-08 2022-05-10 Beijing Jingdong Shangke Information Technology Co., Ltd. Method and device for storing high-concurrency data
JP2020154530A (ja) * 2019-03-19 2020-09-24 Necソリューションイノベータ株式会社 リソース管理装置、ユーザ装置側リソース管理装置、リソース管理方法、ユーザ装置側リソース管理方法、プログラム及び記録媒体
JP2025058988A (ja) * 2023-09-27 2025-04-09 ソフトバンクグループ株式会社 システム
JP2025058975A (ja) * 2023-09-27 2025-04-09 ソフトバンクグループ株式会社 システム

Also Published As

Publication number Publication date
JP5688452B2 (ja) 2015-03-25
US20140082066A1 (en) 2014-03-20
JPWO2012153376A1 (ja) 2014-07-28

Similar Documents

Publication Publication Date Title
JP5688452B2 (ja) 計算機システム、及び、情報処理方法
US11645121B2 (en) Systems and methods for distributed resource management
US9946577B1 (en) Systems and methods for distributed resource management
US10754706B1 (en) Task scheduling for multiprocessor systems
US10423451B2 (en) Opportunistically scheduling and adjusting time slices
US9081621B2 (en) Efficient input/output-aware multi-processor virtual machine scheduling
CN105159782B (zh) 基于云主机为订单分配资源的方法和装置
CN103744734B (zh) 一种任务作业处理方法、装置及系统
US20170235605A1 (en) System and method for implementing cloud based asynchronous processors
US20120072914A1 (en) Cloud computing system and method for controlling same
CN105955809B (zh) 线程调度方法和系统
CN106020927A (zh) 一种云计算系统中任务调度与资源配置的通用方法
JP2017162059A (ja) 情報処理装置、制御方法、プログラム
US20140032728A1 (en) Location-based task activation
CN109189581B (zh) 一种作业调度方法和装置
JP2006285316A (ja) サーバ性能計測方法及びサーバ性能計測システム並びにこれらに用いるコンピュータプログラム
JP4016840B2 (ja) データバックアップシステム及び方法
JP5987987B2 (ja) リソース管理システム、リソース管理方法、およびプログラム
US10866830B2 (en) Virtual computer system performance prediction device, performance prediction method, and program storage medium
JP4367167B2 (ja) リアルタイムシステム、QoS適応制御装置及びそれらに用いるQoS適応制御方法並びにそのプログラム
US10893166B2 (en) Management system, method, and program storage medium
CN106201847B (zh) 考虑云平台主机性能衰减的任务分配方法、装置和系统
JP2018041400A (ja) ジョブ処理システム、ジョブ処理装置、ジョブ処理方法、及びプログラム
TW201510869A (zh) 虛擬終端負載控制系統,及虛擬終端負載控制方法
JP2020156062A (ja) 情報処理装置、方法、及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11864909

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013513834

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14115769

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11864909

Country of ref document: EP

Kind code of ref document: A1