Overflow per segment

a technology of overflow and segment, applied in the field of over, can solve problems such as the overflow of the mark stack, the type of memory allocation and de-allocation suffers from a number of drawbacks, and the use of malicious attacks to compromise data

Inactive Publication Date: 2009-12-03
MICROSOFT TECH LICENSING LLC
View PDF10 Cites 8 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Benefits of technology

[0010]One embodiment described herein includes a method that may be practiced in a computing environment. The computing environment including application code that implements garbage collection functionality. The garbage collection functionality includes pushing object references onto a mark stack. Objects referenced on the mark stack can be marked so as to prevent memory for the objects from being recycled for use with other object instances. The method includes acts for handling overflows of a mark stack. A reference to an object is accessed. The object is processed by attempting to place references to other objects referenced in the object onto a mark stack. An overflow condition of the mark stack is detected. A range in a segment is defined which includes the object that caused the overflow condition. The range is assigned on a per segment basis such that the range is defined to only include addresses in a single segment.

Problems solved by technology

However, this type of memory allocation and de-allocation suffers from a number of drawbacks.
Additionally, this type of allocation and de-allocation allows for malicious attacks that can be used to compromise data.
When the mark stack is limited in size, the mark stack may overflow.
While it may not be necessary to examine the entire object heap as a range of the object heap that includes overflows can be implemented, as can be appreciated, this can nonetheless result in a time consuming and resource intensive marking process.
Linearly processing these segments can be a waste of system resources.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Overflow per segment
  • Overflow per segment
  • Overflow per segment

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0017]Referring now to FIG. 1, an example of various garbage collection activities and allocation activities are illustrated. FIG. 1 illustrates an object heap 102. The object heap 102 comprises system memory, such as system RAM or other system memory that can be used to store objects. The object heap 102 includes a number of segments 104. Segments 104 may be assigned by the operating system for in storing managed objects. It should be noted that this point that references to designators in the Figures may be made generically or specifically when the Figures include more than one instance of an item illustrated. For example a generic reference may include a reference to segments 104 generically while a reference to a specific segment may include an additional designators appended to a reference such as is illustrated in FIG. 1 where the specific references to segments 104 include additional designators such that the specific references may be 104(a), 104(b), 104(c), and 104(d).

[0018...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

Per-segment overflow ranges. One method includes acts for handling overflows of a mark stack. A reference to an object is accessed. The object is processed by attempting to place references to other objects referenced in the object onto a mark stack. An overflow condition of the mark stack is detected. A range in a segment is defined which includes the object that caused the overflow condition. The range is assigned on a per segment basis such that the range is defined to only include addresses in a single segment.

Description

BACKGROUNDBackground and Relevant Art[0001]In computer systems, there is often a need to manage memory. In particular, when objects are no longer used, it is useful to recover memory that was allocated for use with the objects. Some systems in use today use explicit memory management whereby the systems use a command to allocate memory and a corresponding command to free memory. For example, the C programming language includes a command “malloc” that can be used to allocate memory for an object and a command “free” that can be used to free memory that has been previously allocated. However, this type of memory allocation and de-allocation suffers from a number of drawbacks. In particular, free memory may be scattered throughout a memory structure. Additionally, this type of allocation and de-allocation allows for malicious attacks that can be used to compromise data. For example, a hacker can cause memory that has been allocated by one thread to be de-allocated such that a malicious...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
Patent Type & Authority Applications(United States)
IPC IPC(8): G06F17/30
CPCG06F12/0253
Inventor STEPHENS, MAONI Z.DUSSUD, PATRICK H.
Owner MICROSOFT TECH LICENSING LLC
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products