Giovanni Agosta - Research & Teaching teaching:projects http://home.deib.polimi.it/agosta/ 2020-03-26T14:11:08+01:00 Giovanni Agosta - Research & Teaching http://home.deib.polimi.it/agosta/ http://home.deib.polimi.it/agosta/lib/images/favicon.ico text/html 2009-10-20T12:20:52+01:00 teaching: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/html 2007-10-16T19:09:47+01:00 teaching: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/html 2009-01-09T12:13:14+01:00 teaching: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/html 2009-01-09T11:58:08+01:00 teaching: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/html 2008-02-08T10:43:29+01:00 teaching: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/html 2008-10-17T18:11:12+01:00 teaching: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/html 2009-04-23T11:28:47+01:00 teaching: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/html 2008-06-20T10:44:23+01:00 teaching: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 Environment text/html 2010-07-19T09:33:47+01:00 teaching: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/html 2008-02-08T10:42:00+01:00 teaching: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/html 2010-02-03T16:28:38+01:00 teaching: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/html 2009-01-09T12:30:55+01:00 teaching: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/html 2010-02-03T16:27:56+01:00 teaching: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/html 2007-10-12T11:08:48+01:00 teaching: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/html 2008-02-08T13:06:55+01:00 teaching: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/html 2008-10-02T15:35:45+01:00 teaching: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/html 2009-09-17T09:39:45+01:00 teaching: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/html 2008-02-08T12:38:48+01:00 teaching: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/html 2007-10-12T10:59:59+01:00 teaching: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/html 2009-01-09T12:05:52+01:00 teaching: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/html 2007-10-12T10:29:07+01:00 teaching: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/html 2010-02-03T16:38:10+01:00 teaching: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/html 2009-07-01T12:00:29+01:00 teaching: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/html 2008-02-08T13:12:13+01:00 teaching: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/html 2009-10-02T13:50:17+01:00 teaching: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/html 2010-03-04T11:34:58+01:00 teaching: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/html 2007-10-12T10:32:52+01:00 teaching: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/html 2008-02-15T15:09:42+01:00 teaching: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/html 2008-02-08T13:08:05+01:00 teaching: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/html 2009-04-23T11:18:01+01:00 teaching: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/html 2009-07-01T10:30:01+01:00 teaching: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/html 2009-07-01T10:40:04+01:00 teaching: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/html 2007-11-21T10:33:56+01:00 teaching: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/html 2010-04-21T12:00:49+01:00 teaching: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/html 2007-10-31T15:46:08+01:00 teaching: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/html 2009-09-23T11:31:06+01:00 teaching: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/html 2008-10-02T15:37:21+01:00 teaching: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.