Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Yoann Padioleau

dblp:24/4849 · DBLP profile ↗
← Back
10ranked-venue papers
8as first author
0since 2021 · last 2011
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 6 · 4 first-authorSystems, architecture and hardware · 4 · 4 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
4 papers
Software maintenance and evolution · 48% Operating systems · 16% Empirical software engineering · 15%
Computer architecture, parallel and distributed computing, and storage systems
3 papers
Storage systems · 100%
Databases, data mining, and information retrieval
1 paper
Data models and query languages · 77% Information retrieval · 23%

Topics — the 10 heaviest of 13, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Storage systems
file systems
0.232006
LISFS: a logical information system as a file system · ICSE 2006
A Parts-of-File File System · USENIX ATC, General Track 2005
A Logic File System · USENIX ATC, General Track 2003
Empirical software engineering
mining software repositories
0.222009
Listening to programmers - Taxonomies and characteristics of comments in operating system code · ICSE 2009
Understanding collateral evolution in Linux device drivers · EuroSys 2006
Concurrent programming
concurrency bug detection
0.112011
aComment: mining annotations from comments and code to detect interrupt related concurrency bugs · ICSE 2011
Software maintenance and evolution › software documentation › documentation analysis
code comment analysis
0.112009
Listening to programmers - Taxonomies and characteristics of comments in operating system code · ICSE 2009
Software maintenance and evolution
program comprehension
0.112009
Listening to programmers - Taxonomies and characteristics of comments in operating system code · ICSE 2009
Software maintenance and evolution
software documentation
0.112009
Listening to programmers - Taxonomies and characteristics of comments in operating system code · ICSE 2009
Compilers and program optimization
program transformation
0.112008
Documenting and automating collateral evolutions in linux device drivers · EuroSys 2008
Software maintenance and evolution › code change analysis
patch analysis
0.112006
Understanding collateral evolution in Linux device drivers · EuroSys 2006
Operating systems › i/o › i/o subsystem › device drivers
linux device drivers
0.022008
Documenting and automating collateral evolutions in linux device drivers · EuroSys 2008
Understanding collateral evolution in Linux device drivers · EuroSys 2006
Information retrieval
query formulation
0.012006
LISFS: a logical information system as a file system · ICSE 2006

Methods — techniques the papers use, named apart from their topics

dynamic analysis · 0.1annotation mining · 0.1plugin architecture · 0.1logical formula querying · 0.1random sampling · 0.1comment taxonomy · 0.1patch analysis · 0.1automated code transformation · 0.1automated patch analysis · 0.1
YearPublicationVenuePosition
2011 aComment: mining annotations from comments and code to detect interrupt related concurrency bugs
abstract
Concurrency bugs in an operating system (OS) are detrimental as they can cause the OS to fail and affect all applications running on top of the OS. Detecting OS concurrency bugs is challenging due to the complexity of the OS synchronization, particularly with the presence of the OS specific interrupt context. Existing dynamic concurrency bug detection techniques are designed for user level applications and cannot be applied to operating systems.
Lin Tan 0001, Yuanyuan Zhou 0001, Yoann Padioleau
ICSE3
2009 Parsing C/C++ Code without Pre-processing
Yoann Padioleau
CC1
2009 Listening to programmers - Taxonomies and characteristics of comments in operating system code
abstract
Innovations from multiple directions have been proposed to improve software reliability. Unfortunately, many of the innovations are not fully exploited by programmers. To bridge the gap, this paper proposes a new approach to “listen” to thousands of programmers: studying their programming comments. Since comments express programmers' assumptions and intentions, comments can reveal programmers' needs, which can provide guidance (1) for language/-tool designers on where they should develop new techniques or enhance the usability of existing ones, and (2) for programmers on what problems are most pervasive and important so that they should take initiatives to adopt some existing tools or language extensions. We studied 1050 comments randomly sampled from the latest versions of Linux, FreeBSD, and OpenSolaris. We found that 52.6% of these comments could be leveraged by existing or to-be-proposed tools for improving reliability. Our findings include: (1) many comments describe code relationships, code evolutions, or the usage and meaning of integers and integer macros, (2) a significant amount of comments could be expressed by existing annotation languages, and (3) many comments express synchronization related concerns but are not well supported by annotation languages.
Yoann Padioleau, Lin Tan 0001, Yuanyuan Zhou 0001
ICSE1
2008 Documenting and automating collateral evolutions in linux device drivers
abstract
The internal libraries of Linux are evolving rapidly, to address new requirements and improve performance. These evolutions, however, entail a massive problem of collateral evolution in Linux device drivers: for every change that affects an API, all dependent drivers must be updated accordingly. Manually performing such collateral evolutions is time-consuming and unreliable, and has lead to errors when modifications have not been done consistently.
Yoann Padioleau, Julia Lawall, René Rydhof Hansen, Gilles Muller
EuroSys1
2007 Towards easing the diagnosis of bugs in OS code
abstract
The rapid detection and treatment of bugs in operating systems code is essential to maintain the overall security and dependability of a computing system. A number of techniques have been proposed for detecting bugs, but little has been done to help developers analyze and treat them. In this paper we propose to combine bug-finding rules with transformations that automatically introduce bug-fixes or workarounds when a possible bug is detected. This work builds on our previous work on the Coccinelle tool, which targets device driver evolution.
Henrik Stuart, René Rydhof Hansen, Julia Lawall, Jesper Andersen, Yoann Padioleau, Gilles Muller
PLOS@SOSP5
2006 Semantic patches for documenting and automating collateral evolutions in Linux device drivers
abstract
Developing and maintaining drivers is known to be one of the major challenges in creating a general-purpose, practically-useful operating system [1, 3]. In the case of Linux, device drivers make up, by far, the largest part of the kernel source code, and many more drivers are available outside the standard kernel source tree. New drivers are needed all the time, to give access to the latest devices. To ease driver development, Linux provides a set of driver support libraries, each devoted to a particular bus or device type. These libraries encapsulate much of the complexity of interacting with the device and the Linux kernel, and impose a uniform structure on device-specific code within a given bus or device type.
Yoann Padioleau, René Rydhof Hansen, Julia Lawall, Gilles Muller
PLOS1
2006 Understanding collateral evolution in Linux device drivers
abstract
In a modern operating system (OS), device drivers can make up over 70% of the source code. Driver code is also heavily dependent on the rest of the OS, for functions and data structures defined in the kernel and driver support libraries. These properties pose a significant problem for OS evolution, as any changes in the interfaces exported by the kernel and driver support libraries can trigger a large number of adjustments in dependent drivers. These adjustments, which we refer to as collateral evolutions, may be complex, entailing substantial code reorganizations. As to our knowledge there exist no tools to help in this process, collateral evolution is thus time consuming and error prone.In this paper, we present a qualitative and quantitative assessment of collateral evolution in Linux device driver code. We provide a taxonomy of evolutions and collateral evolutions, and use an automated patch-analysis tool that we have developed to measure the number of evolutions and collateral evolutions that affect device drivers between Linux versions 2.2 and 2.6. In particular, we find that from one version of Linux to the next, collateral evolutions can account for up to 35% of the lines modified in such code.
Yoann Padioleau, Julia Lawall, Gilles Muller
EuroSys1
2006 LISFS: a logical information system as a file system
abstract
We present Logical Information Systems (LIS). A LIS can be viewed as a schema-less database whose objects are described by logical formulas. Objects are automatically organized according to their logical description, and logical formulas can be used for representing both queries and navigation links. The key feature of a LIS is that it answers a query with a set of navigation links expressed in the same logic as the query. As navigation links are dynamically computed from any query, and can be used as query increments, it follows that querying and navigation steps can be combined in any order.We then present LISFS, a file-system implementation of a LIS, where objects are files or parts of files. This has the benefit to make LIS features available right now to existing applications. This implementation can easily be extended and specialized through a plug-in mechanism.Finally, we present some applications in the field of personal databases (e.g., music, images, emails) and in the field of software engineering.
Yoann Padioleau, Benjamin Sigonneau, Olivier Ridoux
ICSE1
2005 A Parts-of-File File System
Yoann Padioleau, Olivier Ridoux
USENIX ATC, General Track1
2003 A Logic File System
Yoann Padioleau, Olivier Ridoux
USENIX ATC, General Track1