17 citations found. Retrieving documents...
MIPS, System V Application Binary Interface, 1996

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Profiling and Tracing Dynamic Library Usage Via Interposition - Curry (1994)   (6 citations)  (Correct)

....applied both internally and externally to profile, trace, and generally interpose on non graphics libraries. Additionally, the data that can be collected has proven useful well beyond performance analysis. 2. Terminology For detailed discussions on dynamic linking, the reader should refer to [1,2,3]. The techniques described in this paper presume the applications which are to be profiled and or traced have already made the decision to use dynamically linked libraries and that the run time linker loader provides a means to perform interposition. System V release 4 (SVr4) UNIX and all versions ....

....does not support RTLD NEXT. The solution we followed is to traverse the linker structures and locate the list of libraries through them. We then dlopen each library in the list and loop through the list with dlsym looking for the real function. This is not too difficult and is somewhat documented [1] but should not be considered a normal, supported user interface. There are two concerns with this approach. One, be careful not to find your own symbol and get caught in a recursive loop. Two, for the sake of efficiency, you only want to loop through the libraries once to find the first function ....

"System V Application Binary Interface", UNIX Press, Prentice-Hall Inc., 1990, ISBN 0-13-877598-2.


DITools: Application-level Support for Dynamic Extension.. - Serra, Navarro, Cortes (2000)   (15 citations)  (Correct)

....which are placed in the executable file by the static linker, and then used by the dynamic linker at load time. Usually, the system s Application Binary Interface (ABI) defines the object file format and these data structures. During the last years, many vendors are adopting the System V r4 ABI [4], or at least parts of it. IRIX, Solaris, Linux, FreeBSD or HP UX currently support ELF as the object file format and use similar dynamic linking conventions. ELF is the file format originally introduced in System V r4. The standardization of binary interfaces makes possible to take a generic ....

AT&T "System V Application Binary Interface ", Published by Prentice--Hall, 1990


Procedural Abstraction Recovery from Binary Code - Cifuentes, Simon (1999)   (2 citations)  (Correct)

....of SPARC and Pentium assembly code, instead of the intermediate representation used in UQBT for readability. 1.1 Related Work The operating system s application binary interface describes interfaces to be used when generating machine code from compiler code. In particular, the Unix System V ABI [6] describes the rules followed on different machines when implementing Unix System V. The SPARC [2] and Pentium [1] processor supplements describe machine specific rules to be followed as part of implementing the ABI interface. Such rules include how to pass parameters to a procedure and how to ....

.... d n Figure 4: SPARC Assembly Code for GCD Program CALL gcd [ ret type ] o0, type ) o1, type ) Fixed vs Variable Number of Arguments Most procedures take a fixed number of arguments. However, languages like C allow for variable number of arguments to be passed at any one time. The ABI [6] does not place any rules on variable number of parameters, but states that the calling convention rules need to be satisfied; that is, the first 6 word parameters go into registers and the next go onto the stack. Disassembled C code shows that the first thing the callee does is to move all 18 ....

Unix System V: Application Binary Interface. Prentice Hall, Englewood Cliffs, New Jersey, 1990. 22


Procedural Abstraction Recovery from Binary Code - Cifuentes, Simon (1999)   (2 citations)  (Correct)

....1.1 Related Work The operating system s application binary interface describes interfaces to be used when generating machine code from compiler code. In particular, the Unix System V ABI [6] describes the rules followed on different machines when implementing Unix System V. The SPARC [2] and Pentium [1] processor supplements describe machine specific rules to be followed as part of implementing the ABI interface. Such rules include how to pass parameters to a procedure and how to return value(s) from a function. It also describes the stack frame and how values on it change during ....

Unix System V: Application Binary Interface, SPARC Processor Supplement. Prentice Hall, Englewood Cliffs, New Jersey, 1990.


Procedural Abstraction Recovery from Binary Code - Cifuentes, Simon (1999)   (2 citations)  (Correct)

....Related Work The operating system s application binary interface describes interfaces to be used when generating machine code from compiler code. In particular, the Unix System V ABI [6] describes the rules followed on different machines when implementing Unix System V. The SPARC [2] and Pentium [1] processor supplements describe machine specific rules to be followed as part of implementing the ABI interface. Such rules include how to pass parameters to a procedure and how to return value(s) from a function. It also describes the stack frame and how values on it change during a call. For ....

Unix System V: Application Binary Interface, Intel Processor Supplement. Prentice Hall, Englewood Cliffs, New Jersey, 1990.


Recovery of Jump Table Case Statements from Binary Code - Cifuentes, Van Emmerik (1999)   (4 citations)  (Correct)

....Pentium or o0 on SPARC) in other cases we assume registers are preserved across calls and continue slicing. This is a heuristic that works well in practice and is needed in only a few cases. The heuristic works when the machine code conforms to the operating system s application binary interface [1]. For example, for Figure 2, the following slice is created using RTL notation: 1) eax = m[ebp 8] 2) eax = eax 2 (3) ZF = eax 5) 0 1 : 0 (4) CF = eax 31 5 31) eax 5) 31 (eax 31 5 31) 5) PC = CF ZF) 1 0x80489dc : PC (6) PC = m[0x8048a0c eax 4] Register ebp ....

Unix System V: Application Binary Interface. Prentice Hall, Englewood Cliffs, New Jersey, 1990.


Generating Object Files Directly from SUIF/MACHSUIF Using GNU.. - Greenbaum (1997)   (1 citation)  (Correct)

....no assembly language representation need be defined. The advantage of using a standard binary tool suite for the object files, as opposed to a custom object executable file format, is that it gives us access to standard linkers, and later to debuggers. The next section is an overview of the ELF [7] object file format used by our binary tools. It is followed by a detailed description of, and code abstracts from, our SUIF MACHSUIF assembler. 2 Overview of the ELF object file format Our system uses the ELF object file format. ELF was chosen because it is popular (it is the file format used by ....

UNIX System Laboratories, Inc. System V Application Binary Interface, third edition edition, 1993.


Procedure Abstraction Recovery from Binary Code - Cifuentes, Simon (2000)   (Correct)

....The transformed CALL instruction looks like this: CALL gcd [ ret type ] o0, type ) o1, type ) Fixed vs Variable Number of Arguments Most procedures take a fixed number of arguments. However, languages like C allow for variable number of arguments to be passed at any one time. The ABI [6] does not place any rules on variable number of parameters, but states that the calling convention rules need to be satisfied; that is, the first 6 word parameters go into registers and the next go onto the stack. Disassembled C code shows that the first thing the callee does is to move all the ....

Unix System V: Application Binary Interface. Prentice Hall, Englewood Cliffs, New Jersey, 1990.


An Ecient Implementation of Multiple Return Values in Scheme - Ashley, Dybvig (1994)   (4 citations)  (Correct)

....so they use the stack for all arguments and return values. On Sparc based computer systems, the prescribed method for communicating whether fixedlength structures are expected and returned in C and similar languages somewhat resembles the stack based return count model described in Section 3.2. 2 [11]. The return point for a call to a procedure expected to return a structure is flagged with a particular unimplemented instruction, and the address of a location into which to place the returned structure is passed as a special argument on the stack. A procedure returning a structure must check ....

System V Application Binary Interface, SPARC Processor Supplement, 1990.


High Performance Dynamic Linking through Caching - Nelson, Hamilton (1993)   (4 citations)  (Correct)

....images and shared libraries. In addition, with library and program image caching, we have reduced the need for PIC and have increased page sharing. 1. Introduction Dynamic linking of shared libraries is used in most modern UNIX systems. These systems include, among others, SunOS [2] and SVR4 [11]. Dynamic linking has several good properties: Unresolved symbols in a program do not have to be resolved until the program is launched. This decreases the time to build an image. Shared libraries do not have to be statically bound into a program image thus saving disk space. Shared ....

....to dynamically link the binary is actually a copy of libue.so. 3. Related Work Dynamic linking was first used in the Multics [9] and TENEX [7] operating systems. However, it was not used in mainstream UNIX systems until System V [1] and SunOS [2] added dynamic linking support. More recently, SVR4 [11] and HP UX [10] provided dynamic linking support similar to the SunOS dynamic linking architecture. We will describe the SunOS implementation in detail in Section 4. The notion of caching previously run programs has been used in past UNIX systems. Early versions of UNIX had the notion of the ....

System V Application Binary Interface, Prentice-Hall, Englewood Cliffs, NJ, 1990.


Improving the Address Translation Performance of Widely Shared .. - Yousef Khalidi (1995)   (3 citations)  (Correct)

.... a page table (e.g. all of a 256K or 4MB address space has to be shared) Such size and alignment restrictions reduce the effectiveness of page table sharing, e.g. shared libraries typically have some private data that is not shared across processes (e.g. the global offset table in ELF objects [13]) but is mapped at a fixed offset from the text segment. This makes it difficult to find a contiguous, aligned chunk of virtual address space that is shared identically with another process. Hashed page tables do not place any such restrictions and the operating system can share more pages. More ....

System V Application Binary Interface, USL, Prentice-Hall, 1992.


Improving the Address Translation Performance of Widely.. - Khalidi, Talluri (1995)   (3 citations)  (Correct)

.... a page table (e.g. all of a 256K or 4MB address space has to be shared) Such size and alignment restrictions reduce the effectiveness of page table sharing, e.g. shared libraries typically have some private data that is not shared across processes (e.g. the global offset table in ELF objects [13]) but is mapped at a fixed offset from the text segment. This makes it difficult to find a contiguous, aligned chunk of virtual address space that is shared identically with another process. Hashed page tables do not place any such restrictions and the operating system can share more pages. More ....

System V Application Binary Interface, USL, Prentice-Hall, 1992.


Cross-Address Space Dynamic Linking - Kempf, Kessler (1992)   (7 citations)  (Correct)

....are compiled into position independent code, code segments are sharable between processes. The Berkeley 4.4 [Seeley 90] implementation and the UNIX System V Release 4 implementation UNIX is a trademark of UNIX Systems Laboratories. Kempf and Kessler: Cross Address Space Dynamic Linking 3 [SVR4 91] follow substantially the same strategy. The SunOS 4.0 dynamic linker provides an application program interface (API) for processes to link shared libraries during execution of user code and to look up symbols in the linked libraries and main program. The Xerox Portable Common Runtime (PCR) ....

System V Application Binary Interface, Prentice-Hall, Inglewood Cliffs, NJ, 1991.


An Efficient Implementation of Multiple Return Values in Scheme - Ashley, Dybvig (1994)   (2 citations)  (Correct)

....so they use the stack for all arguments and return values. On Sparc based computer systems, the prescribed method for communicating whether fixed length structures are expected and returned in C and similar languages somewhat resembles the stack based return count model described in Section 3.2. 2 [11]. The return point for a call to a procedure expected to return a structure is flagged with a particular unimplemented instruction, and the address of a location into which to place the returned structure is passed as a special argument on the stack. A procedure returning a structure must check ....

System V Application Binary Interface, SPARC Processor Supplement, 1990.


Department of Computing Science - Individual Project Report   (Correct)

No context found.

MIPS, System V Application Binary Interface, 1996


Library Interface Versioning in Solaris and Linux - David Brown And (2000)   (3 citations)  (Correct)

No context found.

"System V Application Binary Interface", ISBN 0-13-100439-5, UNIX Press (Prentice Hall), Englewood Cliffs, N.J. (c) 1993.


Adaptive Security Policies Enforced By Software Dynamic Translation - Lamanna (2002)   (Correct)

No context found.

System V Application Binary Interface, SPARC Processor Supplement, Third Edition.

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC