Giovanni Agosta - Research & Teaching teaching:projects
http://home.deib.polimi.it/agosta/
2020-03-26T14:11:08+01:00Giovanni Agosta - Research & Teaching
http://home.deib.polimi.it/agosta/
http://home.deib.polimi.it/agosta/lib/images/favicon.icotext/html2009-10-20T12:20:52+01:00teaching:projects:a_data_personalization_framework_based_on_context-aware_preferences
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:a_data_personalization_framework_based_on_context-aware_preferences&rev=1256034052
Titolo: Reconfiguration 4 Reliability Area: FPGA design Pagina: <http://home.dei.polimi.it/miele/progetti.html#r4r>
Titolo: Fault Injection and Analysis Framework for FPGA design Area: FPGA design Pagina: <http://home.dei.polimi.it/miele/progetti.html#ffi>text/html2007-10-16T19:09:47+01:00teaching:projects:allocazione_ottima_delle_risorse_per_applicazioni_web_in_sistemi_multi-tier_in_sistemi_di_autonomic_computing
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:allocazione_ottima_delle_risorse_per_applicazioni_web_in_sistemi_multi-tier_in_sistemi_di_autonomic_computing&rev=1192554587
Proponente: Ing. D. Ardagna.
Per ridurre i costi dell'infrastruttura informatica le aziende molto spesso effettuano l'outsourcing dei loro sistemi IT a terze parti. I moderni Service center devono così offrire i loro servizi a molti clienti che condividono l'infrastruttura IT. Ciò richiede un uso efficiente delle risorse da parte dei Service Provider. L'obiettivo del progetto è quello di realizzare un sistema di allocazione delle risorse (RA) per l'infrastruttura informatica dei moderni Serv…text/html2009-01-09T12:13:14+01:00teaching:projects:asynchronous_delegates_in_ildjit
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:asynchronous_delegates_in_ildjit&rev=1231499594
Extend the implementation of CIL delegates (function pointers) in the ILDJIT virtual execution environment to support the asynchronous semantics (akin to futures).
This project is for two students, and requires programming in C language.
Contacts:text/html2009-01-09T11:58:08+01:00teaching:projects:code_instrumentation_for_security_analysis
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:code_instrumentation_for_security_analysis&rev=1231498688
The project aims at building tools to:
* Counter the new code injection vulnerability techniques based on “return-oriented programming”;
* Prevent buffer overflow exploiting through proper handling of segment violations;
* Control flow graph reconstruction for malware analysis.text/html2008-02-08T10:43:29+01:00teaching:projects:dacapo_benchmarks_in_c
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:dacapo_benchmarks_in_c&rev=1202463809
This project aims at the porting of the DaCapo benchmark suite from Java to C#.
The project is suitable for one to three students.
The contact person for this project is Simone Campanoni
This project is not anymore available
However, it is possible to work on the design of new C# benchmarks.text/html2008-10-17T18:11:12+01:00teaching:projects:data_download_from_gps_datalogging_system
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:data_download_from_gps_datalogging_system&rev=1224259872
Obiettivo del lavoro è sviluppare un semplice software per il download dei dati da un sistema di datalogging GPS.
Il sistema in questione è il Qstarz BT-Q1000.
Il software deve essere sviluppato in Java e ha lo scopo di realizzare dei metodi semplici per dialogare con quest'oggetto:text/html2009-04-23T11:28:47+01:00teaching:projects:data_recovery_tools
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:data_recovery_tools&rev=1240478927
The goal of these projects is to build a complete data recovery suite with forensic oriented features such as recovering data from hidden spots in the file system. The project also includes the construction of a multiplatform GUI in order to increase the usability of the tool.text/html2008-06-20T10:44:23+01:00teaching:projects:development_of_c_application_testbench
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:development_of_c_application_testbench&rev=1213951463
The goal of this project is to extend the result of previous work in web application resource allocation by porting the system to a C# based setting with fine grained control of resource allocation.
The project is suitable for one to three students. Three students version will include the development of a resource allocation plugin for the Virtual Execution Environmenttext/html2010-07-19T09:33:47+01:00teaching:projects:dynamic_library_wrapper_for_call_interception
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:dynamic_library_wrapper_for_call_interception&rev=1279524827
The goal of this project is to develop a program able to generate dynamic library wrappers (only Linux .so format will be considered).
The developed program should be able to correctly parse the .so format , extract all the externally exported symbols and generate a C source of a wrapper library which by default forwards the function call to the original library.text/html2008-02-08T10:42:00+01:00teaching:projects:functional_processor_simulation
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:functional_processor_simulation&rev=1202463720
The goal of this project is to extend existing simulators for one of several possible architectures (MIPS, ARM, AVR).
The project requires the use of the SystemC C++ library.text/html2010-02-03T16:28:38+01:00teaching:projects:game_scripting
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:game_scripting&rev=1265210918
The goal of this project is to either:
* Develop new 3D games using one of the popular 3D development frameworks (Irrlicht, Ogre 3D), or the Tao framework.
* Enhance one existing open source game with new features (ai, networking, scripting support, etc.). A partial list of possible targets includes:
* Battle for Wesnoth
* OpenTyrian (add network multiplayer, re-engineer the code base)text/html2009-01-09T12:30:55+01:00teaching:projects:gnu_go_acceleration_using_cuda
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:gnu_go_acceleration_using_cuda&rev=1231500655
The goal of the project is to speed up the evaluation of game states in wp>Go playing, using CUDA graphics hardware programming model.
The project is suitable for one to three students (depending on the algorithms chosen).
The development will be done in C using the CUDA Software Developers Kit and addressing the GNU Go implementation.text/html2010-02-03T16:27:56+01:00teaching:projects:gpu-based_cryptography
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:gpu-based_cryptography&rev=1265210876
The goal of this project is to develop an implementation of cryptographically related algorithm on a CUDA-based graphics processing unit.
At the moment , the algorithms of interest for a high performance implementantion are RSA and wp>McEliece.
Moreover, a number of the available projects focus on speeding up attacks cryptographic algorithms: in particular fast solution of linear system and fast evaluation of boolean formulas useful when dealing with automated cipher defectoscopy. Examples of…text/html2007-10-12T11:08:48+01:00teaching:projects:graphical_profiler_for_.net_vm
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:graphical_profiler_for_.net_vm&rev=1192180128
The goal of this project is to develop a graphical tool to launch, profile and display the results of benchmark programs running on an implementation of ECMA 335 (a.k.a. .NET).
The tool must be written in C#, using the Qt# porting of the well known Qt libraries.text/html2008-02-08T13:06:55+01:00teaching:projects:html_to_wiki_converter
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:html_to_wiki_converter&rev=1202472415
Goal Extend a translator from HTML to a Wiki syntax
Language C/C++ (or Python)
Tools Bison/Flex
Credits 1/2 students
This project aims at extending an existing translator from HTML to a set of wiki languages, including Dokuwiki. This translator is able to recognize internal links, and translate them to wiki references, as well as preserving the document layout and formatting. However, the code was developed across several Lab SW projects, and needs a software engineering step including…text/html2008-10-02T15:35:45+01:00teaching:projects:ildjit_internal_calls
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:ildjit_internal_calls&rev=1222954545
The ILDJIT dynamic compiler is supported by a large library of native functions. Currently, only a subsets of the functions is implemented. The goal of the project is to implement part of the library. The following groups of functions are available:text/html2009-09-17T09:39:45+01:00teaching:projects:installation_tool_for_ildjit
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:installation_tool_for_ildjit&rev=1253173185
ILDJIT is a free software implementation of the .NET framework for Linux, under development in the Formal Languages and Compiler Group.
The goal of this project is update the graphical tool that supports the download and installation process for ILDJIT and its dependencies to work with the new Sourceforge interface and to improve the parallel download system.text/html2008-02-08T12:38:48+01:00teaching:projects:j2me_midp_profile_for_jelatine
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:j2me_midp_profile_for_jelatine&rev=1202470728
Goal: Starting from the Jelatine VM, implement the MIPD profile for an embedded device. Language: C (and in part Java)
Tools: Jelatine VM (<http://www.sourceforge.net/projects/jelatine>)
Credits 1 to 3 students
The Java Micro Edition specification defines only a generic virtual machine, but lacks the device-specific features (communication, user interface). The goal of profiles is to provide a specification for these features that can be implemented by means on native methods on speci…text/html2007-10-12T10:59:59+01:00teaching:projects:logic_synthesis
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:logic_synthesis&rev=1192179599
We have developed a tool to perform fast Boolean Matching based on the well-known CUDD library. The tool is composed of a C library and a Python front-end.
The goal of the project is to study and re-engineer the tool, making it suitable for external use and development.text/html2009-01-09T12:05:52+01:00teaching:projects:minisat_on_cuda
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:minisat_on_cuda&rev=1231499152
This project aims at speeding up the execution of SAT solvers using the CUDA graphics hardware programming model.
The project is suitable for one to three students (depending on the algorithms chosen).
The development will be done in C using the CUDA Software Developers Kit. Minisat is a possible target SAT solver.text/html2007-10-12T10:29:07+01:00teaching:projects:mipd_profile_for_jelatine
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:mipd_profile_for_jelatine&rev=1192177747
Jelatine is a Java virtual machine for very small memory embedded system. It is free software, written entirely in portable ANSI C.
This project aims at the implementation of the MIDP profile (and especially the user interface for a palmtop device) for Jelatine. The target architecture may be chosen freely -- though the Internet Tablet OS (a.k.a. Nokia 770's Linux) and PalmOS are recommended.text/html2010-02-03T16:38:10+01:00teaching:projects:openmp_and_opencl_benchmark_suites
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:openmp_and_opencl_benchmark_suites&rev=1265211490
The goal of this project is to design and implement a application benchmark suites for the OpenMP/C and OpenCL extensions of the C language.
The project is suitable for both for undergraduates and graduates students (1 to 3 students depending on the application set).text/html2009-07-01T12:00:29+01:00teaching:projects:openoffice_reporting_accounting_tool
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:openoffice_reporting_accounting_tool&rev=1246442429
Goal of this project is to produce a suite of OpenOffice Python scripts to automate the generation of research reporting and accounting tasks for the Formal Languages & Compiler Group.
The tool takes as input a spreadsheet describing the research effort (manpower spent on various research projects) of the group for a given year, and produces time sheets formatted according to the department requirements for each group member.text/html2008-02-08T13:12:13+01:00teaching:projects:optshellildjit
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:optshellildjit&rev=1202472733
Optimization Shell plugin for ILDJIT
The goal of this project is to design and implement an optimization shell to enable the user to program optimization intelligence within the wp>ILDJIT dynamic compiler system.
ILDJIT is a free software implementation of the .NET framework for Linux, under development in the Formal Languages and Compiler Group. It uses RPC and Shared Memory to implement distributed code optimization servers.text/html2009-10-02T13:50:17+01:00teaching:projects:progetti_di_bioinformatica
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:progetti_di_bioinformatica&rev=1254484217
Ecco una descrizione di [progetti di area bioinformatica].
La persona da contattare per questi progetti e' Marco Masseroli.text/html2010-03-04T11:34:58+01:00teaching:projects:progetti_vari
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:progetti_vari&rev=1267698898
Un aggiornamento sintetico sui temi di progetto disponibili direttamente con me.
Alcuni argomenti di interesse al momento sono:
* Green IT: ottimizzazioni del codice C/Java per ridurre il consumo di potenza, studi comparativi relativi al consumo di potenza della stessa applicazione progettata con linguaggi e/o modelli di programmazione diversi;
* Compilatori per linguaggi di programmazione parallela: OpenMP, OpenCL, CUDA e altre varianti di C per calcolo ad alte prestazioni;
* Sviluppo d…text/html2007-10-12T10:32:52+01:00teaching:projects:register-memory_synchronization_for_ildjit
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:register-memory_synchronization_for_ildjit&rev=1192177972
ILDJIT is a free software implementation of the .NET framework for Linux, under development in the Formal Languages and Compiler Group.
To support some garbage collection algorithms, a method to synchronize the content of the registers with the respective memory locations is needed. The goal of this project is to design and implement a library to support this register to memory synchronization within the dynamic compiler.text/html2008-02-15T15:09:42+01:00teaching:projects:sistemi_di_comunicazione_per_disabili
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:sistemi_di_comunicazione_per_disabili&rev=1203084582
Sviluppo e test di un sistema per integrare un sistema di visione con sistemi per la comunicazione aumentativa (sistemi a scorrimento, T9, tastiere virtuali avanzate) e di sintesi vocale. Il progetto chiede di integrare e fare il tuning di alcuni sistemi disponibili e valutare la loro utilizzabilita' tramite test sistematici e di sviluppare alcuni scenari di comunicazione assistita tematici in ambiente Windows.text/html2008-02-08T13:08:05+01:00teaching:projects:smildjit
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:smildjit&rev=1202472485
Shared Memory for ILDJIT
ILDJIT is a free software implementation of the .NET framework for Linux, under development in the Formal Languages and Compiler Group. It currently uses RPC to implement distributed code optimization servers.
The goal of the project is to migrate the system to a Shared Memory implementation.text/html2009-04-23T11:18:01+01:00teaching:projects:static_code_analysis_for_vulnerability_identification
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:static_code_analysis_for_vulnerability_identification&rev=1240478281
The project focuses on implementing new modules for an existing tool for php source code analysis in order to automatically detect possible vulnerabilities at static time.
The tool is coded in Ocaml, a functional/object-oriented programming language.text/html2009-07-01T10:30:01+01:00teaching:projects:tar_pit_patch_for_iptables_netfilter
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:tar_pit_patch_for_iptables_netfilter&rev=1246437001
The Tar pit patch is designed to slow down the diffusion of worms.
Goal of this project is to support the Tar pit patch for Iptables, updating it to Linux kernel version 2.6.30 or newer.
Required skills: sound C programming. Kernel programming skills are not required, but will be achieved during the course of the project.text/html2009-07-01T10:40:04+01:00teaching:projects:tex_language_parsing_for_guitar_tabs
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:tex_language_parsing_for_guitar_tabs&rev=1246437604
Goal of this project is to build an automated tool to convert the common chords listings into the LaTeX songbook style. The tool should be able to transpose the songs automatically during translation.
For two students, the project requires also to add a trailing reference of the chords contained in the song using the GCHORDS package.text/html2007-11-21T10:33:56+01:00teaching:projects:trasformazione_di_file_xml
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:trasformazione_di_file_xml&rev=1195637636
Progetto proposto da Stefano Modafferi
Descrizione: Partendo da un file ws-BPEL annotato per supportare specifiche recovery actions del processo che rappresenta si dovrà generare un file ws-BPEL standard cioè compliant con la versione 1.1.
Linguaggi/Tool da usare: XSLT, suggerito StylusStudio (o ambienti XSLT alternativi)text/html2010-04-21T12:00:49+01:00teaching:projects:user-level_versioning_file_system
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:user-level_versioning_file_system&rev=1271844049
Wayback is a user-level versioning file system, based upon FUSE (version 2.8)
Right now, its log files intercept every single modification to the versioned file system. This leads to very cluttered log files, where it is quite hard for the user to find the previous version of a given file.text/html2007-10-31T15:46:08+01:00teaching:projects:vulnerability_identification_in_ecma_335
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:vulnerability_identification_in_ecma_335&rev=1193841968
Project goal: check the possibility to exploit features of the ECMA 335 specification for system intrusion.
Project tasks: develop C#/CIL programs to test the behaviour of the ECMA 335 implementations (.NET, Mono, Portable.Net, ILDJIT) and, where possible, identify the vulnerabilities.text/html2009-09-23T11:31:06+01:00teaching:projects:web_applications
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:web_applications&rev=1253698266
There are a few web applications I'm interested in, and projects are available in the area. Most of these will be Ajax-based projects, possibly using the PyJamas framework (Python tool similar to Google Web Toolkit), or directly in JavaScript/ECMAScript.text/html2008-10-02T15:37:21+01:00teaching:projects:xanlib_development
http://home.deib.polimi.it/agosta/doku.php?id=teaching:projects:xanlib_development&rev=1222954641
XanLib is a simple library to support synchronizable containers in ANSI C. The goal of this project is to improve XanLib by adding new options, such as fine-grained locking of data structures, support for generic graphs, more library-supported hash functions, portable profiling.