BIOS Multitasking CPU Utilization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional BIOS systems are single-tasking, leading to underutilization of CPU processing power during wait periods while interfacing with hardware components, as they cannot efficiently manage and prioritize multiple initialization tasks.

Innovation Solution

Implementing preemptive and cooperative multitasking within the BIOS to increase CPU utilization by allowing higher-priority tasks to execute with minimal interruptions and enabling tasks to request waiting periods, thereby optimizing the execution of multiple initialization tasks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If the BIOS uses single-tasking execution mode, then the system maintains simple task management structure, but the CPU processing power is underutilized during wait periods

Engineering Contradiction:
Improvetask management structureVSAvoidCPU utilization
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the BIOS initialization process into multiple independent tasks with different priorities. Each task can be executed independently, allowing the system to switch between tasks during wait periods. This segmentation enables multitasking while maintaining manageable complexity through structured task management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic task scheduling where the BIOS can switch between single-tasking and multitasking modes based on system state. During hardware initialization phases requiring sequential operations, single-tasking maintains simplicity. During wait periods, the system dynamically transitions to multitasking to utilize CPU resources, thus adapting the task management complexity to actual needs.

Inventive Principle:
Principle #15Dynamics

2Productivity

If the BIOS implements multitasking to increase CPU utilization, then processing efficiency improves, but task scheduling complexity increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidtask scheduling complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent changes the parameter of task execution from sequential to parallel by implementing multitasking. It introduces priority levels as a new parameter to manage task scheduling, allowing the BIOS to execute multiple initialization tasks concurrently while maintaining control through priority-based scheduling. This resolves the complexity issue by providing a systematic approach to task management.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces a task scheduler as an intermediary component that manages multiple initialization tasks. This scheduler acts as a mediator between the CPU and various hardware initialization routines, allocating CPU time based on task priorities and ensuring efficient resource utilization without requiring complex direct management of all tasks.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If the BIOS waits for hardware component response, then proper hardware initialization is ensured, but the CPU remains idle during the wait period

Engineering Contradiction:
Improvehardware initialization correctnessVSAvoidCPU idle time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent ensures continuity of useful action by implementing preemptive multitasking that allows other initialization tasks to execute during wait periods. When one task waits for hardware response, the CPU immediately switches to another ready task, eliminating idle time while maintaining the correctness of hardware initialization through proper task resumption after the wait condition is satisfied.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent applies preliminary action by preparing and queuing multiple initialization tasks before execution. Tasks are pre-configured with their required wait periods and priority levels, allowing the system to proactively switch to alternative tasks during wait periods rather than remaining idle, thus optimizing CPU utilization while ensuring proper hardware initialization sequencing.

Inventive Principle:
Principle #10Preliminary action

4Ease of operation

If the BIOS executes tasks in sequential order, then task execution is simple to manage, but higher-priority tasks experience delays

Engineering Contradiction:
Improvetask execution managementVSAvoidtask execution speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The patent changes the execution parameter from strict sequential order to priority-based scheduling. Each initialization task is assigned a priority level, and the BIOS scheduler executes tasks according to their priority rather than their definition order. This parameter change allows higher-priority tasks to execute faster while maintaining manageable complexity through systematic priority assignment and scheduling.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7984446B1Method and system for multitasking BIOS initialization tasks
Publication Date: 2011.07.19 NVIDIA CORP
  • US7984446B1 patent drawing
  • US7984446B1 patent drawing
  • US7984446B1 patent drawing

AI summary

A method and system for multitasking BIOS initialization tasks are disclosed. The BIOS utilizes preemptive multitasking and cooperative multitasking. The preemptive multitasking and the cooperative multitasking increase utilization of the processing power of a processor and ensure higher priority valued tasks are executed with less interruption than lower priority valued tasks. During execution, each task is able to request a particular waiting period.