دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: 1
نویسندگان: Alexandru Radovici. Ioana Culic
سری:
ISBN (شابک) : 1484277880, 9781484277881
ناشر: Apress
سال نشر: 2022
تعداد صفحات: 542
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 6 مگابایت
در صورت تبدیل فایل کتاب Getting Started with Secure Embedded Systems: Developing IoT Systems for micro:bit and Raspberry Pi Pico Using Rust and Tock به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب شروع کار با سیستمهای جاسازی شده امن: توسعه سیستمهای اینترنت اشیا برای micro:bit و Raspberry Pi Pico با استفاده از Rust and Tock نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Table of Contents About the Authors About the Technical Reviewer Acknowledgments Chapter 1: Embedded Systems and Architectures The Eagle Has Landed The Architecture of a Generic Embedded System Central Processing Unit AVR PIC ARM MIPS x86/x64 RISC-V The System Bus The Memory Input/Output Devices The Storage Space The Interrupt Controller The Debug Interface Microcontrollers, Computers, and Hybrid Systems Microcontrollers Computers Hybrids Embedded Systems Platforms Summary Chapter 2: Embedded Systems Software Development What About the Software? Development Languages Assembly Language Structured Programming Python C/C++ and Arduino Assembly Language C# Rust A Few Words About Security C Programming and Safety Beware of Rust Bare Metal Embedded The Arduino Library CMSIS OpenCM3 The Rust Embedded Devices Working Group Real-Time Interrupt-Driven Concurrency Embedded Operating Systems and Frameworks FreeRTOS The Zephyr Project Mbed OS RIOT Tock Summary Chapter 3: The Tock System Architecture Why Tock? A Few Words About Operating Systems The Kernel The Drivers The Applications Services The Tock System Architecture User Space The Tock Kernel Hardware Drivers Capsules Security Facts The Tock User Space Architecture Process States System Calls Synchronous System Calls Asynchronous System Calls Shared Buffers The Process Memory The Grant Region Dynamic Grants Tock Application Package Tock Binary Format Tock Application Bundle Flashing the System The Debug Chip Flashing Programming The Safe Way Summary Chapter 4: Rust for Tock Introduction to Rust Rust Primary Data Types Mutability Who Owns A Value? Strings The Heap-Allocated String String Slices Borrowing Slices Lifetimes Who Is Responsible for Deallocation? Function Parameters and Return Values Lifetime Elision Rules Generics and Trait Objects A Kind of Inheritance Traits Generics-Based Implementation Implementation Using Trait Objects Rust Standard Traits Generic Structures Associated Types Null Values and Error Reporting Rust Concepts Used in Tock Interior Mutability Simple Values Optional Values Buffers Global Variables Buffer Lifetimes Unwrapping Values Transforming Values Summary Chapter 5: Getting Started with Tock Hardware Requirements About the Tock Repository The Tock Project Structure The libtock-c and libtock-rs Repositories Environment Setup Environment Setup for Programming the micro:bit Device Setup for Linux and macOS Systems Linux Systems MacOS Systems Windows Systems Linux Virtual Machine Install the Necessary Tools for the Raspberry Pi Pico Use the Raspberry Pi Directly to Compile and Deploy to the Pico Use The Raspberry Pi As a Gateway for the Pico The Setup for Linux and macOS Systems Linux Systems MacOS Systems The Setup for the Raspberry Pi Clone the Tock Kernel Source Code Clone Tock Additional Libraries Compile and Deploy the Tock Kernel and Applications Deploy the Tock Kernel on the micro:bit Use Gdb to Deploy Tock Use OpenOCD to Deploy Tock Hello World from micro:bit! Deploy the Tock Kernel on the Raspberry Pi Pico Compile and Deploy the Tock Kernel Using the Raspberry Pi Use Only OpenOCD to Deploy Tock Use Gdb to Deploy Tock Compile and Deploy the Tock Kernel from the Computer Hello World from Raspberry Pi Pico! Deploy the Application from the Raspberry Pi Deploy the Application from Your Computer Summary Chapter 6: The Structure of a Custom Tock System Initialize the Kernel Component Link the Tock Kernel Repository Add the Board-Specific Folder Build Information Create the Drivers Folder The Cargo.toml File Drivers Source Files Initialize the Userspace Component Link the libtock-c Repository Create the Applications Folder The Driver Userspace Component The Structure of a Sample Application The Rust Toolchain Build the Project Build the Kernel Build an Application Summary Chapter 7: Userspace Applications Development Hardware Requirements Userspace Capsule APIs The Timer Library The GPIO Library Application Example The LED Library Application Example The ADC Library Application Example The Sensor Libraries Reading The Temperature Reading The Motion Application Example Human Interaction Libraries The Console Library Application Example The Text Screen Library The Screen Library Application Example With the Pico Explorer Device The Button Library Application Example Persistent Data Storage Library Summary Chapter 8: Synchronous Syscall Capsules Hardware Requirements The Tock Capsule Why Write A Capsule? A Closer Look at The System Call Interface The Command System Call The CommandReturn Structure A Capsule’s Architecture The API Definition Writing the Capsule Defining the Driver Defining the Font Connecting the LEDs Slice vs Array Reference Usage Controlling the LEDs Display Digits and Letters The Syscall API Implementation Registering the Capsule The Board Implementation The KernelResources Trait System Calls Filters Drivers Registration Starting The Kernel Capabilities The DigitLetterDisplay Capsule Registration Writing the Userspace Library The Header File The Library Using the Library Inside the Process Run the Project on the Raspberry Pi Pico The Hardware Setup Setting Up the Driver Using the Driver Summary Chapter 9: Asynchronous Syscall Capsules Requirements Extending the API The command System Call The subscribe System Call The allow System Call Capsule Architecture Asynchronous Tock Drivers Writing the Capsule Defining the Capsule’s Data Structures The leds Field The alarm Field The grant Field How subscribe Works The Capsule’s State The Data Stored for Each Process Storing the Buffer Executing the Commands The Text Display Implementing the Delay Signaling the Application The Capsule Registration The Userspace Library Implementation The Userspace API The API Implementation Definitions Asynchronous API Synchronous API Writing an Example Application The Synchronous Application The Asynchronous Application Using the Raspberry Pi Pico Summary Chapter 10: Service Capsules Requirements The Separation Between Syscall and Service Capsules The TextScreen Driver The Architecture of the Capsule The Text Screen API The Driver Implementation Driver Initialization Buffers and Parameters Deferred Calls The TextScreen HIL Implementation Asynchronous Functions Printing the Text The Text Displaying Process The Setup Syscall API Implementation Capsule Registration Capsule Usage The Text Screen API The Setup API Use the Raspberry Pi Pico Summary Chapter 11: Tock Userspace Drivers Requirements The Tock Inter-Process Communication Library Use IPC to Implement a Userspace Driver The TextDisplay Service The Service API The Client Process Summary Chapter 12: Tock Systems Management Running Tockloader Use tockloader with the micro:bit Troubleshooting Use tockloader with the Raspberry Pi Pico Flash the Kernel Device Console Install/Remove Applications Tockloader Install Tockloader Uninstall Update an Application Inspect the Applications List Applications Inspect TAB Files Application Configurations Enable/Disable an Application Sticky Applications Fault Policies Write a Custom FaultPolicy Override the Fault Handler System Information Inspecting Processes System Status List Processes Control the System Processes Kernel Memory Summary Index