RU2008120587A - METHOD FOR BUILDING DYNAMIC CHARACTERISTICS OF FUNCTION CALLS - Google Patents

METHOD FOR BUILDING DYNAMIC CHARACTERISTICS OF FUNCTION CALLS Download PDF

Info

Publication number
RU2008120587A
RU2008120587A RU2008120587/09A RU2008120587A RU2008120587A RU 2008120587 A RU2008120587 A RU 2008120587A RU 2008120587/09 A RU2008120587/09 A RU 2008120587/09A RU 2008120587 A RU2008120587 A RU 2008120587A RU 2008120587 A RU2008120587 A RU 2008120587A
Authority
RU
Russia
Prior art keywords
graphs
dynamic
function calls
period
function call
Prior art date
Application number
RU2008120587/09A
Other languages
Russian (ru)
Inventor
Екатерина Анатольевна Горелкина (RU)
Екатерина Анатольевна ГОРЕЛКИНА
Original Assignee
Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." (KR)
Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд."
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 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." (KR), Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." filed Critical Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." (KR)
Priority to RU2008120587/09A priority Critical patent/RU2008120587A/en
Priority to KR1020090036569A priority patent/KR101577771B1/en
Priority to US12/471,506 priority patent/US8990792B2/en
Publication of RU2008120587A publication Critical patent/RU2008120587A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

1. Способ построения динамических графов вызовов функций, отличающийся ! тем, что разбивают весь период наблюдения за работой программы на периоды выбора образцов, при этом для каждого периода выбора образцов определяют страницы памяти с кодом программы, которые были доступны приложению, определяют части кода программы, которые были доступны, на основании информации о доступных страницах памяти с кодом программы, определяют набор функций, которые расположены в доступных частях кода программы, строят возможные динамические графы вызовов функций, определяют правильные динамические графы вызовов функций, при этом удаляют ошибочные динамические графы вызовов функций из набора возможных динамических графов вызовов функций на основании анализа исходного кода, строят возможные динамические графы вызовов функций для всего периода наблюдения, при этом соединяют правильные динамические графы вызовов функций для периодов выбора образцов, определяют возможные динамические графы вызовов функций для всего периода наблюдения, при этом удаляют ошибочные динамические графы вызовов функций для всего периода наблюдения из набора возможных динамические графов вызовов функций для всего периода наблюдения на основании анализа исходного кода. ! 2. Способ по п.1, отличающийся тем, что объектом анализа является бинарный код. ! 3. Способ по п.1, отличающийся тем, что определяют страницы памяти с кодом программы, которые были доступны приложению за определенный период времени, при этом используют возможности операционной системы. ! 4. Способ по п.1, отличающийся тем, что строят динамические графы вызовов функций, при этом применя1. The way of constructing dynamic graphs of function calls is different! the fact that the entire period of observation of the program operation is divided into periods of sample selection, while for each period of sample selection, the memory pages with the program code that were available to the application are determined, the parts of the program code that were available are determined based on information about the available memory pages with the program code, define a set of functions that are located in accessible parts of the program code, build possible dynamic function call graphs, determine correct dynamic function call graphs, while removing erroneous dynamic function call graphs from the set of possible dynamic function call graphs based on the analysis of the source code , build possible dynamic function call graphs for the entire observation period, while connecting the correct dynamic function call graphs for sample selection periods, determine possible dynamic function call graphs for the entire observation period, while removing erroneous dynamic graphs function calls for the entire observation period from a set of possible dynamic graphs of function calls for the entire observation period based on the analysis of the source code. ! 2. The method according to claim 1, characterized in that the object of analysis is a binary code. ! 3. The method according to claim 1, characterized in that the pages of memory with the program code that were available to the application for a certain period of time are determined, while using the capabilities of the operating system. ! 4. The method according to claim 1, characterized in that they build dynamic graphs of function calls, while applying

Claims (7)

1. Способ построения динамических графов вызовов функций, отличающийся1. The method of constructing dynamic graphs of function calls, characterized тем, что разбивают весь период наблюдения за работой программы на периоды выбора образцов, при этом для каждого периода выбора образцов определяют страницы памяти с кодом программы, которые были доступны приложению, определяют части кода программы, которые были доступны, на основании информации о доступных страницах памяти с кодом программы, определяют набор функций, которые расположены в доступных частях кода программы, строят возможные динамические графы вызовов функций, определяют правильные динамические графы вызовов функций, при этом удаляют ошибочные динамические графы вызовов функций из набора возможных динамических графов вызовов функций на основании анализа исходного кода, строят возможные динамические графы вызовов функций для всего периода наблюдения, при этом соединяют правильные динамические графы вызовов функций для периодов выбора образцов, определяют возможные динамические графы вызовов функций для всего периода наблюдения, при этом удаляют ошибочные динамические графы вызовов функций для всего периода наблюдения из набора возможных динамические графов вызовов функций для всего периода наблюдения на основании анализа исходного кода.by dividing the entire monitoring period of the program into sample selection periods, for each sample selection period, determine the memory pages with the program code that were available to the application, determine the parts of the program code that were available based on information about the available memory pages with the program code, determine the set of functions that are located in the accessible parts of the program code, build possible dynamic graphs of function calls, determine the correct dynamic graphs of function calls, when Volume remove erroneous dynamic function call graphs from the set of possible dynamic function call graphs based on source code analysis, construct possible dynamic function call graphs for the entire observation period, connect the correct dynamic function call graphs for sample selection periods, determine possible dynamic function call graphs for the entire observation period, while deleting erroneous dynamic graphs of function calls for the entire observation period from the set of possible dynamic e graphs function calls for the entire period of observation based on source code analysis. 2. Способ по п.1, отличающийся тем, что объектом анализа является бинарный код.2. The method according to claim 1, characterized in that the object of analysis is a binary code. 3. Способ по п.1, отличающийся тем, что определяют страницы памяти с кодом программы, которые были доступны приложению за определенный период времени, при этом используют возможности операционной системы.3. The method according to claim 1, characterized in that determine the memory page with the program code, which were available to the application for a certain period of time, while using the capabilities of the operating system. 4. Способ по п.1, отличающийся тем, что строят динамические графы вызовов функций, при этом применяют генетический алгоритм.4. The method according to claim 1, characterized in that the dynamic graphs of function calls are built, and a genetic algorithm is used. 5. Способ по п.1, отличающийся тем, что строят динамические графы вызовов функций, при этом генерируют последовательности из набора возможных вызванных функций.5. The method according to claim 1, characterized in that they construct dynamic graphs of function calls, while generating sequences from the set of possible called functions. 6. Способ по п.1, отличающийся тем, что удаляют ошибочные динамические графы вызовов функций, при этом анализируют исходный код программы.6. The method according to claim 1, characterized in that they delete erroneous dynamic graphs of function calls, while analyzing the source code of the program. 7. Способ по п.1, отличающийся тем, что удаляют ошибочные динамические графы вызовов функций, при этом анализируют бинарный код. 7. The method according to claim 1, characterized in that they delete erroneous dynamic graphs of function calls, while analyzing the binary code.
RU2008120587/09A 2008-05-26 2008-05-26 METHOD FOR BUILDING DYNAMIC CHARACTERISTICS OF FUNCTION CALLS RU2008120587A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
RU2008120587/09A RU2008120587A (en) 2008-05-26 2008-05-26 METHOD FOR BUILDING DYNAMIC CHARACTERISTICS OF FUNCTION CALLS
KR1020090036569A KR101577771B1 (en) 2008-05-26 2009-04-27 Method for constructing dynamic call graph of applications
US12/471,506 US8990792B2 (en) 2008-05-26 2009-05-26 Method for constructing dynamic call graph of application

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2008120587/09A RU2008120587A (en) 2008-05-26 2008-05-26 METHOD FOR BUILDING DYNAMIC CHARACTERISTICS OF FUNCTION CALLS

Publications (1)

Publication Number Publication Date
RU2008120587A true RU2008120587A (en) 2009-12-10

Family

ID=41488826

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2008120587/09A RU2008120587A (en) 2008-05-26 2008-05-26 METHOD FOR BUILDING DYNAMIC CHARACTERISTICS OF FUNCTION CALLS

Country Status (2)

Country Link
KR (1) KR101577771B1 (en)
RU (1) RU2008120587A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101886203B1 (en) * 2016-07-19 2018-09-06 주식회사 스패로우 Apparatus and method for analyzing programs
KR102397340B1 (en) * 2020-07-30 2022-05-12 경북대학교 산학협력단 Microcontroller Update Managemnet Method and Management System

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7509632B2 (en) 2005-03-24 2009-03-24 International Business Machines Corporation Method and apparatus for analyzing call history data derived from execution of a computer program
US7836433B2 (en) 2006-01-26 2010-11-16 Microsoft Corporation Analyzing binary code

Also Published As

Publication number Publication date
KR101577771B1 (en) 2015-12-28
KR20090122879A (en) 2009-12-01

Similar Documents

Publication Publication Date Title
WO2019083737A8 (en) System and method for analyzing binary code for malware classification using artificial neural network techniques
DE60313215D1 (en) METHOD AND SYSTEM FOR IMPLEMENTING CALCULATION OPERATIONS AND DEVICE
CN112181758B (en) Fault root cause positioning method based on network topology and real-time alarm
ATE480772T1 (en) METHOD FOR ACOUSTICALLY OUTPUTING INFORMATION IN AN ANALYSIS SYSTEM
CN109065046A (en) Method, apparatus, electronic equipment and the computer readable storage medium that voice wakes up
BR112014023865A8 (en) method for identifying a candidate audio segment from a telephone call, a candidate data set and a candidate audio segment, method for creating a ternary bitmap from a data set and an audio segment, method for creating a compact representation weighted from a dataset
RU2014104582A (en) RUNNING SYSTEM
CN104504084A (en) Method and device for determining user retention rate
CN103915092A (en) Voice identification method and device
JP6904043B2 (en) Input discovery for unknown program binaries
JP2019512126A (en) Method and system for training a machine learning system
CN111414619B (en) Data security detection method, device, equipment and readable storage medium
RU2008120587A (en) METHOD FOR BUILDING DYNAMIC CHARACTERISTICS OF FUNCTION CALLS
ATE519145T1 (en) METHOD FOR PARAMETIZING EQUIPMENT
US20140108323A1 (en) Compressively-accelerated read mapping
ATE466442T1 (en) SYSTEM AND METHOD FOR PROCESSING INFORMATION ABOUT THE PRESENCE STATE WITH IMPROVED RELIABILITY
CN103942140A (en) Automatic testing program conversion method
CN103885754A (en) Automatic data model generating system and automatic data model generating method
CN105701004B (en) Application testing method and device
ATE387670T1 (en) DEFINING NODES IN A DEVICE MANAGEMENT SYSTEM
CN113919971A (en) Sewage treatment sample data management method and system based on block chain and big data
CN109408235B (en) Data processing method and device, computing equipment and storage medium
CN103955449A (en) Target sample positioning method and device
CN106557368B (en) Spark program optimization method and device
CN112860527A (en) Fault monitoring method and device of application server