Communicating with devices in Linux happens at different levels. The most basic layer of drivers is the kernel module. Among other things, these modules have unrestricted access to the operating system and, if necessary, provide access to users via interfaces such as block devices. This is where the I2C (https://learn.sparkfun.com/tutorials/i2c/all) driver offers the as /dev/i2c-1 bus (for example) that you can write to and read from. Using Rust, we can use this interface to create a driver for a sensor device that is connected to that bus. Let's see how that works.

Rust Programming Cookbook
By :

Rust Programming Cookbook
By:
Overview of this book
Rust 2018, Rust's first major milestone since version 1.0, brings more advancement in the Rust language. The Rust Programming Cookbook is a practical guide to help you overcome challenges when writing Rust code.
This Rust book covers recipes for configuring Rust for different environments and architectural designs, and provides solutions to practical problems. It will also take you through Rust's core concepts, enabling you to create efficient, high-performance applications that use features such as zero-cost abstractions and improved memory management. As you progress, you'll delve into more advanced topics, including channels and actors, for building scalable, production-grade applications, and even get to grips with error handling, macros, and modularization to write maintainable code. You will then learn how to overcome common roadblocks when using Rust for systems programming, IoT, web development, and network programming. Finally, you'll discover what Rust 2018 has to offer for embedded programmers.
By the end of the book, you'll have learned how to build fast and safe applications and services using Rust.
Table of Contents (12 chapters)
Preface
Starting Off with Rust
Going Further with Advanced Rust
Managing Projects with Cargo
Fearless Concurrency
Handling Errors and Other Results
Expressing Yourself with Macros
Integrating Rust with Other Languages
Safe Programming for the Web
Systems Programming Made Easy
Getting Practical with Rust
Other Books You May Enjoy
How would like to rate this book
Customer Reviews