Premium Essay

Java R. P.

In:

Submitted By hipcatjack
Words 6709
Pages 27
Deterministic Execution of Java’s Primitive Bytecode Operations
Fridtjof Siebert IPD, Universität Karlsruhe
Am Fasanengarten 5 76128 Karlsruhe, Germany

Andy WalterForschungszentrum Informatik (FZI)
Haid- und Neu Straße 10-14 76131 Karlsruhe, Germany

siebert@ira.uka.de

anwalt@ira.uka.de

This work was partially funded by the DFG program GRK 209--------

ABSTRACT

For the application of Java in realtime and safety critical domains, an analysis of the worst-case execution times of primitive Java operations is necessary. All primitive operations must either execute in constant time or have a reasonable upper bound for their execution time. The difficulties that arise for a Java virtual machine and a Java compiler in this context will be presented here. This includes the implementation of Java’s class and interface model, class initialization, monitors and automatic memory management. A new Java virtual machine and compiler that solves these difficulties has been implemented and its performance has been analysed.

Although incremental garbage collection techniques can help to reduce the likelihood for a blocking garbage collection pause, they can not guarantee it. It can still occur that the collector does not make sufficient progress and does not catch up with the application. Consequently, the system can fail or require long blocking pauses to recycle memory or defragment the heap. A deterministic implementation of Java must provide means to determine worst-case execution times for Java’s primitive operations. The dynamic structure of Java, with inheritance, virtual method calls and multiple-inheritance for interfaces, poses several difficulties for the implementation. The time required for calls or type checks must be limited and statically determinable. Further difficulties are caused by the dynamic nature of Java’s class loading and initialization

Similar Documents

Free Essay

Xzcxzczcxzczc

...Blackboard Security Assessment M. van Eekelen, R. Ben Moussa, E. Hubbers en R. Verdult Institute for Computing and Information Sciences Radboud University Nijmegen Technical Report ICIS-R13004, April 2013 Radboud University Nijmegen LaQuSo1 July 15, 20112 1 2 LaQuSo is a joint activity of Technische Universiteit Eindhoven and Radboud Universiteit Nijmegen published April 15, 2013, after a mutually agreed responsible non-disclosure period Contents I Advice in connection with the LaQuSo Blackboard SP5 Security Review Report 3 II Blackboard 9.1 SP5 Security Review Report 6 7 8 9 10 10 12 12 12 14 15 16 23 25 27 Management Summary 1 The task 2 The results 2.1 Successful attacks . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 Cross site scripting . . . . . . . . . . . . . . . . . . 2.1.2 Secondary vulnerabilities . . . . . . . . . . . . . . 2.2 Attacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Exploit 1: Session stealing . . . . . . . . . . . . . . 2.2.2 Exploit 2: Credential phishing . . . . . . . . . . . 2.2.3 Exploit 3: Improper access control (authorization) 2.3 Unsuccessful tests . . . . . . . . . . . . . . . . . . . . . . . 2.4 Test and production servers, patches and releases . . . . . 3 Security by design 4 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ....

Words: 14684 - Pages: 59

Free Essay

Assignment 1

...take a job in industry or go to graduate school." using De Morgan's law is "Kwame will not take a job in industry or will not go to graduate school."  True  False The negation of the statement "Kwame will take a job in industry or go to graduate school." using De Morgan's law is "Kwame will not take a job in industry and will not go to graduate school." References True / False  2. Award: 0 out of 3.33 points Chapter: 01 The Foundations: Logic and Proofs Section: 01.03 Propositional Equivalences     Find the negation of the statement "Yoshiko knows Java and calculus" using De Morgan's law.     Yoshiko knows Java or knows calculus. Yoshiko does not know Java or does not know calculus. Yoshiko knows Java and does not know calculus. Yoshiko does not know Java and does not know calculus. The De Morgan law to be used is ¬(p q) ¬p ¬q. References Multiple Choice  3. Award: 0 out of 3.33 points Chapter: 01 The Foundations: Logic and Proofs Section: 01.03 Propositional Equivalences     The negation of the statement "James is young and strong" using De Morgan's law is "James is not young, or he is not strong."  Is it true?   Yes  No The negation of the statement "James is young and strong" using De Morgan's law is "James is not young, or he is not strong." References Yes / No Chapter: 01 The Foundations: Logic and Proofs Section: 01.03 Propositional Equivalences ...

Words: 956 - Pages: 4

Free Essay

Snmp Tool Usage

...I R E A S O N I N G S N M P L I B R A R Y iReasoning SNMP API User Guide Copyright © 2002-2014 iDeskCentric Inc., All Rights Reserved. The information contained herein is the property of iDeskCentric Inc. This document may not be copied, reproduced, reduced to any electronic medium or machine readable form, or otherwise duplicated, and the information herein may not be used, disseminated or otherwise disclosed, except with the prior written consent of iDeskCentric Inc. I R E A S O N I N G S N M P L I B R A R Y Table of Contents INTRODUCTION....................................................................................................................................................................................................................1 About this document ................................................................................................................................................................................................................1 Target Audience .......................................................................................................................................................................................................................1 INSTALLATION .....................................................................................................................................................................................................................2 Requirements..............

Words: 5569 - Pages: 23

Free Essay

Java Basics

...1 Learn Java/J2EE core concepts and key areas With Java/J2EE Job Interview Companion By K.Arulkumaran & A.Sivayini Technical Reviewers Craig Malone Stuart Watson Arulazi Dhesiaseelan Lara D’Albreo Cover Design, Layout, & Editing A.Sivayini Acknowledgements A. Sivayini Mr. & Mrs. R. Kumaraswamipillai 2 Java/J2EE Job Interview Companion Copy Right 2005-2007 ISBN 978-1-4116-6824-9 The author has made every effort in the preparation of this book to ensure the accuracy of the information. However, information in this book is sold without warranty either expressed or implied. The author will not be held liable for any damages caused or alleged to be caused either directly or indirectly by this book. Please e-mail feedback & corrections (technical, grammatical and/or spelling) to java-interview@hotmail.com First Edition (220+ Q&A): Dec 2005 Second Edition (400+ Q&A): March 2007 3 Outline SECTION DESCRIPTION What this book will do for you? Motivation for this book Key Areas index SECTION 1 Interview questions and answers on: Java Fundamentals Swing Applet Performance and Memory issues Personal and Behavioral/Situational Behaving right in an interview Key Points SECTION 2 Interview questions and answers on: Enterprise Java J2EE Overview Servlet JSP JDBC / JTA JNDI / LDAP RMI EJB JMS XML SQL, Database, and O/R mapping RUP & UML Struts Web and Application servers. Best practices and performance considerations. Testing and deployment. Personal and...

Words: 23255 - Pages: 94

Premium Essay

Soot Framework

...1. Introduction Java language is a hybrid language neither compiled, nor interpreted. The Java language aims to provide the speed of a compiled language, as well as portability of an interpreted language. Because a java code can run on any platform with Java Virtual Machine installed some drawbacks are introduced in terms speed of the execution compared to compiler languages such as C and C++. To make the java code as portable as it is, after compilation, the java code is converted into a bytecode. A bytecode is then interpreted by the Java Virtual Machine. To take advantage of Java language and to speed up performance, sophisticated optimization techniques must be utilized. Among many methods of optimizations, such as directly manipulating the bytecode, or annotating the bytecode, “The Soot Framework” is a well developed tool for optimizing the java bytecode to improve performance. The Soot Framework manipulates and modifies any java code and generates an optimized bytecode. The optimized bytecode can be run on any Java Virtual Machine. The soot framework is designed in a way that java code can be optimized module by module, or the whole program. 2. The project Our team consists of Shivshankar Kanawade, Batbold Myagmarjav, and Taeghyun Kang. The project is to research the possibility of automatically detecting shared variables in a concurrent program utilizing The Soot Framework. The team also seeks to identify the shared variable characteristics with the help of intermediate...

Words: 1674 - Pages: 7

Free Essay

Lógica de Programação

...complementares. • 4 desafios. • 61 questões de prova. i Sumário Sobre a K19 Seguro Treinamento Termo de Uso Cursos 1 Introdução 1.1 O que é um Computador? . . . . . . . 1.2 Formato Binário . . . . . . . . . . . . . 1.3 Unidades . . . . . . . . . . . . . . . . . 1.4 Arquiteturas de Processadores . . . . . 1.5 O que é um Programa? . . . . . . . . . 1.6 Linguagem de Máquina . . . . . . . . 1.7 Linguagem de Programação . . . . . . 1.8 Compilador . . . . . . . . . . . . . . . . 1.9 Máquinas Virtuais . . . . . . . . . . . . 1.10 Hello World em Java . . . . . . . . . . . 1.11 Hello World em C# . . . . . . . . . . . . 1.12 Método Main . . . . . . . . . . . . . . . 1.13 Exercícios de Fixação Com Java . . . . 1.14 Exibindo mensagens . . . . . . . . . . 1.15 Comentários . . . . . . . . . . . . . . . 1.16 Indentação . . . . . . . . . . . . . . . . 1.17 Engenharia Reversa (Conteúdo Extra) 1.18 Ofuscadores (Conteúdo Extra) . . . . . 1.19 Exercícios de Fixação Com Java . . . . 1.20 Erro: Não Fechar os Blocos . . . . . . . 1.21 Erro: Trocar Maiúsculas e Minúsculas 1.22 Erro: Esquecer o Ponto e Vírgula . . . 1.23 Erro: Esquecer o Main . . . . . . . . . 1.24 Exercícios de Fixação Com C# . . . . . 1.25 Exercícios Complementares . . . . . . 1.26 Desafios . . . . . . . . . . . . . . . . . . 1.27 Resumo do Capítulo . . . . . . . . . . . 1.28 Prova . . . . . . . . . . . . . . . . . . . . ii 1 2 3 4 1 1 3 4 5 7 7 7 8 9 10 11 13 13 15 16 16 17 17 17 18 19 20 21 22 23 24 24 26 31 31 31 33 33 35 35 35 36 37 ...

Words: 57401 - Pages: 230

Premium Essay

Rm Avakjll

...Chapters 3, 6, and 26 Chapters 4, 5, and 13 Chapters 4, 5, and 14 Chapters 15 and 16 Chapter 11 Chapter 12 Chapters 13 and 14 Chapter 1 presents ERWin, a popular data modeling software that allows database designers to represent Entity-Relationship diagrams and automatically generate relational SQL code to create the database in one of several commercial relational database management systems such as Oracle or Microsoft SQLServer. The material presented in this chapter is tutorial in nature and covers the COMPANY database design of the Elmasri/Navathe text in detail. Chapter 2 presents three interpreters that can be used to execute queries in Relational Algebra, Domain Relational Calculus, and Datalog. These interpreters are part of a Java package that includes a rudimentary database engine capable of storing relations and able to perform basic relational...

Words: 18417 - Pages: 74

Free Essay

Thesis

...SUMMARY, CONCLUSION AND RECOMMENDATION Summary Because Lots A Pizza Bayan, Dasmariñas City is having difficulty using the manual process of their inventory and sales the researchers used this opportunity to develop a LAN-based inventory and sales management system for them. It minimized the manual task and maximized the employees’ time on doing their work because it lessens the time on generating sales and inventory summaries and reports. The researchers used NetBeans 7.1.1 Java SE as programming language and MySQL 5.1 command line client as database server. They started the development of the system on November 2011 and finished on January 2013. Conclusion The new system minimizes the time needed in managing and monitoring of inventory and sales of the business and it lessens the time and difficulty in generating reports. Based on the evaluation , the system got a mean 4.40 that proved to be very satisfactory and the system helps the employees to manage inventories and notify them that if there are critical stocks in the inventory. The system minimizes the effort in monitoring of sales performance and checking of inventory status. Delivery transactions are being organized and queued according to their date of transaction with the aid of the system. Advance delivery orders are accommodated by the system in proper queue and the system notify the user if there are advance orders. The system provides reports for sales performance. The system proved to be very satisfactory...

Words: 597 - Pages: 3

Free Essay

Public Policy

...作者:Br uce Eckel 主页:ht t p: //w w Br uceEckel . com w. 编译:Tr ans Bot 主页:ht t p: //m ber . net eas e. com r ans bot em /~t 致谢 --献给那些直到现在仍在孜孜不倦创造下一代计算机语言的人们! 指导您利用万维网的语言进行面向对象的程序设计 完整的正文、更新内容及程序代码可从 ht t p: //w w br uceeckel . com w. 下载 从 Java 的基本语法到它最高级的特性(网络编程、高级面向对象能力、多线程),《T hi nki ng I n Java》都 能对您有所裨益。Br uce Eckel 优美的行文以及短小、精悍的程序示例有助于您理解含义模糊的概念。 面向初学者和某种程度的专家 教授 Java 语言,而不是与平台有关的理论 覆盖 Java 1. 2 的大多数重要方面:Sw ng和新集合 i 系统讲述 Java 的高级理论:网络编程、多线程处理、虚拟机性能以及同非 Java 代码的连接 320 个有用的 Java 程序,15000 行以上代码 解释面向对象基本理论,从继承到设计方案 来自与众不同的获奖作者 Br uce Eckel 可通过万维网免费索取源码和持续更新的本书电子版 从 w w Br uceEckel . com w. 获得配套 C (含 15 小时以上的合成语音授课) D 读者如是说:“最好的 Java 参考书⋯⋯绝对让人震惊”;“购买 Java 参考书最明智的选择”;“我见过的 最棒的编程指南”。 Br uce Eckel 也是《T hi nki ng i n C ++》的作者,该书曾获 1995 年 Sof t w eD ar evel opm Jol t A ar d最佳书 ent w 籍大奖。作为一名有 20 经验的编程专家,曾教授过世界上许多地区的人进行对象编程。最开始涉及的领域是 C ++,现在也进军 Java。他是 C ++标准协会有表决权的成员之一,曾就面向对象程序设计这一主题写过其他 5 本书,发表过 150 多篇文章,并是多家计算机杂志的专栏作家,其中包括《W Techni ques 》的 Java 专栏。 eb 曾出席过 C ++和 Java 的“软件开发者会议”,并分获“应用物理”与“计算机工程”的学士和硕士学位。 读者的心声 比我看过的 Java 书好多了⋯⋯非常全面,举例都恰到好处,显得颇具“智慧”。和其他许多 Java 书 籍相比,我觉得它更成熟、连贯、更有说服力、更严谨。总之,写得非常好,肯定是一本学习 Java 的好书。(A ol y Vor obey,Techni onUni ver s i t y,Hai f a,以色列)。 nat 是我见过的最好的编程指南,对任何语言都不外如是。(Joaki m z i egl er ,FI X系统管理员) 感谢你写出如此优秀的一本 Java 参考书。(D . G n Pi l l ay,Regi s t r ar ,Ki ng Edw d VI I r avi ar Hos pi t al ,南非) 再次感谢您这本令人震惊的书。我以前真的有点儿不知所从的感觉(因为不是 C程序员),但你的书 浅显易懂,使我能很快掌握 Java——差不多就是阅读的速度吧。能从头掌握基本原理和概念的感觉 真好,再也不用通过不断的试验和出错来建立概念模型了。希望不久能有机会参加您的讲座。 (Randal l R. Haw ey,A om i on Techni...

Words: 180792 - Pages: 724

Premium Essay

Rubric

...allowed? 243 5. What is the probability that a fair die never comes up an even number when it is rolled six times? 0.016+- 0.001 (Note: Enter the value of probability in decimal format and round it to three decimal places.) 6. Let p and q be the propositions p: You have the flu. q: You miss the final examination. Identify an English translation that expresses the compound proposition p → q. * If you miss the final exam then you have the flu. * If you have the flu, then you miss the final exam. * If you have the flu, then you will not miss the final exam. * If you don't have the flu, then you miss the final exam. 7. Let q and r be the propositions q: You miss the final examination. r: You pass the course. An English translation of the compound proposition ¬q ↔ r is "You do not miss the final exam if and only if you pass the course." * Yes * No 8. Let q and r be the propositions q: You miss the final examination. r: You pass the course. An English translation of the compound proposition q → ¬r is "If you miss the final exam, then you pass the course." TRUE OR FALSE 9. Let p, q, and r be the propositions p: You have the flu. q: You miss the final examination. r: You pass the course. Identify the statement that express the compound proposition p q r as an English sentence. * You have the flu, or miss the final exam, or pass the course. * You have the flu, and miss the final exam, and do not pass the course. * You have the flu, or...

Words: 3659 - Pages: 15

Free Essay

Sun Micro Systems Case Study

...SPARCstation 10 system, the world’s first multiprocessing desktop computer in 1992. That same year they shipped more multiprocessing UNIX servers than any other vendor in their entire history of operation. Other major products contributed by Sun include the Solaris Operating System, Sparc Microprocessor, instant networking with Jini technology; which enables all kinds of devices to connect to the network—plug and play, and of course the famous Java technology. SUN Microsystems enjoyed 1.3 billion in revenues 1996 with server sales and topping out at 16 billion in quarterly sales in 1998 with the technology frenzied internet boom (Afuah & Tucci, 2003, p. 393). Java Technology Revolution: Java is by far the most widely used language in the world and is implemented in such places as web development, cell phones, gas pumps, and computers. Sun’s main involvements with Java are currently with their J2EE servers, workstations, Java development tools, standards, and the Solaris operating system (Sun Microsystems, 2006). Developed in early-1990, the Java platform was designed with the goal of allowing programs to...

Words: 3479 - Pages: 14

Free Essay

Lol Girl

...Blue Pelican Java by Charles E. Cook Version 3.0.5h Copyright © 2004 - 2008 by Charles E. Cook; Refugio, Tx (All rights reserved) 1-1 “Blue Pelican Java,” by Charles E. Cook. ISBN 1-58939-758-4. Published 2005 by Virtualbookworm.com Publishing Inc., P.O. Box 9949, College Station, Tx 77842, US. ©2005, Charles E. Cook. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, recording or otherwise, without the prior written permission of Charles E. Cook. Manufactured in the United States of America. Preface You will find this book to be somewhat unusual. Most computer science texts will begin with a section on the history of computers and then with a flurry of definitions that are just “so many words” to the average student. My approach with Blue Pelican Java is to first give the student some experience upon which to hang the definitions that come later, and consequently, make them more meaningful. This book does have a history section in Appendix S and plenty of definitions later when the student is ready for them. If you will look at Lesson 1, you will see that we go right to work and write a program the very first day. The student will not understand several things about that first program, yet he can immediately make the computer do something useful. This work ethic is typical of the remainder of the book. Rest assured that full understanding...

Words: 31284 - Pages: 126

Free Essay

Comp

...PROJECT: TOPIC: ECLIPSE THE UNIVERSITY OF LAHORE Submitted to: PROF KHURRA BAJWA Submitted by: 1. M.FAHAD SHAHZAD BCS02133518-G 2. IQRA ARSHAD BCS02133027-G 3. MALIKA ARIF BCS02133495-G 4. DANISH ADREES BCS02133042-G 5. ALI WARRAICH BCS021123133-G DEFINATION: 1. In computer programming, Eclipse is an integrated development environment (IDE). It contains a base workspace and an extensible plug-in system for customizing the environment. Written mostly in Java, Eclipse can be used to develop applications. By means of various plug-ins, Eclipse may also be used to develop applications in other programming languages: Ada, ABAP, C, C++, COBOL, Fortran, Haskell, JavaScript, Lasso, Lua, Natural, Perl,PHP, Prolog, Python, R, Ruby (including Ruby on Rails framework), Scala, Clojure, Groovy, Scheme, and Erlang. It can also be used to develop packages for the software Mathematica. 2. The Eclipse software development kit (SDK), which includes the Java development tools, is meant for Java developers. Users can extend its abilities by installing plug-ins written for the Eclipse Platform, such as development toolkits for other programming languages, and can write and contribute their own plug-in modules. ------------------------------------------------- ------------------------------------------------- History: Eclipse was inspired by the Smalltalk-based VisualAge family of integrated development environment (IDE) products,. Although fairly successful, a major...

Words: 2025 - Pages: 9

Free Essay

Hadoop Setup

...written in Java for running applications on large clusters of commodity hardware and incorporates features similar to those of the Google File System (GFS) and of the MapReduce computing paradigm. Hadoop’s HDFS is a highly fault-tolerant distributed file system and, like Hadoop in general, designed to be deployed on low-cost hardware. This document describes how to install, configure and manage non-trivial Hadoop clusters ranging from a few nodes to extremely large clusters with thousands of nodes. Required Software Required software for Linux and Windows include: 1. Java 1.6.x, preferably from Sun, must be installed. 2. ssh must be installed and sshd must be running to use the Hadoop scripts that manage remote Hadoop daemons. Installation Installing a Hadoop cluster typically involves unpacking the software on all the machines in the cluster. Typically one machine in the cluster is designated as the NameNode and another machine the as JobTracker, exclusively. These are the masters. The rest of the machines in the cluster act as both DataNode and TaskTracker. These are the slaves. The root of the distribution is referred to as HADOOP_HOME. All machines in the cluster usually have the same HADOOP_HOME path. Steps for Installation 1. Install java 1.6 Check java version: $ java –version 2. Adding dedicated user group $ sudo addgroup hadoop $ sudo adduser --ingroup hadoop hduser 3. Install ssh $ su - hduser Generate keypairs: $ ssh-keygen -t rsa -P "" Enable...

Words: 1213 - Pages: 5

Free Essay

Haddoop Installation

...tutorial, the required steps has been described for setting up a pseudo-distributed, single-node Hadoop cluster backed by the Hadoop Distributed File System, running on Ubuntu Linux. Installing Python $ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:ferramroberto/java Update the source list $ sudo apt-get update Install Sun Java 6 JDK $ sudo apt-get install sun-java6-jdk Select Sun's Java as the default on your machine. (See 'sudo update-alternatives --config java' for more information.) $ sudo update-java-alternatives -s java-6-sun The full JDK which will be placed in /usr/lib/jvm/java-6-sun (well, this directory is actually a symlink on Ubuntu). After installation, make a quick check whether Sun’s JDK is correctly set up: $ java –version java version "1.6.0_20" Java(TM) SE Runtime Environment (build 1.6.0_20-b02) Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode, sharing) Adding a dedicated Hadoop system user $ sudo addgroup hadoop $ sudo adduser --ingroup hadoop hduser This will add the user hduser and the group hadoop to your local machine. Configuring SSH user@ubuntu:~$ su – hduser hduser@ubuntu:~$ ssh-keygen -t rsa -P "" Generating public/private rsa key pair. Enter file in which to save the key (/home/hduser/.ssh/id_rsa): Created directory '/home/hduser/.ssh'. Your identification has been saved in /home/hduser/.ssh/id_rsa. Your public key has been saved in /home/hduser/.ssh/id_rsa.pub. The key fingerprint...

Words: 2067 - Pages: 9