Summit 2020 Developer Content
Lean how to optimize iptables-nft performance when using large rulesets by configuring the kernel cache, complete with test benchmark explanations.
Get an overview of changes to the tzdata package in 2019, as well as international time zone changes that could lead to package updates in 2020.
Write a Python-based application binary interface (ABI) checker to ensure backward compatibility between shared libraries in Linux systems
Discover the new -fanalyzer option coming to GCC 10 that provides a static analysis pass to identify problems at compile-time, rather than at runtime.
We describe the patches applied to Clang so that -D_FORTIFY_SOURCE works as well with Clang and glibc as it does with GCC and glibc.
Take an in-depth look at the MIR lightweight JIT compiler project's goals and state of development, such as the addition of support for CRuby.
Why and how to configure a small or large elfutils debuginfod service.
Report on papers discussed in the Concurrency and Parallelism Study Group (SG1) at the 2019 WG21 C++ Committee meeting in Cologne, Germany.
We show how to elegantly debug where a function returns using lldb from the command line.
Martin Sebor looks at C string handling functions used to copy and concatenate strings and examines ways to improve their efficiency.
The GNU C Library handles backward compatibility like a champ. Learn how to use compat symbols to control which version of glibc the linkers use.
We explain how C array sizes become part of the binary interface of a library and examine ways to avoid ABI compatibility issues.
Build microservices via one of these Java frameworks: Spring Boot, Dropwizard, and WildFly Swarm
You can't backport patches forever. At some point you have to rebase. How do you ensure applications continue compiling? Can you do both? Yes you can.
.NET Platform Invoke (PInvoke) makes it easy to consume native libraries. This article describes how to use PInvoke for Linux system functions.
This article highlights features, changes, and “gotchas” to look for in the latest version of the OpenMP standard, OpenMP 5.0.
This blog demonstrates how to build an RPM if you have minimal knowledge or experience doing that.
This article describes GCC compiler optimizations for jump threading. Jump threading's major goal is to reduce the number of dynamically executed jumps on different paths through the program's control flow graph, which often results in improved performance due to the reduction of conditionals and, in turn, enables further optimizations.
This article focuses on flow-based warnings that have increasingly been implemented in what GCC calls the "middle end." Limitations of middle-end warnings are discussed, as are false positives in middle-end warnings and possible solutions.
This article sheds light on how warnings work in GCC, why some warnings are false, and when warnings might not be output. Also discussed are the trade-offs made when implementing checks in GCC.
The upcoming GCC 9 release will have improved diagnostic messages, simpler C++ errors, more accurate error location reporting, and optional machine readable output for developer tools.
This article describes changes that were made to the Abigail library (Libabigail) application binary interface (ABI) change analysis framework and its associated set of tools in 2018.