Automatic memory usage tracking for low-end firmware codebase

This thesis explains the design, implementation, and evaluation of an automated memory profiling tool for firmware used in modern printers developed by Hewlett Packard Inc. The project addresses the limitations of a previous tool, which was incapable of handling changes introduced in the new f...

Full description

Saved in:
Bibliographic Details
Main Author: Mikheil, Kvizhinadze
Other Authors: Meng-Hiot Lim
Format: Thesis-Master by Coursework
Language:English
Published: Nanyang Technological University 2025
Subjects:
Online Access:https://hdl.handle.net/10356/182644
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
Description
Summary:This thesis explains the design, implementation, and evaluation of an automated memory profiling tool for firmware used in modern printers developed by Hewlett Packard Inc. The project addresses the limitations of a previous tool, which was incapable of handling changes introduced in the new firmware generation architecture, relied on manual intervention, and lacked flexibility in processing diverse firmware configurations. The new tool automates the sending and receiving of printer firmware commands, introduces regex (regular expression)-based search methods for improved memory data extraction, and ensures cross-platform compatibility by eliminating dependencies on operating system-specific modules. The tool also integrates dual USB (Universal Serial Bus) connections to facilitate simultaneous boot log collection and direct interaction with printers. Enhanced functionalities, such as automatic detection of RAM (Random Access Memory), Flash, and EEPROM (Electrically Erasable Programmable Read-Only Memory) usage, alongside seamless integration with company-specific API (Application Programming Interface), improve both accuracy and usability. The modular design supports multiple file formats and ensures scalability for future upgrades. Empirical testing demonstrates a 2.98x reduction in processing time compared to the previous tool, contributing to greener software practices. The results showcase a robust solution that not only meets current firmware profiling requirements but also lays the groundwork for future innovations in automated device profiling and sustainable software development. Recommendations for future work include expanding the tool's compatibility with IoT (Internet of Things)-enabled systems and integrating advanced analytics for proactive resource management.