Analyze and Implement Parallel Firmware Update for Network Devices in Java

OData support
Kundra László János
Department of Automation and Applied Informatics

The serial programming disciplines could not compete with the continuously evolving requirements on modern software. Hence, a future software developer should be familiar with certain aspects of parallel programming.

For that reason, I studied the concept of concurrent programming. I learnt about the physical characteristics of various computer architectures and how they can be categorized or put to parallel execution. I examined several ways to break up a serial problem into parallelized chunks. I looked into the different ways on how a programmer or an automatic mechanism can detect parallelizable code snippets in serial software.

Afterwards I studied how Java language supports concurrent programming with basic support in the language and the Java class libraries.

Finally, I solved a concurrency related programming issue based on serial software. The task was to efficiently upgrade several devices on a network. I measured the different implementations’ performance considering CPU, memory, runtime and evaluated them based on their results.


Please sign in to download the files of this thesis.