Vartan A. Padaryan
Russian Academy of Sciences
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Vartan A. Padaryan.
Lecture Notes in Computer Science | 2003
Victor Ivannikov; Serguei Gaissaryan; Arutyun Avetisyan; Vartan A. Padaryan
ParJava integrated environment supporting development and maintenance of data parallel Java-programs is discussed. When a parallel program is developed it is necessary to assure not only its correctness, but also its efficiency and scalability. For this purpose it is useful to know some dynamic properties of the program. This information may help to modify the program in order to improve its parallel features. ParJava provides a collection of such tools. Symbolic execution allows to estimate expected execution time and limits of scalability of Java SPMD-program.
Programming and Computer Software | 2011
Vartan A. Padaryan; M. A. Solov'ev; A. I. Kononov
We propose a model describing the operational semantics of machine instructions for a wide class of target architectures. A special feature of the model is that it is designed for the inverse (compared to the classical compiler problem) tract of transformations, but, at the same time, the model makes it possible to perform different optimizing transformations over it. The target machine is described by means of external specifications. A prototype subsystem for model interpretation is considered.
Programming and Computer Software | 2006
Victor Ivannikov; S. S. Gaisaryan; Arutyun Avetisyan; Vartan A. Padaryan
This paper considers a model of a parallel program that can efficiently be interpreted on an instrumental computer, providing a means for a sufficiently accurate prediction of the actual time needed for execution of the parallel program on a given parallel computational system. The model is designed for parallel programs with explicit message passing written in Java with calls to the MPI library and is a part of the ParJava environment. The model is obtained by transforming the program control tree, which, for Java programs, can be constructed by modifying the abstract syntax tree. The communication functions are simulated on the basis of the LogGP model, which makes it possible to take into account specific features of the distributed computational system.
Automation and Remote Control | 2007
Arutyun Avetisyan; S. S. Gaisaryan; Victor Ivannikov; Vartan A. Padaryan
A model of parallel program that can be effectively interpreted on the development computer guaranteeing the possibility of a sufficiently precise prediction of real run time for a simulated parallel program at the prescribed computer system is studied. The model is worked out for parallel programs with explicit message passing written in the Java language with MPI library access and is included into the composition of ParJava environment. The model is obtained by transforming the program control tree that can be constructed for Java programs by modifying the abstract syntax tree. To model communication functions, the model LogGP is used which allows taking into consideration the specific character of the communication network of the distributed computer system.
Programming and Computer Software | 2016
I. Get'man; V. P. Ivannikov; Yu. V. Markin; Vartan A. Padaryan; A. Yu. Tikhonov
This paper proposes a new object model of data for the in-depth analysis of network traffic. In contrast to the model used by most modern network analyzers (for example, Wireshark and Snort), the proposed model supports data stream reassembling with subsequent parsing. The model also provides a convenient universal mechanism for binding parsers, thus making it possible to develop completely independent parsers. Moreover, the proposed model allows processing modified—compressed or encrypted—data. This model forms the basis of the infrastructure for the in-depth analysis of network traffic.
Programming and Computer Software | 2016
V. Yu. Efimov; K. A. Batuzov; Vartan A. Padaryan; Arutyun Avetisyan
A technology of the deterministic replay of an execution process in virtual machines can be used for debugging, improving reliability and robustness, software development and incident investigation (including reverse engineering of malware). The paper describes an implementation of deterministic replay for guest machines based on IA-32 in the emulator QEMU. This implementation minimizes the list of replayed devices. The organization of QEMU is discussed in detail, and the techniques used in the implementation are thoroughly explained. The key performance characteristics, such as the size of log of nondeterministic events and slowdown are experimentally measured.
Programming and Computer Software | 2015
Vartan A. Padaryan; V. V. Kaushan; A. N. Fedotov
An automated method for exploit generation is presented. This method allows one to construct exploits for stack buffer overflow vulnerabilities and to prioritize software bugs. The method is based on the dynamic analysis and symbolic execution of programs. It could be applied to program binaries and does not require debug information. The proposed method was used to develop a tool for exploit generation. This tool was used to generate exploits for eight vulnerabilities in Linux and Windows programs, of which three were not fixed at the time this paper was written.
Programming and Computer Software | 2014
Vartan A. Padaryan; A. I. Getman; M. A. Solovyev; M. G. Bakulin; A. I. Borzilov; V. V. Kaushan; I. N. Ledovskikh; Yu. V. Markin; S. S. Panasenko
Methods and tools for binary code analysis developed in the Institute of System Programming, Russian Academy of Sciences, and their applications in algorithm and data format recovery are considered. The executable code of various general-purpose CPU architectures is analyzed. The analysis is performed given no source codes, debugging information, and specific OS version requirements. The approach implies collecting a detailed machine instruction level execution trace; a method for successively increasing presentation level; extraction of algorithm’s code followed by structuring of both code and data formats it processes. Important results are obtained, viz. an intermediate representation is developed that allows carrying out most preliminary processing tasks and algorithm code extraction without having to focus on specifics of a given machine; and a method and software tool are developed for automated recovery of network message and file formats. The tools are integrated into the unified analysis platform that supports their combined use. The architecture behind the platform is also described. Examples of its application to real programs are given.
parallel computing technologies | 2007
Victor Ivannikov; Serguei Gaissaryan; Arutyun Avetisyan; Vartan A. Padaryan
The paper considers the model of a parallel program, which can be effectively interpreted using an instrumental computer, allowing for fairly exact prediction of the actual runtime of a parallel program on a specific parallel computing system. The model has been developed for parallel Java-programs with explicit exchange of messages by means of the MPI library. The model is part of the ParJava environment. The model is derived by converting the program control tree, which, for the Java-program, can be built by modifying the abstract syntax tree. Communication functions are modeled by using the LogGP model, allowing to account for the specific features of a distributed computational system.
Parallel Computational Fluid Dynamics 2003#R##N#Advanced Numerical Methods Software and Applications | 2004
Victor Ivannikov; Serguei Gaissaryan; Arutyun Avetisyan; Vartan A. Padaryan
Publisher Summary This chapter discusses the ParJava integrated environment supporting the development and maintenance of data-parallel Java-programs. When a parallel program is developed it is necessary to assure not only its correctness, but also its efficiency and scalability. For this purpose it is useful to know some dynamic properties of the program (e.g., profiles, traces, slices, etc.). This information may help to modify the program in order to improve its parallel features. ParJava provides a collection of such tools. Symbolic execution allows estimating expected execution time and limits of scalability of Java SPMD-program. SPMD-programs are characterized by sufficiently high level of data exchange among nodes during run time. A linear algebraic system solution program using iterative algorithm may be considered as a simple example of an SPMD-program. The program executes an iterative loop (a parallel loop executed within a sequential loop). There is a great deal of interest in using Java for scientific and engineering computations. The idea of using Java for parallel computations is widely discussed. The most part of SPMD-programs are implemented using the MPI interface (C+MPI, FORTRAN+MPI). There are several implementations of MPI interface for Java. The ParJava environment is on the stage of evolution. The new instrumental tools are being developed (the automatic program parallelizer, the relative debugger of SPMD-programs and other codes), the problem of performance growth of parallel Java programs is under investigation, and the possibilities to apply the Java environment during the preparation of programs for GRID are also studied.