Login
HomePublicationsBEng Thesis

Biblioteca de emulação para plataforma modular de simulação de sistemas ciber-físicos
Ref: CISTER-TR-181002       Publication Date: 12, Oct, 2018

Biblioteca de emulação para plataforma modular de simulação de sistemas ciber-físicos

Ref: CISTER-TR-181002       Publication Date: 12, Oct, 2018

Abstract:
One of the biggest issues when developing cyber-physical systems is the ability to test them in a similar environment for which they were designed. The execution of these tests in the real environment may require large sums of money, or, the testing cycles can be slower than the expected reduction of these cycles. The objective of the KhronoSim project is the development of a modular and extensible testing platform, which shall allow whoever uses it to develop intuitive closed loop real-time tests for cyberphysical systems, via software. Therefore, the usage of a full-system emulator (which is an emulator that simulates at such a level of detail that the software can run directly on it, without any modification) is imperative simulate the environment of the testing target as faithfully as possible. In the scope of KhronoSim, the chosen emulator was QEMU. Considering this context, and to further approach the behavior of emulated systems to the behavior of real systems, this project focuses on: (1) the development of a library (QEMU-Lib) that is able to manipulate QEMU instances, to ease its use; (2) changing QEMU’s source code to implement a new feature, that reduces the execution frequency of a virtual machine, known as the throttle mechanism. QEMU-Lib was implemented having into account all the enumerated requirements made by the client. It is modular, extensible and concise, using C++ language and tested using BOOST. Using it, makes it possible to manipulate individual QEMU instances, should it be turning an instance on or off or sending commands via network sockets. The throttle mechanism was implemented by altering QEMU’s source code in the less invasive way possible and tested to measure its functional specificities. The results show that the data curve whilst having this mechanism activated is linear when the exiting condition is a time constraint and the computational load is null. When there is some computational load, namely the ordering of a vector using an algorithm of n ∗ log n complexity, the data curve presents a quadratic form.

Authors:
Renato Oliveira


BEng Thesis, Instituto Superior de Engenharia do Porto.
Porto.

Notes: Tese orientada por Cláudio Maia e Luis Miguel Pinho.



Record Date: 22, Oct, 2018