Linux kernel device driver testing

Detalhes bibliográficos
Autor(a) principal: Schmitt, Marcelo
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_ 1809091214445641728