This page contains a list of some of the software packages I have
developed. Some of the projects are still active, depending on
personal availability and current interests. All software is
released as is
without any implied or explicit guarantee of
any kind.
Skip to the queueing package
The Brother HL-L2360DN is an inexpensive B/W laser printer with auto duplex and USB/Fast Ethernet connectivity. Brother provides printer drivers for Linux, but the drivers are only partially open source (they contain binary programs). However, the printer understands PCL6 and works perfectly with the standard pxlmono driver. Under Ubuntu 14.04 you can select Generic PCL 6/PCL XL Printer Foomatic/pxlmono from the Printer configuration panel, and everything wil work out of the box (setting the resolution, enabling/disabling duplexing); therefore, I feel to recommend this printer for those needing a cheap B/W laser ethernet printer with auto duplexing (Note: I did not test USB connectivity yet).
The PPD below is a minimal modification of pxlmono.ppd the adds support for the following printer-specific features:
The options above are supported through appropriate commands inserted into the PJL preamble. These commands are described in the Brother Printer Technical Reference Guide (while the Web page is in italian, the PDF document linked therein is in english).
The file Brother-HL-L2360DN.ppd is based on Generic-PCL_6_PCL_XL_Printer-pxlmono.ppd and is distributed under the terms of the GNU General Public License (GPL) as the original file.
Download (Last updated: 2014/11/2)
Skip to Data Distribution Management
The queueing
package (previously known as
qnetworks
toolbox) is a GNU Octave package for
analyzing Markov chains and queueing network models. It includes
implementations of the MVA
algorithm for open and closed QN (both single and multiclass networks are
supported). The queueing
package is free software,
released under the terms of the GNU GPL version 3 or later.
Learn more...
Skip to Erlang-TW
The High Level Architecture (HLA) specification (IEEE 1516) defines several Data Distribution Management (DDM) services to forward events generated on update regions to a set of subscription regions. For example, consider a simulation of vehicles moving over a two-dimensional terrain. In this case, each vehicle may be interested in events happening inside its area of interest (e.g., its field of view), that might be approximated with a rectangular region centered at the vehicle position. This kind of problem also arises in the context of Massively Multiplayer Online Games, where the game engine must send game updates only to players that might be affected, in order to reduce computation cost and network traffic. The DDM software package implements the Interval Tree Matching (ITM) algorithm for efficiently reporting intersections among d-dimensional rectangles. DDM is a joint work with Marco Mandrioli and Gabriele D'Angelo.
Learn more...
Skip to Go-Warp
ErlangTW (Erlang Time Warp) is a parallel/distributed simulation middleware based on the Time Warp synchronization protocol. ErlangTW is entirely written in Erlang, a concurrent, functional programming language specifically targeted at building distributed systems. ErlangTW allows simulation models to be executed either on single-core, multicore and distributed computing architectures. ErlangTW is a joint work with Luca Toscano and Gabriele D'Angelo. ErlangTW is free software, released under the terms of the GNU GPL, version 2.
Learn more...
Skip to P2P Cloud System
Go-Warp is a simulator based on the Time Warp synchronization algorithm and implemented using the Go programming language. Go is a general purpose programming language announced by Google in the late 2009 and now developed as an Open Source project. The Go language has good support for concurrency and communication; many features introduced in Go seem to have a good potential but its usage in Parallel And Distributed Simulation (PADS) is still not fully explored. Go-Warp is a joint work with Pietro Ansaloni and Gabriele D'Angelo. Go-Warp is free software, released under the terms of the GNU GPL, version 2.
Learn more...
Skip to Linux Webcam Server
Cloud Computing has gained popularity in both research and industrial communities. Cloud users can acquire computing resources on a need basis, achieving on demand scalability; Cloud providers can maximize resource utilizations of datacenters, increasing their return on investments. While Cloud systems are usually hosted in large datacenters and are centrally managed, other types of Cloud architectures can be imagined. P2PCS is a prototype implementation of a fully decentralized, P2P Cloud. A P2P Cloud allows organizations or even individual to build a computing infrastructure out of existing resources, which can be easily allocated among different tasks. P2PCS is a joint work with Michele Tamburini and Ozalp Babaoglu.
O. Babaoglu, M. Marzolla, M. Tamburini, Design and Implementation of a P2P Cloud System, proc. 27th Annual ACM Symposium on Applied Computing (SAC 2012), march 26—30, Riva del Garda, Italy, pp. 412—417, ACM ISBN 978-1-4503-0857-1 (see the publications page)
Download
Skip to Surface Interpolation
In this project I extended a previous work on creating time-lapse movies
with a Canon digital photo camera and gphoto
. Here I
describe how to build a webcam server with a Linux PC, a Canon
PowerShot A80 digital camera and a Logitech webcam. The server can
operate outdoor, and can be remotely controlled.
Learn more...
Skip to making cloud movies
I created some simple scripts for automatically downloading temperature and rain data from the MeteoVeneto meteo site and producing some nice temperature and rain maps using nothing more than GNU Octave and gnuplot.
Learn more... (sorry, in italian only).
Skip to making pdf documents from scanned pages
Some time ago I began experimenting with gphoto2 to capture snapshots of clouds, and generating time-lapse movies.
Learn more...
Skip to libsvmcell
I describe a simple procedure for scanning documents, postprocessing the raw images and joining them together to produce PDF documents (note: no OCR is performed).
Learn more...
Skip to Linux Webcam Server
libsvmcell
is an optimized version of libsvm for the Cell
Processor. libsvmcell
allows efficient training of
Support Vector
Machines, taking full advantage of the multiprocessor capabilities
of the Cell Broadband Engine.
Learn more...
Skip to meteo plots
griddata_cgs.m
is my simple
implementation in GNU Octave of the algorithms described in
Billings, S. D., Beatson, R. K and Newsam, G. N., 2001, Interpolation
of geophysical data using continuous global surfaces,
Geophysics, vol. 67, no. 6 (november-december 2002);
pp. 1810—1822. These algorithms are useful for fitting
two-dimensional scattered data using a continuous surface. The
implementation is similar to the griddata
Octave function. The source code for griddata_cgs.m
is released under the GNU GPL version 3 or later.
Download (Last updated 2012/09/29)
Skip to UML-PSI
libcppsim
is a process-oriented, discrete-event
simulation library written in C++, similar to C++Sim/JavaSim. libcppsim
should be considered alpha-quality software. libcppsim
is free software and is released under the terms of the GNU GPL version 2 or later.
This software is described in the paper:
libcppsim
: a Simula-like, Portable
Process-Oriented Simulation Library in C++ Proc. ESM'04,
the 18th European Simulation Multiconference (Graham Horton,
editor), Magdeburg, DE, jun 13–16 2004, ISBN 3-936150-35-4,
pp. 222—227 (see the publications page).
Download (Last updated: 2013/03/22)
umlPSI
(UML Performance SImulator) is a software tool
for performance evaluation of UML specifications. It is able to
derive a process-oriented simulation model from annotated UML
specifications, execute the model and compute performance
measures. More informations can be found on the publications page. umlPSI
should be considered alpha-quality software. umlPSI is free software
and is released under the terms of the GNU GPL version 2 or later.
This software is described (among others) in the paper: UML-PSI: the UML Performance SImulator by M. Marzolla, S. Balsamo, Proc. of the First International Conference on the Quantitative Evaluation of Systems (QEST 2004), Enschede, The Netherlands, September 27-30, 2004, pp. 340—341, IEEE Computer Society, ISBN 0-7695-2185-1 (see the publications page).
Download (Last updated: 2004/05/29)
Return to top