← Back to Patent Explorer
US5774718A Expired / Lapsed US ⏱️ 0.0 years remaining

Process scheduling system that allocates CPU time with priority to interactive type processes

Assignee: Fujitsu Ltd
•
Filing: 1995-08-24
•
Granted: 1998-06-30
•
Expires: 2015-08-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A process action status monitoring section monitors the cumulative CPU time and the idle time for a plurality of processes being executed on a time-sharing basis; those results are recorded in a process action status table. A process type determination section, based on the said cumulative CPU times, classifies those processes for which the cumulative CPU time is equal to or less than a certain threshold value as interactive type process, and classifies processes for which the cumulative CPU time exceeds the threshold value as non-interactive type processes. A non-interactive type process priority control section controls the priorities of processes judged to be non-interactive type processes by the process type judgement section. An interactive type process priority control section controls the priority of processes judged to be interactive type processes. A process selection section selects the process having the highest priority from among the interactive type processes or the non-interactive type processes. A CPU allocation section allocates the CPU to the process selected by the process selection section.

Inventors

  • 👤 Naoto Aoshima
  • 👤 Haruo Kimura
  • 👤 Katsuhito Minai

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 17:01
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/48; G06F9/4806; G06F9/4843; G06F9/4881; G06F11/00; G06F11/30; G06F11/34; G06F11/3409; G06F11/3419; G06F11/3423

Claims Analysis

Total Claims: 21
Claim 1
Independent Claim 195 words
A computer system for processing a plurality of processes on a time-sharing basis, comprising: means for monitoring an action status of each of said plurality of processes; means for determining a process type by classifying each of said plurality of processes as either interactive type or non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; means for storing the action status of each process in which the results of the monitoring of the action status of each process by said means for monitoring the action status of each process are stored; and wherein, when said means for monitoring the action status of each process starts operation at a time of process switching, the CPU time used by the process that was being executed before said switching since the last process switching is computed, and a result of said computation is added to a value stored in a cumulative CPU time storage location, corresponding to said process within said means for storing the action status of each process, and the result of the addition is stored in said location as a new cumulative CPU time value.
Claim 2
Dependent Claim 195 words
A computer system for processing a plurality of processes on a time-sharing basis, comprising: means for monitoring an action status of each of said plurality of processes; means for determining a process type by classifying each of said plurality of processes as either interactive type or non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; means for storing the action status of each process in which the results of the monitoring of the action status of each process by said means for monitoring the action status of each process are stored; and wherein, when said means for monitoring the action status of each process starts operation at a time of process switching, the CPU time used by the process that was being executed before said switching since the last process switching is computed, and a result of said computation is added to a value stored in a cumulative CPU time storage location, corresponding to said process within said means for storing the action status of each process, and the result of the addition is stored in said location as a new cumulative CPU time value.
Claim 3
Dependent Claim 157 words
A computer system for processing a plurality of processes on a time-sharing basis, comprising: means for monitoring an action status of each of said plurality of processes; means for determining a process type by classifying each of said plurality of processes as one of an interactive type and a non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; means for storing the action status of each process in which the results of the monitoring of the action status of each process by said means for monitoring the action status of each process are stored; and wherein, when the process to which the CPU has been allocated starts a period of idle time, said means for monitoring the action status of each process stores said sleep start time in the idling start time storage location corresponding to said process within said means for storing the process action status.
Claim 4
Dependent Claim 157 words
A computer system for processing a plurality of processes on a time-sharing basis, comprising: means for monitoring an action status of each of said plurality of processes; means for determining a process type by classifying each of said plurality of processes as one of an interactive type and a non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; means for storing the action status of each process in which the results of the monitoring of the action status of each process by said means for monitoring the action status of each process are stored; and wherein, when the process to which the CPU has been allocated starts a period of idle time, said means for monitoring the action status of each process stores said sleep start time in the idling start time storage location corresponding to said process within said means for storing the process action status.
Claim 5
Dependent Claim 99 words
A process scheduling system as described in claim 2 wherein, when the period of idle time of a process ends, said means for monitoring the process action status starts up, finds the difference between said idling end time and the idling start time stored in the idling start time storage location corresponding to said process within said means for monitoring the process action status, and clears a value of the cumulative CPU time storage location corresponding to said process in said means for monitoring the action status of each process to zero when said difference exceeds a predetermined value.
Claim 6
Dependent Claim 165 words
A computer system for processing a plurality of processes on a time-sharing basis, comprising: means for monitoring an action status of each of said plurality of processes; means for determining a process type by classifying each of said plurality of processes as one of an interactive type and a non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; means for storing the action status of each process in which the results of the monitoring of the action status of each process by said means for monitoring the action status of each process are stored: and wherein, said means for determining the process type compares the cumulative CPU time used by each process stored in said means for storing the process action status and a predetermined threshold value and, classifies a process as the interactive type when the corresponding CPU time is smaller than the threshold value, and as the non-interactive type in the opposite case.
Claim 7
Dependent Claim 165 words
A computer system for processing a plurality of processes on a time-sharing basis, comprising: means for monitoring an action status of each of said plurality of processes; means for determining a process type by classifying each of said plurality of processes as one of an interactive type and a non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; means for storing the action status of each process in which the results of the monitoring of the action status of each process by said means for monitoring the action status of each process are stored: and wherein, said means for determining the process type compares the cumulative CPU time used by each process stored in said means for storing the process action status and a predetermined threshold value and, classifies a process as the interactive type when the corresponding CPU time is smaller than the threshold value, and as the non-interactive type in the opposite case.
Claim 8
Dependent Claim 109 words
A computer system for processing a plurality of processes on a time-sharing basis, comprising: means for monitoring an action status of each of said plurality of processes; means for determining a process type by classifying each of said plurality of processes as one of an interactive type and a non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; means for controlling the priority of non-interactive type processes, with which the CPU is allocated to said non-interactive type processes; and means for controlling the priority of interactive type processes, with which the CPU is allocated to said interactive type processes.
Claim 9
Dependent Claim 109 words
A computer system for processing a plurality of processes on a time-sharing basis, comprising: means for monitoring an action status of each of said plurality of processes; means for determining a process type by classifying each of said plurality of processes as one of an interactive type and a non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; means for controlling the priority of non-interactive type processes, with which the CPU is allocated to said non-interactive type processes; and means for controlling the priority of interactive type processes, with which the CPU is allocated to said interactive type processes.
Claim 10
Dependent Claim 82 words
A process scheduling system as described in claim 7, further comprising: an interactive type process queue in which the interactive type processes, the priorities of which are controlled by said means for controlling the priority of interactive type processes, are queued in order of said priorities, and a non-interactive type process queue in which the non-interactive type processes the priorities of which are controlled by said means for controlling the priority of non-interactive type processes, are queued in order of said priorities.
Claim 11
Dependent Claim 77 words
A process scheduling system as described in claim 6 further comprising: means for selecting the process having the highest priority from among said processes that are queued in said interactive type process execution queue at the time of queuing, and for selecting the process having the highest priority from among said processes that are queued in said non-interactive type process execution queue at the time of queuing; and means for allocating the CPU to said selected process.
Claim 12
Dependent Claim 78 words
A process scheduling system as described in claim 5 further comprising an execution queue containing both the interactive type processes of which the priorities are controlled by said means for controlling the priority of interactive type processes, and the non-interactive type processes of which the priorities are controlled by said means for controlling the priority of non-interactive type processes, and in which said interactive type processes are queued within a higher priority range than said non-interactive type processes.
Claim 13
Dependent Claim 46 words
A process scheduling system as described in claim 8 further comprising: means for selecting a process having the highest priority from among the interactive type processes and the non-interactive type processes queued in said execution queue; and means for allocating the CPU to said selected process.
Claim 14
Dependent Claim 218 words
A computer system for processing a plurality of processes on a time-sharing basis comprising: means for monitoring an action status of each of said plurality of processes; means for determining a process type by classifying each of said plurality of processes as either interactive type or non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; means for controlling the priority of processes independently of the determination of process type by said means for determining the process type; means of process queuing for storing interactive type processes in the interactive type process execution queue and storing non-interactive type processes in the non-interactive type process execution queue, based on the results of priority control by said means of process priority control and the determination of the process type by said means for determining the process type; means for selecting the process of highest priority from among the processes stored in said interactive type process execution queue when such interactive type processes are stored in the queue, and selects the process of highest priority from among the processes stored in said non-interactive type process execution queue when there are no interactive type processes queued in the interactive type process execution queue; and means for allocating the CPU to said selected process.
Claim 15
Dependent Claim 218 words
A computer system for processing a plurality of processes on a time-sharing basis comprising: means for monitoring an action status of each of said plurality of processes; means for determining a process type by classifying each of said plurality of processes as either interactive type or non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; means for controlling the priority of processes independently of the determination of process type by said means for determining the process type; means of process queuing for storing interactive type processes in the interactive type process execution queue and storing non-interactive type processes in the non-interactive type process execution queue, based on the results of priority control by said means of process priority control and the determination of the process type by said means for determining the process type; means for selecting the process of highest priority from among the processes stored in said interactive type process execution queue when such interactive type processes are stored in the queue, and selects the process of highest priority from among the processes stored in said non-interactive type process execution queue when there are no interactive type processes queued in the interactive type process execution queue; and means for allocating the CPU to said selected process.
Claim 16
Dependent Claim 290 words
A process scheduling method for use in a computer system that processes a plurality of processes on a time-sharing basis, comprising the steps of: computing, at the time of process switching, the CPU time used by the process that was being executed before said switch, since the last process switch; adding the result of said computation to the value read out from the cumulative CPU time storage location corresponding to said process within a means of storage of the process action status, and storing the result of the addition in said location in place of an old value; when the process starts a period of idle time, storing said idling start time in the idling start time storage location corresponding to said process in said means for storing process action status; when a period of idle time of a process ends, finding the difference between said idling end time and the idling start time stored in the idling start time storage location corresponding to said process in said means for storing the process action status; when said difference exceeds a certain threshold value, clearing the value in the cumulative CPU time storage location corresponding to said process within said means for storing process action status to zero; comparing the value stored in the cumulative CPU time storage location within said means for storing process action status with a predetermined threshold value; classifying the process to which said cumulative CPU time storage location corresponds as an interactive type process when the value stored in the cumulative CPU time storage location is similar, as a non-interactive type process when the opposite is true; and preferentially allocation of the CPU of said computer system to a process classified as an interactive type process.
Claim 17
Dependent Claim 290 words
A process scheduling method for use in a computer system that processes a plurality of processes on a time-sharing basis, comprising the steps of: computing, at the time of process switching, the CPU time used by the process that was being executed before said switch, since the last process switch; adding the result of said computation to the value read out from the cumulative CPU time storage location corresponding to said process within a means of storage of the process action status, and storing the result of the addition in said location in place of an old value; when the process starts a period of idle time, storing said idling start time in the idling start time storage location corresponding to said process in said means for storing process action status; when a period of idle time of a process ends, finding the difference between said idling end time and the idling start time stored in the idling start time storage location corresponding to said process in said means for storing the process action status; when said difference exceeds a certain threshold value, clearing the value in the cumulative CPU time storage location corresponding to said process within said means for storing process action status to zero; comparing the value stored in the cumulative CPU time storage location within said means for storing process action status with a predetermined threshold value; classifying the process to which said cumulative CPU time storage location corresponds as an interactive type process when the value stored in the cumulative CPU time storage location is similar, as a non-interactive type process when the opposite is true; and preferentially allocation of the CPU of said computer system to a process classified as an interactive type process.
Claim 18
Dependent Claim 136 words
A process scheduling method as described in claim 11 wherein: said preferentially allocation of the CPU step further comprising the steps of: assigning CPU allocation priorities to said non-interactive type processes; assigning CPU allocation priorities to said interactive type processes; queuing said interactive type processes in an interactive type process execution queue in order of said priorities; queuing said non-interactive type processes in an interactive type process execution queue in order of said priorities; when processes are queued in said interactive type process execution queue, selecting the process having the highest priority from among said queued processes; when no processes are queued in said interactive type process execution queue, selecting the process having the highest priority from among the processed queued in said non-interactive type process execution queue; and allocating the CPU to said selected process.
Claim 19
Dependent Claim 115 words
A process scheduling method as described in claim 11 wherein: said preferentially allocation of the CPU step further comprising the steps of: assigning CPU allocation priorities to said non-interactive type processes; assigning CPU allocation priorities to said interactive type processes that are a higher range of priorities than those assigned to said non-interactive processes; queuing said interactive type processes in said execution queue in order of said priorities; queuing said non-interactive type processes in an execution queue in order of said priorities; when at least one process is queued in said execution queue, selecting the process having the highest priority from among the processed said queued processes; and allocating the CPU to said selected process.
Claim 20
Independent Claim 108 words
A method for processing a plurality of processes on a time-sharing basis on a computer system, comprising the steps of: monitoring an action status of each of said plurality of processes; determining a process type by classifying each of said plurality of processes as one of an interactive type and a non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; controlling the priority of said non-interactive type processes, with which the CPU is allocated to said non-interactive type processes; and controlling the priority of interactive type processes, with which the CPU is allocated to said interactive type processes.
Claim 21
Independent Claim 108 words
A method for processing a plurality of processes on a time-sharing basis on a computer system, comprising the steps of: monitoring an action status of each of said plurality of processes; determining a process type by classifying each of said plurality of processes as one of an interactive type and a non-interactive type, based on the results of monitoring by said means for monitoring the action status of each process; controlling the priority of said non-interactive type processes, with which the CPU is allocated to said non-interactive type processes; and controlling the priority of interactive type processes, with which the CPU is allocated to said interactive type processes.

References Cited (Backward Citations)

US4126895A Cited
US4495562A Cited
US5047919A Cited
US4912628A Cited
US5371689A Cited
US5210872A Cited
US5636376A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-06-29 2001-12-29 2002-06-30 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-06-29 2005-12-29 2006-06-30 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-06-29 2009-12-29 2010-06-30 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag