42,273 research outputs found
A Generic Storage API
We present a generic API suitable for provision of highly generic storage
facilities that can be tailored to produce various individually customised
storage infrastructures. The paper identifies a candidate set of minimal
storage system building blocks, which are sufficiently simple to avoid
encapsulating policy where it cannot be customised by applications, and
composable to build highly flexible storage architectures. Four main generic
components are defined: the store, the namer, the caster and the interpreter.
It is hypothesised that these are sufficiently general that they could act as
building blocks for any information storage and retrieval system. The essential
characteristics of each are defined by an interface, which may be implemented
by multiple implementing classes.Comment: Submitted to ACSC 200
The MMT API: A Generic MKM System
The MMT language has been developed as a scalable representation and
interchange language for formal mathematical knowledge. It permits natural
representations of the syntax and semantics of virtually all declarative
languages while making MMT-based MKM services easy to implement. It is
foundationally unconstrained and can be instantiated with specific formal
languages.
The MMT API implements the MMT language along with multiple backends for
persistent storage and frontends for machine and user access. Moreover, it
implements a wide variety of MMT-based knowledge management services. The API
and all services are generic and can be applied to any language represented in
MMT. A plugin interface permits injecting syntactic and semantic idiosyncrasies
of individual formal languages.Comment: Conferences on Intelligent Computer Mathematics (CICM) 2013 The final
publication is available at http://link.springer.com
Computing an Optimal Control Policy for an Energy Storage
We introduce StoDynProg, a small library created to solve Optimal Control
problems arising in the management of Renewable Power Sources, in particular
when coupled with an Energy Storage System. The library implements generic
Stochastic Dynamic Programming (SDP) numerical methods which can solve a large
class of Dynamic Optimization problems. We demonstrate the library capabilities
with a prototype problem: smoothing the power of an Ocean Wave Energy
Converter. First we use time series analysis to derive a stochastic Markovian
model of this system since it is required by Dynamic Programming. Then, we
briefly describe the "policy iteration" algorithm we have implemented and the
numerical tools being used. We show how the API design of the library is
generic enough to address Dynamic Optimization problems outside the field of
Energy Management. Finally, we solve the power smoothing problem and compare
the optimal control with a simpler heuristic control.Comment: Part of the Proceedings of the 6th European Conference on Python in
Science (EuroSciPy 2013), Pierre de Buyl and Nelle Varoquaux editors, (2014
AliEnFS - a Linux File System for the AliEn Grid Services
Among the services offered by the AliEn (ALICE Environment
http://alien.cern.ch) Grid framework there is a virtual file catalogue to allow
transparent access to distributed data-sets using various file transfer
protocols. (AliEn File System) integrates the AliEn file catalogue as
a new file system type into the Linux kernel using LUFS, a hybrid user space
file system framework (Open Source http://lufs.sourceforge.net). LUFS uses a
special kernel interface level called VFS (Virtual File System Switch) to
communicate via a generalised file system interface to the AliEn file system
daemon. The AliEn framework is used for authentication, catalogue browsing,
file registration and read/write transfer operations. A C++ API implements the
generic file system operations. The goal of AliEnFS is to allow users easy
interactive access to a worldwide distributed virtual file system using
familiar shell commands (f.e. cp,ls,rm ...) The paper discusses general aspects
of Grid File Systems, the AliEn implementation and present and future
developments for the AliEn Grid File System.Comment: 9 pages, 12 figure
Implementing a map based simulator for the location API for J2ME
The Java Location API for J2METM integrates generic positioning and orientation data with
persistent storage of landmark objects. It can be used to develop location based service
applications for small mobile devices, and these applications can be tested using simulation
environments. Currently the only simulation tools in the public domain are proprietary
mobile device simulators that are driven by GPS data log files, but it is sometimes useful to
be able to test location based services using interactive map-based tools. In addition, we
may need to experiment with extensions and changes to the standard API to support
additional services, requiring an open source environment. In this paper we describe the
implementation of an open source map-based simulation tool compatible with other
commonly used development and deployment tools
Adding Network Coding Capabilities to the WSNet Simulator
This technical report presents the implementation of a Network Coding module
in WSNet - a Wireless Sensor Network simulator. This implementation provides a
generic programming interface to allow an easy specialization of different
coding strategies: random, source/destination-oriented, intra/inter-flow, etc
Trusted Computing and Secure Virtualization in Cloud Computing
Large-scale deployment and use of cloud computing in industry
is accompanied and in the same time hampered by concerns regarding protection of
data handled by cloud computing providers. One of the consequences of moving
data processing and storage off company premises is that organizations have
less control over their infrastructure. As a result, cloud service (CS) clients
must trust that the CS provider is able to protect their data and
infrastructure from both external and internal attacks. Currently however, such
trust can only rely on organizational processes declared by the CS
provider and can not be remotely verified and validated by an external party.
Enabling the CS client to verify the integrity of the host where the
virtual machine instance will run, as well as to ensure that the virtual
machine image has not been tampered with, are some steps towards building
trust in the CS provider. Having the tools to perform such
verifications prior to the launch of the VM instance allows the CS
clients to decide in runtime whether certain data should be stored- or calculations
should be made on the VM instance offered by the CS provider.
This thesis combines three components -- trusted computing, virtualization technology
and cloud computing platforms -- to address issues of trust and
security in public cloud computing environments. Of the three components,
virtualization technology has had the longest evolution and is a cornerstone
for the realization of cloud computing. Trusted computing is a recent
industry initiative that aims to implement the root of trust in a hardware
component, the trusted platform module. The initiative has been formalized
in a set of specifications and is currently at version 1.2. Cloud computing
platforms pool virtualized computing, storage and network resources in
order to serve a large number of customers customers that use a multi-tenant
multiplexing model to offer on-demand self-service over broad network.
Open source cloud computing platforms are, similar to trusted computing, a
fairly recent technology in active development.
The issue of trust in public cloud environments is addressed
by examining the state of the art within cloud computing security and
subsequently addressing the issues of establishing trust in the launch of a
generic virtual machine in a public cloud environment. As a result, the thesis
proposes a trusted launch protocol that allows CS clients
to verify and ensure the integrity of the VM instance at launch time, as
well as the integrity of the host where the VM instance is launched. The protocol
relies on the use of Trusted Platform Module (TPM) for key generation and data protection.
The TPM also plays an essential part in the integrity attestation of the
VM instance host. Along with a theoretical, platform-agnostic protocol,
the thesis also describes a detailed implementation design of the protocol
using the OpenStack cloud computing platform.
In order the verify the implementability of the proposed protocol, a prototype
implementation has built using a distributed deployment of OpenStack.
While the protocol covers only the trusted launch procedure using generic
virtual machine images, it presents a step aimed to contribute towards
the creation of a secure and trusted public cloud computing environment
A Generic Checkpoint-Restart Mechanism for Virtual Machines
It is common today to deploy complex software inside a virtual machine (VM).
Snapshots provide rapid deployment, migration between hosts, dependability
(fault tolerance), and security (insulating a guest VM from the host). Yet, for
each virtual machine, the code for snapshots is laboriously developed on a
per-VM basis. This work demonstrates a generic checkpoint-restart mechanism for
virtual machines. The mechanism is based on a plugin on top of an unmodified
user-space checkpoint-restart package, DMTCP. Checkpoint-restart is
demonstrated for three virtual machines: Lguest, user-space QEMU, and KVM/QEMU.
The plugins for Lguest and KVM/QEMU require just 200 lines of code. The Lguest
kernel driver API is augmented by 40 lines of code. DMTCP checkpoints
user-space QEMU without any new code. KVM/QEMU, user-space QEMU, and DMTCP need
no modification. The design benefits from other DMTCP features and plugins.
Experiments demonstrate checkpoint and restart in 0.2 seconds using forked
checkpointing, mmap-based fast-restart, and incremental Btrfs-based snapshots
- …