[go: up one dir, main page]

WO2019171114A1 - Garbage collector service for process in cloud - Google Patents

Garbage collector service for process in cloud Download PDF

Info

Publication number
WO2019171114A1
WO2019171114A1 PCT/IB2018/051384 IB2018051384W WO2019171114A1 WO 2019171114 A1 WO2019171114 A1 WO 2019171114A1 IB 2018051384 W IB2018051384 W IB 2018051384W WO 2019171114 A1 WO2019171114 A1 WO 2019171114A1
Authority
WO
WIPO (PCT)
Prior art keywords
state
heap
application program
references
garbage collector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/IB2018/051384
Other languages
French (fr)
Inventor
Pratik Sharma
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to PCT/IB2018/051384 priority Critical patent/WO2019171114A1/en
Publication of WO2019171114A1 publication Critical patent/WO2019171114A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • G06F8/4434Reducing the memory space required by the program code

Definitions

  • Synthesis phase creates an equivalent target program from the intermediate representation.
  • Symbol Table is a data structure maintained by compilers, consists all the identifier’s name along with their types. It helps the compiler to function smoothly by finding the identifiers quickly.
  • compiler has six stages consisting of Lexical Analyser, Syntax Analyser, Semantic Analyser, Intermediate Code Generator, Code Optimizer and Target Code Generator.
  • Lexical Analyser Syntax Analyser
  • Semantic Analyser Semantic Analyser
  • Intermediate Code Generator Code Optimizer
  • Target Code Generator To facilitate Garbage Collector Service for the program or process we in the Code Optimizer phase build a graph of state transitions for various function calls of the application program like state of the program changes from state A to state B when function A invokes function B.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

Typically compiler has six phases and to facilitate Garbage Collector thService for the program or process we in the Code Optimizer phase (5 phase) build a graph of state transitions for various function calls of the application program like state of the program changes from state A to state B when function A invokes function B. Also in addition to the above state transitions we also maintain for each state the references to already allocated heap memory locations (or heap variables) and references to newly allocated heap memory locations. Now this information helps the Garbage Collector Service process or thread for the application program to not free or garbage collect those heap variables or heap memory locations which currently do not have any reference or have a reference count of zero but have references in future states in the state transitions for that application program.

Description

Garbage Collector Service for Process in Cloud
In this invention we have a garbage collector service for different processes of an application running in cloud. Generally compilers for any language will have Analysis phase and Synthesis phase. Analysis phase creates an
intermediate representation from the given source code. Synthesis phase creates an equivalent target program from the intermediate representation. Symbol Table is a data structure maintained by compilers, consists all the identifier’s name along with their types. It helps the compiler to function smoothly by finding the identifiers quickly. Typically compiler has six stages consisting of Lexical Analyser, Syntax Analyser, Semantic Analyser, Intermediate Code Generator, Code Optimizer and Target Code Generator. To facilitate Garbage Collector Service for the program or process we in the Code Optimizer phase build a graph of state transitions for various function calls of the application program like state of the program changes from state A to state B when function A invokes function B. Also in addition to the above state transitions we also maintain for each state the references to already allocated heap memory locations (or heap variables) and references to newly allocated heap memory locations (or heap variables). Now this information helps the Garbage Collector Service process or thread for the application program to not free or garbage collect those heap variables or heap memory locations which currently do not have any reference or have a reference count of zero but have references in future states (or function calls) in the state transitions for that application program. Also Garbage Collector Service process or thread for the application program will be triggered when the reference count for a heap variable or heap memory location is zero or when the scope of a variable like a stack variable has ended and also to garbage collect remaining variables or references after the application program has terminated.

Claims

Claims Following is the claim for this invention: -
1. In this invention we have a garbage collector service for different
processes of an application running in cloud. Generally compilers for any language will have Analysis phase and Synthesis phase. Analysis phase creates an intermediate representation from the given source code.
Synthesis phase creates an equivalent target program from the
intermediate representation. Symbol Table is a data structure maintained by compilers, consists all the identifier’s name along with their types. It helps the compiler to function smoothly by finding the identifiers quickly. Typically compiler has six stages consisting of Lexical Analyser, Syntax Analyser, Semantic Analyser, Intermediate Code Generator, Code
Optimizer and Target Code Generator. To facilitate Garbage Collector Service for the program or process we in the Code Optimizer phase build a graph of state transitions for various function calls of the application program like state of the program changes from state A to state B when function A invokes function B. Also in addition to the above state transitions we also maintain for each state the references to already allocated heap memory locations (or heap variables) and references to newly allocated heap memory locations (or heap variables). Now this information helps the Garbage Collector Service process or thread for the application program to not free or garbage collect those heap variables or heap memory locations which currently do not have any reference or have a reference count of zero but have references in future states (or function calls) in the state transitions for that application program. Also Garbage Collector Service process or thread for the application program will be triggered when the reference count for a heap variable or heap memory location is zero or when the scope of a variable like a stack variable has ended and also to garbage collect remaining variables or references after the application program has terminated. The above novel technique of providing Garbage Collector Service for a process in cloud is the claim for this invention.
PCT/IB2018/051384 2018-03-05 2018-03-05 Garbage collector service for process in cloud Ceased WO2019171114A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/IB2018/051384 WO2019171114A1 (en) 2018-03-05 2018-03-05 Garbage collector service for process in cloud

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2018/051384 WO2019171114A1 (en) 2018-03-05 2018-03-05 Garbage collector service for process in cloud

Publications (1)

Publication Number Publication Date
WO2019171114A1 true WO2019171114A1 (en) 2019-09-12

Family

ID=67845890

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2018/051384 Ceased WO2019171114A1 (en) 2018-03-05 2018-03-05 Garbage collector service for process in cloud

Country Status (1)

Country Link
WO (1) WO2019171114A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150100752A1 (en) * 2013-10-08 2015-04-09 Red Hat, Inc. Concurrent Garbage Collector Thread
US9430153B2 (en) * 2014-10-22 2016-08-30 International Business Machines Corporation Garbage collection and other management of memory heaps

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150100752A1 (en) * 2013-10-08 2015-04-09 Red Hat, Inc. Concurrent Garbage Collector Thread
US9430153B2 (en) * 2014-10-22 2016-08-30 International Business Machines Corporation Garbage collection and other management of memory heaps

Similar Documents

Publication Publication Date Title
US9021512B1 (en) Runtime management of TOC pointer save and restore commands
US8307350B2 (en) Multi level virtual function tables
US20120203803A1 (en) Incremental class unloading in a region-based garbage collector
CN102117228A (en) Dynamic and static combined Java program exception handling and optimization method
CN105138326A (en) Method and system for achieving structured query language (sql) dynamic configuration based on ibatis
CN107291907B (en) Business data multi-language storage and query method and device
US9411617B2 (en) System and method for matching synthetically generated inner classes and methods
US9292268B2 (en) Systems and methods for uniquely defining fortran run time type descriptors for polymorphic entities
CN111008020B (en) Method for analyzing logic expression into general query statement
TW201729089A (en) Method for generating and installing trusted application for use in a trusted execution environment
JP2010267264A (en) Method for constructing executable code for component-based application, computer-readable storage medium for executing the method, and compiler
US20160328319A1 (en) Managing memory in a computer system
US20070067471A1 (en) Message translation systems and methods
JP2016157407A (en) Prior construction method of vocabulary semantic pattern for text analysis and response system
GB2597201A (en) Service management in a DBMS
CN103744682B (en) System and method for separate compilation of heterogeneous mixed programs
WO2019171114A1 (en) Garbage collector service for process in cloud
WO1996007137A1 (en) System, method, and compiler pre-processor for conditionally compiling a software compilation unit
CN105786465A (en) Scripting language execution method and device
WO2018072250A1 (en) Data sorting system and implementation method therefor
CN112052035B (en) Version group package method and device based on bank back line system
Alecu et al. The micro-world of cographs
CN102402428A (en) Method for realizing co-existing compilation of multiple sets of platforms under same host machine
CN104317785A (en) Internet paragraph level topic identifying system
Cséri et al. Rule-based assignment of comments to AST nodes in C++ programs

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18909032

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18909032

Country of ref document: EP

Kind code of ref document: A1