Hardware Task Scheduler Offloads CPU Scheduling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current operating systems face inefficiencies in CPU task scheduling, leading to high computational overhead and poor scalability across multiple CPUs, as they rely on software-based algorithms that consume CPU resources and do not effectively support task grouping, hierarchy, and distribution.

Innovation Solution

Implementing a hardware-based task scheduler that offloads CPU task scheduling from the operating system to a hardware device, using protocols like strict priority, weighted round robin, or deficit round robin, allowing the CPU to focus on other tasks while the hardware manages queuing and scheduling algorithms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If software-based scheduling algorithms are used in the operating system, then task scheduling can be performed with flexibility and adaptability, but CPU computational overhead increases and scalability across multiple CPUs deteriorates

Engineering Contradiction:
Improvescheduling flexibilityVSAvoidCPU efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent extracts the task scheduling function from the software-based operating system and relocates it to a dedicated hardware device. The hardware scheduler independently manages task queues and executes scheduling algorithms (round-robin, priority-based, weighted fair queuing) without CPU intervention, eliminating the computational overhead of software-based scheduling while maintaining scheduling flexibility through configurable algorithms and policies.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a hardware scheduler as an intermediary component between the operating system and the CPU. This hardware mediator handles all task scheduling operations, including task creation, queue management, and task selection for execution. The CPU only receives ready-to-execute tasks from the hardware scheduler, freeing the CPU from scheduling computations while preserving adaptability through programmable scheduling policies.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If software-based scheduling algorithms are used in the operating system, then scheduling can be performed with full control, but the number of CPU instructions increases and OS code size grows

Engineering Contradiction:
Improvescheduling controlVSAvoidOS code size
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent extracts complex scheduling algorithms and task management logic from the operating system software and implements them in hardware. The hardware scheduler contains dedicated logic for task queue management, scheduling algorithm execution, and task selection. This extraction dramatically reduces OS code size by removing thousands of lines of scheduling code while maintaining full scheduling control through hardware-based algorithm implementation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces the software-based mechanical system (CPU executing scheduling instructions) with a hardware-based system dedicated to scheduling operations. The hardware scheduler uses specialized circuitry and logic gates to implement scheduling algorithms, replacing the sequential software execution model with parallel hardware logic that operates independently of the CPU instruction cycle.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If software-based scheduling is implemented, then the system can handle diverse scheduling requirements, but scalability across multiple CPUs is poor

Engineering Contradiction:
Improvescheduling algorithm varietyVSAvoidsystem scalability
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The patent segments the scheduling function into independent hardware modules that can be distributed across multiple CPUs. Each CPU can have its own hardware scheduler or share a centralized hardware scheduler through standardized interfaces. This segmentation enables scalable multi-CPU systems where each processor handles its own task scheduling independently, eliminating the scalability bottlenecks of centralized software scheduling while supporting diverse scheduling algorithms through modular hardware design.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8881161B1Operating system with hardware-enabled task manager for offloading CPU task scheduling
Publication Date: 2014.11.04 AMPERE COMPUTING LLC
  • US8881161B1 patent drawing
  • US8881161B1 patent drawing
  • US8881161B1 patent drawing

AI summary

An operating system (OS) is provided including a hardware-based task scheduler, with a method for managing OS sourced tasks to be performed by a central processing unit (CPU). An OS, partially enabled as software instructions stored in a computer-readable medium and executed by the CPU, generates CPU tasks. The CPU tasks are buffered in a computer-readable task database memory. CPU task IDs associated with the buffered CPU tasks are enqueued in a CPU queue. Subsequently, the CPU dequeues a first task ID from the CPU queue, and accessing a first CPU task from the task database associated with the first CPU task ID. The CPU delivers the first CPU task to the OS. The OS generates the CPU instructions needed to perform the first CPU task, and sends the CPU instructions to the CPU for performance.