Virus Co-Processor Offloading Virtual Address Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing antivirus software often has a significant negative impact on computer systems due to the resource-intensive process of scanning for viruses, which can be more burdensome than the potential threats posed by many viruses.

Innovation Solution

A combined hardware and software virus processing system that utilizes a general purpose processor and a virus co-processor, where the processor maintains a page directory and page table to translate virtual addresses to physical addresses, and the co-processor scans content objects for undesirable content using multiple signatures, offloading processing tasks to reduce the load on the general purpose processor.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If antivirus software scans for viruses using general purpose processor, then virus detection capability is improved, but system performance deteriorates

Engineering Contradiction:
Improvevirus detection capabilityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system divides virus scanning functionality into two segments: a general purpose processor that handles system operations and a dedicated virus co-processor that handles virus scanning. This segmentation allows virus detection to occur independently without burdening the main processor, thus maintaining system performance while improving virus detection capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A virus co-processor is introduced as an intermediary component between the general purpose processor and the virus scanning function. The co-processor receives scanning requests from the main processor, performs the resource-intensive virus detection tasks, and returns results, thereby protecting system performance while enabling comprehensive virus detection.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If virus scanning is performed by general purpose processor, then comprehensive virus detection is achieved, but resource consumption increases

Engineering Contradiction:
Improvevirus detection capabilityVSAvoidprocessor resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The processing workload is segmented between the general purpose processor and the virus co-processor. The co-processor is specifically designed to handle virus scanning operations, offloading these resource-intensive tasks from the main processor and reducing overall system resource consumption while maintaining comprehensive detection capabilities.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The virus co-processor is a self-contained unit that independently performs virus scanning operations. It has its own processing capabilities and can autonomously handle scanning tasks without continuously consuming general purpose processor resources, thus reducing overall system resource consumption while maintaining detection effectiveness.

Inventive Principle:
Principle #25Self-service

3Productivity

If virtual address translation is implemented for hardware accelerator, then data transfer efficiency is improved, but system complexity increases

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidmemory management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The virus co-processor utilizes the existing virtual address translation infrastructure of the system, which is already implemented for the general purpose processor. By sharing this multi-functional address translation mechanism, the system achieves efficient data transfer to the hardware accelerator without adding separate translation logic, thus improving productivity while minimizing additional complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9892257B2Efficient data transfer in a virus co-processing system
Publication Date: 2018.02.13 FORTINET INC
  • US9892257B2 patent drawing
  • US9892257B2 patent drawing
  • US9892257B2 patent drawing

AI summary

Circuits and methods are provided for detecting, identifying and/or removing undesired content. According to one embodiment, a processor maintains a page directory and a page table within a system memory for use in connection with translating virtual addresses to physical addresses. Content scanning of a content object is offloaded to a hardware accelerator coupled to the processor by storing content scanning parameters, including the content object and a type of the content object, to the memory using one or more virtual addresses and indicating to the hardware accelerator that the content object is available for content scanning. Responsive thereto, the hardware accelerator: (i) translates the virtual addresses to corresponding physical addresses based on one or more of the page directory and the page table; (ii) accesses scanning parameters based on the physical addresses; (iii) scans the content object for undesirable content by applying multiple signatures; and (iv) returns a result of the content scanning to the processor.