Linux kernel device driver testing
Autor(a) principal: | |
---|---|
Data de Publicação: | 2022 |
Tipo de documento: | Dissertação |
Idioma: | eng |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da USP |
Texto Completo: | https://www.teses.usp.br/teses/disponiveis/45/45134/tde-30112022-152524/ |
Resumo: | Device drivers are an essential part of the Linux kernel. Bugs in these components may compromise the stability of any GNU/Linux operating system. To mitigate that, device drivers should be tested against many use case scenarios. However, that is not always easily achievable because device drivers rely on hardware components that might operate nondeterministically, fail unexpectedly, or be unavailable to developers. This research characterizes how Linux kernel device drivers are tested. To accomplish that, we carried out a mapping study, a grey literature review, and a survey with Linux device driver maintainers. Through these research methods, we are able to offer a comprehensive overview of the state of the practice about tests on Linux kernel device drivers. We have summarized the information gathered in a catalog of test tools used to test the Linux kernel and its device drivers. Further, we have evaluated those tools that showed the most promising for daily use by Linux developers. Finally, we offer an extensive characterization of Linux kernel testing tools. |
id |
USP_49f22ab251db7d40f72cbd18e7485e2d |
---|---|
oai_identifier_str |
oai:teses.usp.br:tde-30112022-152524 |
network_acronym_str |
USP |
network_name_str |
Biblioteca Digital de Teses e Dissertações da USP |
repository_id_str |
2721 |
spelling |
Linux kernel device driver testingTeste de drivers de dispositivo do kernel LinuxDevice driverDriver de dispositivoLinuxLinuxSoftware testTeste de softwareDevice drivers are an essential part of the Linux kernel. Bugs in these components may compromise the stability of any GNU/Linux operating system. To mitigate that, device drivers should be tested against many use case scenarios. However, that is not always easily achievable because device drivers rely on hardware components that might operate nondeterministically, fail unexpectedly, or be unavailable to developers. This research characterizes how Linux kernel device drivers are tested. To accomplish that, we carried out a mapping study, a grey literature review, and a survey with Linux device driver maintainers. Through these research methods, we are able to offer a comprehensive overview of the state of the practice about tests on Linux kernel device drivers. We have summarized the information gathered in a catalog of test tools used to test the Linux kernel and its device drivers. Further, we have evaluated those tools that showed the most promising for daily use by Linux developers. Finally, we offer an extensive characterization of Linux kernel testing tools.Drivers de dispositivo são uma parte essencial do kernel do Linux. Bugs nesses componentes podem comprometer a estabilidade de qualquer sistema operacional GNU/Linux. Para mitigar isso, os drivers de dispositivo devem ser testados em vários cenários de caso de uso. No entanto, isso nem sempre é facilmente alcançável porque os drivers de dispositivo dependem de componentes de hardware que podem operar de forma não determinística, falhar inesperadamente ou estar indisponíveis para os desenvolvedores. Esta pesquisa caracteriza como os drivers de dispositivo do kernel Linux são testados. Para isso, realizamos um mapeamento sistemático de literatura formal, uma revisão da literatura cinzenta e uma pesquisa com mantenedores de drivers de dispositivos do Linux. Por meio desses métodos de pesquisa, podemos oferecer uma visão abrangente do estado da prática dos testes de drivers de dispositivo do kernel Linux. Resumimos as informações reunidas em um catálogo de ferramentas de teste usadas para testar o kernel do Linux e seus drivers de dispositivo. Além disso, avaliamos as ferramentas que se mostraram mais promissoras para uso diário por desenvolvedores Linux. Por fim, oferecemos um ampla caracterização das ferramentas de teste do kernel Linux.Biblioteca Digitais de Teses e Dissertações da USPMeirelles, Paulo Roberto MirandaSchmitt, Marcelo2022-10-17info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://www.teses.usp.br/teses/disponiveis/45/45134/tde-30112022-152524/reponame:Biblioteca Digital de Teses e Dissertações da USPinstname:Universidade de São Paulo (USP)instacron:USPLiberar o conteúdo para acesso público.info:eu-repo/semantics/openAccesseng2022-12-05T21:25:57Zoai:teses.usp.br:tde-30112022-152524Biblioteca Digital de Teses e Dissertaçõeshttp://www.teses.usp.br/PUBhttp://www.teses.usp.br/cgi-bin/mtd2br.plvirginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.bropendoar:27212022-12-05T21:25:57Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP)false |
dc.title.none.fl_str_mv |
Linux kernel device driver testing Teste de drivers de dispositivo do kernel Linux |
title |
Linux kernel device driver testing |
spellingShingle |
Linux kernel device driver testing Schmitt, Marcelo Device driver Driver de dispositivo Linux Linux Software test Teste de software |
title_short |
Linux kernel device driver testing |
title_full |
Linux kernel device driver testing |
title_fullStr |
Linux kernel device driver testing |
title_full_unstemmed |
Linux kernel device driver testing |
title_sort |
Linux kernel device driver testing |
author |
Schmitt, Marcelo |
author_facet |
Schmitt, Marcelo |
author_role |
author |
dc.contributor.none.fl_str_mv |
Meirelles, Paulo Roberto Miranda |
dc.contributor.author.fl_str_mv |
Schmitt, Marcelo |
dc.subject.por.fl_str_mv |
Device driver Driver de dispositivo Linux Linux Software test Teste de software |
topic |
Device driver Driver de dispositivo Linux Linux Software test Teste de software |
description |
Device drivers are an essential part of the Linux kernel. Bugs in these components may compromise the stability of any GNU/Linux operating system. To mitigate that, device drivers should be tested against many use case scenarios. However, that is not always easily achievable because device drivers rely on hardware components that might operate nondeterministically, fail unexpectedly, or be unavailable to developers. This research characterizes how Linux kernel device drivers are tested. To accomplish that, we carried out a mapping study, a grey literature review, and a survey with Linux device driver maintainers. Through these research methods, we are able to offer a comprehensive overview of the state of the practice about tests on Linux kernel device drivers. We have summarized the information gathered in a catalog of test tools used to test the Linux kernel and its device drivers. Further, we have evaluated those tools that showed the most promising for daily use by Linux developers. Finally, we offer an extensive characterization of Linux kernel testing tools. |
publishDate |
2022 |
dc.date.none.fl_str_mv |
2022-10-17 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
https://www.teses.usp.br/teses/disponiveis/45/45134/tde-30112022-152524/ |
url |
https://www.teses.usp.br/teses/disponiveis/45/45134/tde-30112022-152524/ |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.relation.none.fl_str_mv |
|
dc.rights.driver.fl_str_mv |
Liberar o conteúdo para acesso público. info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
Liberar o conteúdo para acesso público. |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.coverage.none.fl_str_mv |
|
dc.publisher.none.fl_str_mv |
Biblioteca Digitais de Teses e Dissertações da USP |
publisher.none.fl_str_mv |
Biblioteca Digitais de Teses e Dissertações da USP |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da USP instname:Universidade de São Paulo (USP) instacron:USP |
instname_str |
Universidade de São Paulo (USP) |
instacron_str |
USP |
institution |
USP |
reponame_str |
Biblioteca Digital de Teses e Dissertações da USP |
collection |
Biblioteca Digital de Teses e Dissertações da USP |
repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP) |
repository.mail.fl_str_mv |
virginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.br |
_version_ |
1815257475319857152 |