AUTHOR PUB TYPE Needs of Potential Users, System
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
A Type Inference on Executables
A Type Inference on Executables Juan Caballero, IMDEA Software Institute Zhiqiang Lin, University of Texas at Dallas In many applications source code and debugging symbols of a target program are not available, and what we can only access is the program executable. A fundamental challenge with executables is that during compilation critical information such as variables and types is lost. Given that typed variables provide fundamental semantics of a program, for the last 16 years a large amount of research has been carried out on binary code type inference, a challenging task that aims to infer typed variables from executables (also referred to as binary code). In this article we systematize the area of binary code type inference according to its most important dimensions: the applications that motivate its importance, the approaches used, the types that those approaches infer, the implementation of those approaches, and how the inference results are evaluated. We also discuss limitations, point to underdeveloped problems and open challenges, and propose further applications. Categories and Subject Descriptors: D.3.3 [Language Constructs and Features]: Data types and struc- tures; D.4.6 [Operating Systems]: Security and Protection General Terms: Languages, Security Additional Key Words and Phrases: type inference, program executables, binary code analysis ACM Reference Format: Juan Caballero and Zhiqiang Lin, 2015. Type Inference on Executables. ACM Comput. Surv. V, N, Article A (January YYYY), 35 pages. DOI:http://dx.doi.org/10.1145/0000000.0000000 1. INTRODUCTION Being the final deliverable of software, executables (or binary code, as we use both terms interchangeably) are everywhere. They contain the final code that runs on a system and truly represent the program behavior. -
(POSIX®)— Part 1: System Application Program Interface (API) [C Language]
International Standard ISO/IEC 9945-1: 1996 (E) IEEE Std 1003.1, 1996 Edition (Incorporating ANSI/IEEE Stds 1003.1-1990, 1003.1b-1993, 1003.1c-1995, and 1003.1i-1995) Information technology—Portable Operating System Interface (POSIX®)— Part 1: System Application Program Interface (API) [C Language] Sponsor Portable Applications Standards Committee of the IEEE Computer Society Adopted as an International Standard by the International Organization for Standardization and by the International Electrotechnical Commission Published by The Institute of Electrical and Electronics Engineers, Inc. Abstract: This standard is part of the POSIX series of standards for applications and user interfaces to open systems. It defines the applications interface to basic system services for input/output, file system access, and process management. It also defines a format for data interchange. When options specified in the Realtime Extension are included, the standard also defines interfaces appropriate for realtime applications. When options specified in the Threads Extension are included, the standard also defines interfaces appropriate for multithreaded applications. This standard is stated in terms of its C language binding. Keywords: API, application portability, C (programming language), data processing, information interchange, open systems, operating system, portable application, POSIX, programming language, realtime, system configuration computer interface, threads POSIX is a registered trademark of the Institute of Electrical and Electronics Engineers, Inc. Quote in 8.1.2.3 on Returns is taken from ANSI X3.159-1989, developed under the auspices of the American National Standards Accredited Committee X3 Technical Committee X3J11. The Institute of Electrical and Electronics Engineers, Inc. 345 East 47th Street, New York, NY 10017-2394, USA Copyright © 1996 by the Institute of Electrical and Electronics Engineers, Inc. -
Targeting Embedded Powerpc
Freescale Semiconductor, Inc. EPPC.book Page 1 Monday, March 28, 2005 9:22 AM CodeWarrior™ Development Studio PowerPC™ ISA Communications Processors Edition Targeting Manual Revised: 28 March 2005 For More Information: www.freescale.com Freescale Semiconductor, Inc. EPPC.book Page 2 Monday, March 28, 2005 9:22 AM Metrowerks, the Metrowerks logo, and CodeWarrior are trademarks or registered trademarks of Metrowerks Corpora- tion in the United States and/or other countries. All other trade names and trademarks are the property of their respective owners. Copyright © 2005 by Metrowerks, a Freescale Semiconductor company. All rights reserved. No portion of this document may be reproduced or transmitted in any form or by any means, electronic or me- chanical, without prior written permission from Metrowerks. Use of this document and related materials are governed by the license agreement that accompanied the product to which this manual pertains. This document may be printed for non-commercial personal use only in accordance with the aforementioned license agreement. If you do not have a copy of the license agreement, contact your Metrowerks representative or call 1-800-377- 5416 (if outside the U.S., call +1-512-996-5300). Metrowerks reserves the right to make changes to any product described or referred to in this document without further notice. Metrowerks makes no warranty, representation or guarantee regarding the merchantability or fitness of its prod- ucts for any particular purpose, nor does Metrowerks assume any liability arising -
SVG Tutorial
SVG Tutorial David Duce *, Ivan Herman +, Bob Hopgood * * Oxford Brookes University, + World Wide Web Consortium Contents ¡ 1. Introduction n 1.1 Images on the Web n 1.2 Supported Image Formats n 1.3 Images are not Computer Graphics n 1.4 Multimedia is not Computer Graphics ¡ 2. Early Vector Graphics on the Web n 2.1 CGM n 2.2 CGM on the Web n 2.3 WebCGM Profile n 2.4 WebCGM Viewers ¡ 3. SVG: An Introduction n 3.1 Scalable Vector Graphics n 3.2 An XML Application n 3.3 Submissions to W3C n 3.4 SVG: an XML Application n 3.5 Getting Started with SVG ¡ 4. Coordinates and Rendering n 4.1 Rectangles and Text n 4.2 Coordinates n 4.3 Rendering Model n 4.4 Rendering Attributes and Styling Properties n 4.5 Following Examples ¡ 5. SVG Drawing Elements n 5.1 Path and Text n 5.2 Path n 5.3 Text n 5.4 Basic Shapes ¡ 6. Grouping n 6.1 Introduction n 6.2 Coordinate Transformations n 6.3 Clipping ¡ 7. Filling n 7.1 Fill Properties n 7.2 Colour n 7.3 Fill Rule n 7.4 Opacity n 7.5 Colour Gradients ¡ 8. Stroking n 8.1 Stroke Properties n 8.2 Width and Style n 8.3 Line Termination and Joining ¡ 9. Text n 9.1 Rendering Text n 9.2 Font Properties n 9.3 Text Properties -- ii -- ¡ 10. Animation n 10.1 Simple Animation n 10.2 How the Animation takes Place n 10.3 Animation along a Path n 10.4 When the Animation takes Place ¡ 11. -
Interprocedural Analysis of Low-Level Code
TECHNISCHE UNIVERSITAT¨ MUNCHEN¨ Institut fur¨ Informatik Lehrstuhl Informatik II Interprocedural Analysis of Low-Level Code Andrea Flexeder Vollstandiger¨ Abdruck der von der Fakultat¨ fur¨ Informatik der Technischen Universitat¨ Munchen¨ zur Erlangung des akademischen Grades eines Doktors der Naturwissenschaften (Dr. rer. nat.) genehmigten Dissertation. Vorsitzender: Univ.-Prof. Dr. H. M. Gerndt Prufer¨ der Dissertation: 1. Univ.-Prof. Dr. H. Seidl 2. Dr. A. King, University of Kent at Canterbury / UK Die Dissertation wurde am 14.12.2010 bei der Technischen Universitat¨ Munchen¨ eingereicht und durch die Fakultat¨ fur¨ Informatik am 9.6.2011 angenommen. ii Contents 1 Analysis of Low-Level Code 1 1.1 Source versus Binary . 1 1.2 Application Areas . 6 1.3 Executable and Linkable Format (ELF) .................. 12 1.4 Application Binary Interface (ABI)..................... 18 1.5 Assumptions . 24 1.6 Contributions . 24 2 Control Flow Reconstruction 27 2.1 The Concrete Semantics . 31 2.2 Interprocedural Control Flow Reconstruction . 33 2.3 Practical Issues . 39 2.4 Implementation . 43 2.5 Programming Model . 44 3 Classification of Memory Locations 49 3.1 Semantics . 51 3.2 Interprocedural Variable Differences . 58 3.3 Application to Assembly Analysis . 73 4 Reasoning about Array Index Expressions 81 4.1 Linear Two-Variable Equalities . 81 4.2 Application to Assembly Analysis . 88 4.3 Register Coalescing and Locking . 89 5 Tools 91 5.1 Combination of Abstract Domains . 91 5.2 VoTUM . 96 6 Side-Effect Analysis 101 6.1 Semantics . 105 6.2 Analysis of Side-Effects . 108 6.3 Enhancements . 115 6.4 Experimental Results . 118 iii iv CONTENTS 7 Exploiting Alignment for WCET and Data Structures 123 7.1 Alignment Analysis . -
Standards Action Layout SAV3528.Fp5
PUBLISHED WEEKLY BY THE AMERICAN NATIONAL STANDARDS INSTITUTE 25 West 43rd Street, NY, NY 10036 VOL. 35, #28 July 9, 2004 Contents American National Standards Call for Comment on Standards Proposals ................................................ 2 Call for Comment Contact Information ....................................................... 9 Final Actions.................................................................................................. 11 Project Initiation Notification System (PINS).............................................. 14 International Standards ISO and IEC Newly Published Standards.................................................... 18 Registration of Organization Names in the U.S............................................ 21 Proposed Foreign Government Regulations................................................ 21 Information Concerning ................................................................................. 22 Standards Action is now available via the World Wide Web For your convenience Standards Action can now be down- loaded from the following web address: http://www.ansi.org/news_publications/periodicals/standards _action/standards_action.aspx?menuid=7 American National Standards Call for comment on proposals listed This section solicits public comments on proposed draft new American National Standards, including the national adoption of Ordering Instructions for "Call-for-Comment" Listings ISO and IEC standards as American National Standards, and on 1. Order from the organization indicated for -
Cad Standards
ME 6501-CAD MECHANICAL ENGINEERING UNIT - V CAD STANDARDS PART - A 1. List some Standards us ed in computer graphics. 2. What are the Types of Standards used in CAD? • Graphics Standa rds • Data Exchange Standards • Communication Standards 3. Write Aim of Graphics Standardization. • To provide versatility in the combination of Software and Hardware items of turnkey systems • To allow the creation of portable application software package, applicable for wide range of hardware makes enumand configurations 4. Enumerate GKS 3D. ME 6501-CAD MECHANICAL ENGINEERING 5. Write short note on PH IGS. 6. Write short note on NA PLPS. 7. List the features of NAP LPS. 8. Sketch the layer model of GKS. ME 6501-CAD MECHANICAL ENGINEERING 9. Write features of Conti nuous Acquisition and Life-cycle Support (C ALS). •Developed by U S Department of Defense •Prescribes formats for storage and exchange of technical data •Technical publications an important focus 10. Sketch STEP Architect ure. 11. List the Classes of STE P Parts. •Introductory •Description meth ods •Implementation methods •Conformance testing methodology and framework •Integrated resour ces •Application prot ocols •Abstract test suites 12. What are Important CA LS Standards? • Standard Genera lized Markup Language (SGML) • Computer Grap hics Metafile (CGM) 13. Note on Computer Gra phics Metafile (CGM). Devel oped in 1986 vector file format for illustrations and drawings All gra phical elements can be specified in a textual so urce file that can be com piled into a binary file or one of two text repres entations ME 6501-CAD MECHANICAL ENGINEERING 14. What is meant by OpenGL (Open Graphics Library)? OpenGL is a cross-language, multi-platform application programming interface (API) forrendering 2D and 3D vector graphics. -
Mac OS X ABI Function Call Guide
Mac OS X ABI Function Call Guide 2005-12-06 PowerPC and and the PowerPC logo are Apple Computer, Inc. trademarks of International Business © 2005 Apple Computer, Inc. Machines Corporation, used under license All rights reserved. therefrom. Simultaneously published in the United No part of this publication may be States and Canada. reproduced, stored in a retrieval system, or Even though Apple has reviewed this document, transmitted, in any form or by any means, APPLE MAKES NO WARRANTY OR mechanical, electronic, photocopying, REPRESENTATION, EITHER EXPRESS OR IMPLIED, WITH RESPECT TO THIS recording, or otherwise, without prior DOCUMENT, ITS QUALITY, ACCURACY, written permission of Apple Computer, Inc., MERCHANTABILITY, OR FITNESS FOR A with the following exceptions: Any person PARTICULAR PURPOSE. AS A RESULT, THIS DOCUMENT IS PROVIDED “AS IS,” AND is hereby authorized to store documentation YOU, THE READER, ARE ASSUMING THE on a single computer for personal use only ENTIRE RISK AS TO ITS QUALITY AND ACCURACY. and to print copies of documentation for IN NO EVENT WILL APPLE BE LIABLE FOR personal use provided that the DIRECT, INDIRECT, SPECIAL, INCIDENTAL, documentation contains Apple’s copyright OR CONSEQUENTIAL DAMAGES notice. RESULTING FROM ANY DEFECT OR INACCURACY IN THIS DOCUMENT, even if The Apple logo is a trademark of Apple advised of the possibility of such damages. Computer, Inc. THE WARRANTY AND REMEDIES SET FORTH ABOVE ARE EXCLUSIVE AND IN Use of the “keyboard” Apple logo LIEU OF ALL OTHERS, ORAL OR WRITTEN, EXPRESS OR IMPLIED. No Apple dealer, agent, (Option-Shift-K) for commercial purposes or employee is authorized to make any without the prior written consent of Apple modification, extension, or addition to this may constitute trademark infringement and warranty. -
Design and Implementation of a 2D Graphics Package In
- DESIGN AND IMPLEMENTATION OF A 2D GRAPHICS PACKAGE IN ADA 95 By LAN LI Bachelor of Science ZheJiang University HangZhou, China 1987 Submitted to the Faculty of the Graduate College of the Oklahoma State University in partial fulfillment of the requirements for the Degree of MASTER OF SCIENCE December, 1996 - DESIGN AND IMPLEMENTATION OF A 2D GRAPHICS PACKAGE IN ADA 95 Thesis approved: H. ~< 11 - ACKNOWLEDGMENT I express my sincere gratitude to my advisor Dr. George for his constructive guidance, supervision, inspiration and financial support. Without his understanding and support, I could not have accomplished this project. Appreciation also extends to my committee members Dr. Chandler and Dr. Lu, their great help are invaluable when I was in difficult situation. I would also like to thank my husband who always gives me encouragement and support in the background. Thanks my son Eric, who was just born, for sharing my happiness and pain, tolerating my occasional inattention during this project. My special thanks also go to my parents who help me take care of my baby with their tremendous love that give me much time to finish this work. This project is supported by DISA Grant DCA 100-96-1-0007 iii L - TABLE OF CONTENTS Chapter Page 1. Introduction 1 2. Literature Review ..............................................................................•.............3 2.1. A Review of Standard Graphics Packages 3 2.1.1. GKS (Graphical Kernel System) 3 a) Logic3.1 Workstations ., 5 b) Graphics Primitives 6 c) logical Input Devices................................................................•...........•.............. 7 d) Mode of Interaction 7 e) Segmentation .....................................................................................•................. 7 f) Metafile '•...........•................................ 8 2.1.2. PHIGS (Programmer's Hierarchical Interactive Graphics System) 8 a) Graphics Output 9 b) Graphics Inpu.t 10 c) Interaction handling .............................................................................•.•........ -
A HIGH-LEVEL GRAPHICS LANGUAGE BASED on the GRAPHICAL KERNEL SYSTEM by HANQIU SUN B . a . S C , Huazhong U N I V E R S I T Y
A HIGH-LEVEL GRAPHICS LANGUAGE BASED ON THE GRAPHICAL KERNEL SYSTEM by HANQIU SUN B.A.Sc, Huazhong University, 1981 A THESIS SUBMITTED IN PARTIAL FULFILMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF APPLIED SCIENCE in THE FACULTY OF GRADUATE STUDIES Department of Electrical Engineering We accept this thesis as conforming to the required standard THE UNIVERSITY OF BRITISH COLUMBIA February 1986 © Hanqiu Sun, 1986 In presenting this thesis in partial fulfilment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholarly purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission. Department of Fkcf^''ccv£ (p^r'KA*-'r/<Af The University of British Columbia 1956 Main Mall Vancouver, Canada V6T 1Y3 Date Ma»JL S>o , fIBf >E-6 (3/81) i i Abstract Being an application area of programming languages, graphics languages should keep pace with the development of today's programming languages. Data types, structural operations and free layout of statements provide a more effective means of picture generation, i.e., modelling, rendering and viewing. The Graphical Kernel System (GKS), an international standard graphics language since 1984, is specified on a subroutine basis, therefore suffering from the lack of such high-level language features. This thesis investigates and implements the FORTRAN language binding of GKS into a high-level programming language (HL/GKS) by a generated precompiler. -
GKS-94 to SVG: Some Reflections on the Evolution of Standards for 2D
EG UK Computer Graphics & Visual Computing (2015) Rita Borgo, Cagatay Turkay (Editors) GKS-94 to SVG: Some Reflections on the Evolution of Standards for 2D Graphics D. A. Duce1 and F.R.A. Hopgood2 1Department of Computing and Communication Technologies, Oxford Brookes University, UK 2Retired, UK Abstract Activities to define international standards for computer graphics, in particular through ISO/IEC, started in the 1970s. The advent of the World Wide Web has brought new requirements and opportunities for standardization and now a variety of bodies including ISO/IEC and the World Wide Web Consortium (W3C) promulgate standards in this space. This paper takes a historical look at one of the early ISO/IEC standards for 2D graphics, the Graph- ical Kernel System (GKS) and compares key concepts and approaches in this standard (as revised in 1994) with concepts and approaches in the W3C Recommendation for Scalable Vector Graphics (SVG). The paper reflects on successes as well as lost opportunities. Categories and Subject Descriptors (according to ACM CCS): I.3.6 [Computer Graphics]: Methodology and Techniques—Standards 1. Introduction a W3C Recommendation early in 1999. The current (at the time of writing) revision was published in 2010 [web10]. The Graphical Kernel System (GKS) was the first ISO/IEC international standard for computer graphics and was pub- It was clear from the early days that a vector graphics for- lished in 1985 [GKS85]. This was followed by other stan- mat specifically for the web would be a useful addition to the dards including the Computer Graphics Metafile (CGM), then-available set of markup languages. -
Dyalog APL – a Personal History
Dyalog APL A Personal History by Peter Donnelly 1976: Dyadic Systems Limited Dyadic Systems Limited was formed in 1976 by Ted Hare, Phil Goacher and David Crossley, who were working in the APL team at W.S. Atkins (Computing). They took with them several other Atkins employees, most notably Geoff Streeter (who was to become one of the core developers of Dyalog APL) and John Stembridge. Dyadic grew rapidly, supplying contract APL programmers to a number of multi-national clients, especially those who used the I.P. Sharp APL system. Among the first employees was Pauline Brand, who later played a major role in the development of the company and of Dyalog APL. I joined the company from W.H. Smith in 1980 and worked as an APL programmer/consultant at Rank Xerox, Beechams (now GlaxoSmithKline) and British Airways. 1981: The Birth of Dyalog APL Dyalog APL was conceived in 1981 at a meeting between Dyadic and Pamela Geisler of Zilog (UK) Ltd. Zilog was about to announce its System 8000, one of the first of what would become a flood of 16-bit microcomputers running various forms of the UNIX operating system. The name "Dyalog" was formed from "Dya(dic)" and "(Zi)log". Dyadic recruited John Scholes as designer/chief programmer for Dyalog APL. John had left the APL team at W. S. Atkins to work as one of the key developers on an APL interpreter for the new ICL 2900. Geoff Streeter switched from working as an APL contractor to become a developer on the project, under the technical leadership of David Crossley.