YoVDO

Plan to Throw One Away - Pitfalls of API Design for Low-level Libraries and Kernel Interfaces

Offered By: Linux Foundation via YouTube

Tags

API Design Courses Data Structures Courses GPIOs Courses Systems Programming Courses Low-level Programming Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the challenges and best practices in API design for low-level user-space libraries and kernel interfaces in this 30-minute Linux Foundation conference talk. Delve into the concept of "Plan to Throw One Away" as presented by Bartosz Golaszewski from BayLibre. Learn about GPIO character devices and libgpiod, different types of compatibility, and the importance of adding reserved space to exposed structures. Discover why making data structures opaque in library headers is crucial and how to ensure your exposed structures work across 32 and 64-bit architectures. Uncover surprising details that can break the ABI and understand why maintaining the same user-space data model as the kernel is not advisable. Gain valuable insights to improve your API design skills for low-level systems programming.

Syllabus

Intro
GPIO character device & libgpiod
Types of compatibility
Add reserved space to your exposed structures
Make all data structures exposed in library headers opaque
Lesson #3 Make sure your exposed structures work on 32 and 64-bit architectures
Some surprising details can break the ABI
Don't try to keep the user-space data model same as the one in the kernel


Taught by

Linux Foundation

Tags

Related Courses

Google Cloud Apigee Certified API Engineer
A Cloud Guru
Amazon API Gateway para las aplicaciones sin servidor (Español LATAM) | Amazon API Gateway for Serverless Applications (Spanish from Latin America)
Amazon Web Services via AWS Skill Builder
Amazon API Gateway para las aplicaciones sin servidor (Español LATAM) | Amazon API Gateway for Serverless Applications (Spanish from Latin America)
Amazon Web Services via AWS Skill Builder
Building Modern Nodejs Applications on AWS
Amazon Web Services via edX
API Design and Fundamentals of Google Cloud's Apigee API Platform
Google via Google Cloud Skills Boost