Month: April 2020

  • io_uring By Example: An Article Series

    io_uring is a clever new, high-performance interface for asynchronous I/O for Linux without the drawbacks of the aio set of APIs. In this 3-part article series, we look at how to use io_uring to get the most common programming tasks done under Linux. We write a series of programs of increasing complexity to slowly but…

  • io_uring By Example: Part 3 – A Web Server with io_uring

    This article is a part of a series on io_uring Series introduction Part 1: Introduction to io_uring. In this article we create cat_uring based on the raw io_uring interface and cat_liburing, built on the higher level liburing. Part 2: Queuing multiple operations: We develop a file copying program, cp_liburing leveraging multiple requests with io_uring. Part…

  • io_uring By Example: Part 2 – Queuing multiple requests

    This article is a part of a series on io_uring Series introduction Part 1: Introduction to io_uring. In this article we create cat_uring based on the raw io_uring interface and cat_liburing, built on the higher level liburing. Part 2: This article. Part 3: A web server written using io_uring. In part 1, we saw how…

  • io_uring by example: Part 1 – Introduction

    This article is a part of a series on io_uring Series introduction Part 1: This article. Part 2: Queuing multiple operations: We develop a file copying program, cp_liburing leveraging multiple requests with io_uring. Part 3: A web server written using io_uring. Introduction Come to think about it, I/O, along with compute are the only two…