Design and Development of a windows environment in a multiprogrammed system (three-year thesis)

The goal of this project was to build a full windowed graphical environment for a multiprogrammed system from scratch. The 2D graphic library algorithm does not use video card acceleration but guarantees good overral performance. It supports advanced features like trasparency, image distortion (for example a light gaussian blur effect) and up to 32 BPP color depth. The window manager uses composition. API requests can be synchronous or asynchronous.

This is just a subset of all the implemented features, just check the docs/graphics/TesiTriennale.pdf file (written in Italian) inside the source archive.

Source code and thesis pdf are published on Calcolatori Elettronici course site:
Direct Link:


EndlessFault KVM Virtual Machine Monitor

This software is a KVM enabled Virtual Machine Monitor. Keyboard and Video Card are emulated using a frontend/backend approach. It is included an ELF Loader and a full gdbstub implementation for debugging purposes.

Source repository:


Simulation of a CQI based Round Robin Scheduling Cellular Network

Project goal was to test performances (mainly throughput and response time) of a cellular network which schedule user packets in a round robin way. Omnet++ is used as the base framework for simulation. Results (converted into csv files) are analyzed by “analyze_csv.r” R script, which computes means, confidence intervals and a lot of useful plots. Two sub scheduling policies (FairCQI and BestCQI) are compared in two different scenarios (Uniform and Binomial distributed CQIs). Results are shown and explained into maindoc folder pdf document. There is also a shorter version of the document in form of pptx presentation.

Source repository:


Secure (Remote) File Access Protocol

A simple and multithreaded C++ file access server. Built for confidentiality and client authentication, it also supports multiple client accounts (using a SQLite3 database) and it is built using secure coding methodologies. Protocol has been validated using BAN Logic and depends on OpenSSL library.

Source repository: