InfoQ Homepage Operating Systems Content on InfoQ
-
Lessons from Adopting SwiftUI in an App with 50 Million Users
Most SwiftUI educational content focuses on small projects and sample apps that do not explain what it means to adopt it in a 50 million user app developed by a team of 20+ iOS engineers. This article will attempt to fill this gap. and show how to succeed without breaking your team, your app, or your users' trust along the way.
-
Borrowing from Kotlin/Android to Architect Scalable iOS Apps in SwiftUI
Building iOS apps can feel like stitching together guidance from blog posts and Apple samples, which are rarely representative of how production architectures grow and survive. In contrast, the Kotlin/Android ecosystem has converged on well-documented, real-world patterns. This article explores how those approaches can be translated into Swift/SwiftUI to create maintainable, scalable iOS apps.
-
Evaluating Kotlin Multiplatform: Benefits and Trade-Offs in Cross-Platform Development
KMP is emerging as an alternative for cross-platform development, offering a path to share code without sacrificing the performance and feel of a native application. KMP comes with its own set of trade-offs and this article dives deep into those. While it focuses primarily on Android and iOS, KMP can be used to build desktop, web, and server-side applications, all from the same shared logic.
-
Ceph RBD Turns 15: a Story of Open Source Creation
Fifteen years ago, Ceph RBD began as a community-driven idea that grew into essential infrastructure powering today's cloud platforms. This insider story from Yehuda Sadeh-Weinraub reveals how two developers started a distributed storage that now supports OpenStack and Kubernetes through transparent, collaborative development.
-
Proactive Approaches to Securing Linux Systems and Engineering Applications
Maintaining a strong security posture is challenging, especially with Linux. An effective approach is proactive and includes patch management, optimized resource allocation, and effective alerting.
-
Zero to Performance Hero: How to Benchmark and Profile Your eBPF Code in Rust
In this article, we will walk through creating a basic eBPF program in Rust. We will intentionally include a performance regression and then use profilers to locate and fix the bug. We will also create benchmarks and track them using a continuous benchmarking tool for CI.
-
Comparative Analysis of Major Distributed File System Architectures: GFS vs. Tectonic vs. JuiceFS
As storage needs continue to grow, traditional disk file systems have revealed their limitations. To address the growing storage demands, distributed file systems have emerged as dynamic and scalable solutions. In this article, we explore the design principles, innovations, and challenges addressed by three representative distributed file systems: Google File System (GFS), Tectonic, and JuiceFS.
-
Debugging Production: eBPF Chaos
This article shares insights into learning eBPF as a new cloud-native technology which aims to improve Observability and Security workflows. You’ll learn how chaos engineering can help, and get an insight into eBPF based observability and security use cases. Breaking them in a professional way also inspires new ideas for chaos engineering itself.
-
Learning eBPF for Better Observability
This article shares insights into learning eBPF as a new cloud-native technology which aims to improve Observability and Security workflows. Learn how to practice using the tools, and dive into your own development. Iterate on your knowledge step-by-step, and follow-up with more advanced use cases later.
-
The Silent Platform Revolution: How eBPF Is Fundamentally Transforming Cloud-Native Platforms
There is a silent eBPF revolution reshaping platforms and the cloud-native world in its image, and this is its story.
-
The Service and the Beast: Building a Windows Service that Does Not Fail to Restart
Windows Services play a key role in the Microsoft Windows operating system, and support the creation and management of long-running processes. When “Fast Startup” is enabled and the PC is started after a regular shutdown, though, services may fail to restart. The aim of this article is to create a persistent service that will always run and restart after Windows restarts, or after shutdown.
-
eBPF and the Service Mesh: Don't Dismiss the Sidecar Yet
While eBPF looks promising to improve service mesh sidecar proxy performance, there are other, simplier ways to improve performance. The layer 7 processing needed for service meshes is unlikely to be feasible in eBPF for the foreseeable future, which means that meshes will still need proxies.