EDBT 2026 Demo / reviewers in the wild / expert
David Williams-King
dblp:68/8270
· DBLP profile ↗
10ranked-venue papers
3as first author
4since 2021 · last 2025
0000-0003-2447-4094ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 4 · 2 first-author · 1 since 2021Human-computer interaction and ubiquitous computing · 3 · 1 first-author · 2 since 2021Systems, architecture and hardware · 2 · 1 first-authorSecurity and privacy · 2 · 1 since 2021Graphics, computer vision, multimedia, augmented reality and games · 2 · 2 since 2021
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 |
Program analysis · 80% Compilers and program optimization · 20% | |
| Network and information security
3 papers |
Systems and software security · 100% |
Topics — the 7 heaviest of 7, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Program analysis
binary analysis |
1.1 | 3 | 2021 | XDA: Accurate, Robust Disassembly with Transfer Learning · NDSS 2021 Egalito: Layout-Agnostic Binary Recompilation · ASPLOS 2020 StateFormer: fine-grained type recovery from binaries using generative state modeling · ESEC/SIGSOFT FSE 2021 |
Program analysis › binary analysis
disassembly |
0.9 | 2 | 2021 | XDA: Accurate, Robust Disassembly with Transfer Learning · NDSS 2021 Egalito: Layout-Agnostic Binary Recompilation · ASPLOS 2020 |
Systems and software security
binary analysis |
0.5 | 1 | 2021 | StateFormer: fine-grained type recovery from binaries using generative state modeling · ESEC/SIGSOFT FSE 2021 |
Systems and software security › binary analysis
binary type recovery |
0.5 | 1 | 2021 | StateFormer: fine-grained type recovery from binaries using generative state modeling · ESEC/SIGSOFT FSE 2021 |
Compilers and program optimization
recompilation |
0.4 | 1 | 2020 | Egalito: Layout-Agnostic Binary Recompilation · ASPLOS 2020 |
Systems and software security
code randomization |
0.4 | 2 | 2020 | Shuffler: Fast and Deployable Continuous Code Re-Randomization · OSDI 2016 Egalito: Layout-Agnostic Binary Recompilation · ASPLOS 2020 |
Compilers and program optimization
code generation |
0.1 | 1 | 2016 | Shuffler: Fast and Deployable Continuous Code Re-Randomization · OSDI 2016 |
Methods — techniques the papers use, named apart from their topics
neural network · 1.0generative state modeling · 1.0intermediate representation · 0.9binary rewriting · 0.9transfer learning · 0.5
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Time-Series Grid Encoding of Eye-Tracking Data for Explainable AI in Dyslexia Detection
Linh Le, Quoc Toan Nguyen, Nghia Duong-Trung, David Williams-King |
ETRA | 4 |
| 2025 | Learning Disorder Detection Using Eye Tracking: Are Large Language Models Better Than Machine Learning?abstractLearning Disorder Detection Using Eye Tracking: Are Large Language Models Better Than Machine Learning? Quoc-Toan Nguyen, Hy Nguyen, Quang-Hieu Tang, Tien Truong, Van-Tuan Pham, Linh Le, David Williams-King |
ETRA | 7 |
| 2021 | XDA: Accurate, Robust Disassembly with Transfer Learning
Kexin Pei, Jonas Guan, David Williams-King, Suman Jana |
NDSS | 3 |
| 2021 | StateFormer: fine-grained type recovery from binaries using generative state modelingabstractBinary type inference is a critical reverse engineering task supporting many security applications, including vulnerability analysis, binary hardening, forensics, and decompilation. It is a difficult task because source-level type information is often stripped during compilation, leaving only binaries with untyped memory and register accesses. Existing approaches rely on hand-coded type inference rules defined by domain experts, which are brittle and require nontrivial effort to maintain and update. Even though machine learning approaches have shown promise at automatically learning the inference rules, their accuracy is still low, especially for optimized binaries. Kexin Pei, Jonas Guan, Matthew Broughton, Zhongtian Chen, Songchen Yao, David Williams-King, Vikas Ummadisetty, Baishakhi Ray, Suman Jana |
ESEC/SIGSOFT FSE | 6 |
| 2020 | Egalito: Layout-Agnostic Binary RecompilationabstractFor comprehensive analysis of all executable code, and fast turn-around time for transformations, it is essential to operate directly on binaries to enable profiling, security hardening, and architectural adaptation. Disassembling binaries is difficult, and prior work relies on a process virtual machine to translate references on the fly or inefficient binary code patching. Our Egalito recompiler leverages metadata present in current stripped x86_64 and ARM64 binaries to generate a complete disassembly, and allows arbitrary modifications that may affect program layout without any constraints from the original binary. We utilize our own layout-agnostic intermediate representation, which is low-level enough to make the regeneration of output code predictable, yet supports a dual high-level representation for sophisticated analysis. We demonstrate nine binary tools including a novel continuous code randomization technique where Egalito transforms itself, and software emulation of the control-flow integrity in upcoming hardware. We evaluated Egalito on a large set of Debian packages, completely analyzing 99.9% of a selection of 867 executables and libraries; a majority of 149 applicable Debian packages pass all tests under Egalito. On SPEC CPU 2006, thanks to our binary optimizations, Egalito actually observes a 1.7% performance speedup. David Williams-King, Hidenori Kobayashi, Kent Williams-King, Graham Patterson, Frank Spano, Yu Jian Wu, Vasileios P. Kemerlis |
ASPLOS | 1 |
| 2019 | Nibbler: debloating binary shared librariesabstractDevelopers today have access to an arsenal of toolkits and libraries for rapid application prototyping. However, when an application loads a library, the entirety of that library's code is mapped into the address space, even if only a single function is actually needed. The unused portion is bloat that can negatively impact software defenses by unnecessarily inflating their overhead or increasing their attack surface. Recent work has explored debloating as a way of alleviating the above problems, when source code is available. In this paper, we investigate whether debloating is possible and practical at the binary level. To this end, we present Nibbler: a system that identifies and erases unused functions within shared libraries. Nibbler works in tandem with defenses like continuous code re-randomization and control-flow integrity, enhancing them without incurring additional run-time overhead. We developed and tested a prototype of Nibbler on x86-64 Linux; Nibbler reduces the size of shared libraries and the number of available functions, for real-world binaries and the SPEC CINT2006 suite, by up to 56% and 82%, respectively. We also demonstrate that Nibbler benefits defenses by showing that: (i) it improves the deployability of a continuous re-randomization system for binaries, namely Shuffler, by increasing its efficiency by 20%, and (ii) it improves certain fast, but coarse and context-insensitive control-flow integrity schemes by reducing the number of gadgets reachable through returns and indirect calls by 75% and 49% on average. Ioannis Agadakos, David Williams-King, Vasileios P. Kemerlis, Georgios Portokalidis |
ACSAC | 3 |
| 2016 | Shuffler: Fast and Deployable Continuous Code Re-Randomization
David Williams-King, Graham Gobieski, Kent Williams-King, James P. Blake, Xinhao Yuan, Patrick Colp, Michelle Zheng, Vasileios P. Kemerlis, William Aiello |
OSDI | 1 |
| 2015 | Making lock-free data structures verifiable with artificial transactionsabstractAmong all classes of parallel programming abstractions, lock-free data structures are considered one of the most scalable and efficient thanks to their fine-grained style of synchronization. However, they are also challenging for developers and tools to verify because of the huge number of possible interleavings that result from fine-grained synchronizations. Xinhao Yuan, David Williams-King, Simha Sethumadhavan |
PLOS@SOSP | 2 |
| 2013 | Tolerating business failures in hosted applicationsabstractUsers of hosted web-based applications implicitly trust that those applications, and the data that is within them, will remain active and available indefinitely into the future. When a service is terminated, for reasons such as the insolvency of the business that is providing it, users risk the immediate loss of software functionality and may face the permanent loss of their own data. This paper presents Micasa, a runtime for hosted applications that allows a significant subset of application logic and user data to remain available even in the event of the failure of a provider's business. By allowing users to audit application dependence on hosted components, and maintain externalized and private copies of their own data and the logic that allows access to it, we believe that Micasa is a first step in the direction of a more balanced degree of trust and investment between application providers and their users. Jean-Sébastien Légaré, Dutch T. Meyer, Mark Spear, Alexandru Totolici, Sara Bainbridge, Kalan MacRow, Róbert Sumi, Quinlan Jung, Dennis Tjandra, David Williams-King, William Aiello, Andy Warfield |
SoCC | 10 |
| 2010 | Enbug: when debuggers go badabstractWe have developed a tool, enbug, that intentionally induces errors into software in a controlled fashion. The robustness of students' code can be challenged by presenting exotic failure scenarios for testing, without Herculean efforts on the part of teaching assistants or instructors. Enbug also has applications in computer security and secure software courses, by being able to inject specific flaws into existing software for students to locate and exploit. The implementation of enbug is an example of tool reuse, through the automated (ab)use of a debugger. David Williams-King, John Aycock, Daniel Medeiros Nunes de Castro |
ITiCSE | 1 |