This interactive website allows exploring research data associated with torte. We manually compiled this information using web search, gray literature, domain knowledge, and backward snowballing in relevant publications. While we aim for correctness, we do not claim to be complete - feel free to submit a pull request or comment on our roadmap with potential additions or corrections.

Our overall goal here is to give a broad overview over the configurable system software and its tool ecosystem for feature-model analysis. We discuss tools related to and relevant for (the analysis of) variability in system software, such as the Linux kernel. We focus on the problem space (e.g., KConfig) instead of the solution space (e.g., KBuild and the C preprocessor). The whole ecosystem has become very fragmented over time and is only partially interoperable. To mitigate this to some degree, we integrate several of the below-mentioned systems and tools into our declarative experimentation platform torte.

Here, we survey techniques used throughout system software to express features and their dependencies. In the following sections, we mostly focus on KConfig, as it is the single dominant configuration language in the domain of system software.

Loading ...

Here, we survey implementations of the KConfig language used throughout system software.

Here, we maintain a repository of configurable system software that relies on KConfig. Specifically, we consider software systems in the domain of system software (e.g., operating systems, firmware, embedded systems, ...). We also include supplementary ("higher-order") tools designed to assist in building or running system software (e.g., build systems for custom Linux distributions or low-level system libraries). We exclude systems in the domain of pure application software (even if they use KConfig).

Loading ...

Here, we survey tools that extract feature-model formulas from KConfig-based system software. The following table is intended to facilitate choosing the right tool for extracting such formulas. The tools differ considerably in their strategies to parse KConfig and encode its semantics.

Loading ...

Here, we survey tools that implement a CNF transformation for propositional formulas. The following table is intended to facilitate choosing the right tool for transforming into CNF. Most importantly, these tools subtly differ in the preserved semantics of the transformed formulas, and may be of varying time and space complexity. Also, the supported input/outputs formats and tool integrations sometimes differ considerably. We include tools that have been applied in the literature or that could potentially be applied. We exclude pure preprocessors (e.g., Arjun, pmc, pmc, or Dimagic), which can be applied after CNF has been established. We also exclude knowledge compilers (e.g., d4) for the same reason.

Loading ...
Loading ...
Loading ...
Loading ...