The Linux kernel, one of the largest open source projects, is the core of millions of devices, from servers to smartphones, representing a fundamental pillar in today's IT infrastructures. The focus of this thesis is to contribute to the development of functionalities to simplify the querying of the kernel, making it possible to identify certain supported modules. This was achieved through two distinct approaches: the modification of a network scheduler for the validation of an attribute via Netlink, a protocol for communication between user-space and kernel-space, rather than manually, and the addition of support for encoding specific types of attributes for communication with the kernel via a command-line tool. The proposed changes, which were carefully reviewed by the community, were quite successful, being successfully integrated into the kernel. The work presented provides a solid basis for possible developments in the field of of kernel introspection.

Il kernel Linux, uno dei più ampi progetti open source, costituisce il cuore di milioni di dispositivi, dai server agli smartphone, rappresentando un pilastro fondamentale nelle attuali infrastrutture IT. Il focus di questa tesi è contribuire allo sviluppo di funzionalità volte a semplificare l’interrogazione del kernel, consentendo di identificare alcuni moduli supportati. Questo obiettivo è stato raggiunto attraverso due approcci distinti: la modifica di uno scheduler di rete per la validazione di un attributo tramite Netlink, un protocollo di comunicazione tra user-space e kernel-space, anziché manualmente, e l’aggiunta del supporto alla codifica di specifici tipi di attributi per la comunicazione con il kernel tramite uno strumento a riga di comando. Le modifiche proposte, sottoposte a un’attenta revisione da parte della community, hanno ottenuto un discreto successo, venendo integrate con successo nel kernel. Il lavoro presentato fornisce una solida base per possibili sviluppi nell’ambito dell’introspezione del kernel.

Un Passo Verso l'Introspezione del Kernel Linux

MARCOLINI, ALESSANDRO
2022/2023

Abstract

The Linux kernel, one of the largest open source projects, is the core of millions of devices, from servers to smartphones, representing a fundamental pillar in today's IT infrastructures. The focus of this thesis is to contribute to the development of functionalities to simplify the querying of the kernel, making it possible to identify certain supported modules. This was achieved through two distinct approaches: the modification of a network scheduler for the validation of an attribute via Netlink, a protocol for communication between user-space and kernel-space, rather than manually, and the addition of support for encoding specific types of attributes for communication with the kernel via a command-line tool. The proposed changes, which were carefully reviewed by the community, were quite successful, being successfully integrated into the kernel. The work presented provides a solid basis for possible developments in the field of of kernel introspection.
2022
2024-02-16
A Step Towards Linux Kernel Introspection
Il kernel Linux, uno dei più ampi progetti open source, costituisce il cuore di milioni di dispositivi, dai server agli smartphone, rappresentando un pilastro fondamentale nelle attuali infrastrutture IT. Il focus di questa tesi è contribuire allo sviluppo di funzionalità volte a semplificare l’interrogazione del kernel, consentendo di identificare alcuni moduli supportati. Questo obiettivo è stato raggiunto attraverso due approcci distinti: la modifica di uno scheduler di rete per la validazione di un attributo tramite Netlink, un protocollo di comunicazione tra user-space e kernel-space, anziché manualmente, e l’aggiunta del supporto alla codifica di specifici tipi di attributi per la comunicazione con il kernel tramite uno strumento a riga di comando. Le modifiche proposte, sottoposte a un’attenta revisione da parte della community, hanno ottenuto un discreto successo, venendo integrate con successo nel kernel. Il lavoro presentato fornisce una solida base per possibili sviluppi nell’ambito dell’introspezione del kernel.
File in questo prodotto:
File Dimensione Formato  
Tesi_Magistrale_Marcolini_Alessandro.pdf

accesso aperto

Dimensione 1.03 MB
Formato Adobe PDF
1.03 MB Adobe PDF Visualizza/Apri

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.12075/16578