Embedded Programming with Modern C++ Cookbook: Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux.
This book is a collection of practical examples for understanding how embedded development is different from other desktop application development. You'll learn to build an embedded application and use specialized memory and custom allocators. By the end of the book, you'll be able to buil...
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Elektronisch E-Book |
Sprache: | English |
Veröffentlicht: |
Birmingham :
Packt Publishing, Limited,
2020.
|
Schlagworte: | |
Online-Zugang: | Volltext |
Zusammenfassung: | This book is a collection of practical examples for understanding how embedded development is different from other desktop application development. You'll learn to build an embedded application and use specialized memory and custom allocators. By the end of the book, you'll be able to build robust and secure embedded applications with C++20. |
Beschreibung: | Description based upon print version of record. How to do it... |
Beschreibung: | 1 online resource (399 p.) |
ISBN: | 1838823204 9781838823207 |
Internformat
MARC
LEADER | 00000cam a2200000Ma 4500 | ||
---|---|---|---|
001 | ZDB-4-EBA-on1152057362 | ||
003 | OCoLC | ||
005 | 20241004212047.0 | ||
006 | m d | ||
007 | cr cnu---unuuu | ||
008 | 200509s2020 xx o 000 0 eng d | ||
040 | |a EBLCP |b eng |c EBLCP |d N$T |d OCLCF |d OCLCO |d OCLCQ |d OCLCO |d OCLCL | ||
020 | |a 1838823204 | ||
020 | |a 9781838823207 |q (electronic bk.) | ||
035 | |a (OCoLC)1152057362 | ||
050 | 4 | |a TK7895.E42 | |
082 | 7 | |a 006.2/2 |2 23 | |
049 | |a MAIN | ||
100 | 1 | |a Viarheichyk, Igor. | |
245 | 1 | 0 | |a Embedded Programming with Modern C++ Cookbook |h [electronic resource] : |b Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux. |
260 | |a Birmingham : |b Packt Publishing, Limited, |c 2020. | ||
300 | |a 1 online resource (399 p.) | ||
500 | |a Description based upon print version of record. | ||
505 | 0 | |a Cover -- Title Page -- Copyright and Credits -- Dedication -- About Packt -- Contributors -- Table of Contents -- Preface -- Chapter 1: Fundamentals of Embedded Systems -- Exploring embedded systems -- How are they different from desktop or web applications? -- Types of embedded systems -- Microcontrollers -- System on Chip -- Application-specific integrated circuits -- Field programmable gate arrays -- Working with limited resources -- Looking at performance implications -- Working with different architectures -- Endianness -- Alignment -- Fixed-width integer types | |
505 | 8 | |a Working with hardware errors -- Early versions of hardware -- Hardware is unreliable -- The influence of environmental conditions -- Using C++ for embedded development -- You don't pay for what you don't use -- Object-oriented programming to time the code complexity -- Resource acquisition is initialization -- Exceptions -- The powerful standard library -- Threads and a memory model as part of the language specification -- Deploying software remotely -- Running software remotely -- Logging and diagnostics -- Summary -- Chapter 2: Setting Up the Environment | |
505 | 8 | |a Setting up the build system in a Docker container -- How to do it... -- How it works... -- There's more... -- Working with emulators -- How to do it... -- How it works... -- There's more... -- Cross-compilation -- Getting ready -- How to do it... -- How it works... -- There's more... -- Connecting to the embedded system -- Getting ready -- How to do it... -- How it works... -- There's more... -- Debugging embedded applications -- Getting ready -- How to do it... -- How it works... -- There's more... -- Using gdbserver for remote debugging -- Getting ready -- How to do it... -- How it works... | |
505 | 8 | |a There's more... -- Using CMake as a build system -- Getting ready -- How to do it... -- How it works... -- There's more... -- Chapter 3: Working with Different Architectures -- Exploring fixed-width integer types -- How to do it... -- How it works... -- There's more... -- Working with the size_t type -- How to do it... -- How it works... -- There's more... -- Detecting the endianness of the platform -- How to do it... -- How it works... -- There's more... -- Converting the endianness -- How to do it... -- How it works... -- Working with data alignment -- How to do it... -- How it works... | |
505 | 8 | |a There's more... -- Working with packed structures -- How to do it... -- How it works... -- There's more... -- Aligning data with cache lines -- How to do it... -- How it works... -- There's more... -- Chapter 4: Handling Interrupts -- Data polling -- Interrupt service routines -- General considerations for ISRs -- 8051 microcontroller interrupts -- Implementing an interrupt service routine -- How to do it... -- How it works... -- Generating a 5 kHz square signal using 8-bit auto-reload mode -- How to do it... -- How it works... -- Using Timer 1 as an event counter to count a 1 Hz pulse | |
500 | |a How to do it... | ||
520 | |a This book is a collection of practical examples for understanding how embedded development is different from other desktop application development. You'll learn to build an embedded application and use specialized memory and custom allocators. By the end of the book, you'll be able to build robust and secure embedded applications with C++20. | ||
650 | 0 | |a Embedded computer systems |x Programming. |0 http://id.loc.gov/authorities/subjects/sh87006633 | |
650 | 0 | |a C++ (Computer program language) |0 http://id.loc.gov/authorities/subjects/sh87007505 | |
650 | 0 | |a Robust control. |0 http://id.loc.gov/authorities/subjects/sh99013330 | |
650 | 0 | |a Computer security |v Software. | |
650 | 6 | |a C++ (Langage de programmation) | |
650 | 6 | |a Commande robuste. | |
650 | 6 | |a Sécurité informatique |v Logiciels. | |
650 | 7 | |a C++ (Computer program language) |2 fast | |
650 | 7 | |a Computer security |2 fast | |
650 | 7 | |a Embedded computer systems |x Programming |2 fast | |
650 | 7 | |a Robust control |2 fast | |
655 | 7 | |a Software |2 fast | |
758 | |i has work: |a Embedded programming with modern C++ cookbook (Text) |1 https://id.oclc.org/worldcat/entity/E39PCGHKjj9VvmVYv49XdTxbMK |4 https://id.oclc.org/worldcat/ontology/hasWork | ||
776 | 0 | 8 | |i Print version: |a Viarheichyk, Igor |t Embedded Programming with Modern C++ Cookbook : Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux |d Birmingham : Packt Publishing, Limited,c2020 |
856 | 4 | 0 | |l FWS01 |p ZDB-4-EBA |q FWS_PDA_EBA |u https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=2449070 |3 Volltext |
938 | |a ProQuest Ebook Central |b EBLB |n EBL6178516 | ||
938 | |a EBSCOhost |b EBSC |n 2449070 | ||
994 | |a 92 |b GEBAY | ||
912 | |a ZDB-4-EBA | ||
049 | |a DE-863 |
Datensatz im Suchindex
DE-BY-FWS_katkey | ZDB-4-EBA-on1152057362 |
---|---|
_version_ | 1816882516153335808 |
adam_text | |
any_adam_object | |
author | Viarheichyk, Igor |
author_facet | Viarheichyk, Igor |
author_role | |
author_sort | Viarheichyk, Igor |
author_variant | i v iv |
building | Verbundindex |
bvnumber | localFWS |
callnumber-first | T - Technology |
callnumber-label | TK7895 |
callnumber-raw | TK7895.E42 |
callnumber-search | TK7895.E42 |
callnumber-sort | TK 47895 E42 |
callnumber-subject | TK - Electrical and Nuclear Engineering |
collection | ZDB-4-EBA |
contents | Cover -- Title Page -- Copyright and Credits -- Dedication -- About Packt -- Contributors -- Table of Contents -- Preface -- Chapter 1: Fundamentals of Embedded Systems -- Exploring embedded systems -- How are they different from desktop or web applications? -- Types of embedded systems -- Microcontrollers -- System on Chip -- Application-specific integrated circuits -- Field programmable gate arrays -- Working with limited resources -- Looking at performance implications -- Working with different architectures -- Endianness -- Alignment -- Fixed-width integer types Working with hardware errors -- Early versions of hardware -- Hardware is unreliable -- The influence of environmental conditions -- Using C++ for embedded development -- You don't pay for what you don't use -- Object-oriented programming to time the code complexity -- Resource acquisition is initialization -- Exceptions -- The powerful standard library -- Threads and a memory model as part of the language specification -- Deploying software remotely -- Running software remotely -- Logging and diagnostics -- Summary -- Chapter 2: Setting Up the Environment Setting up the build system in a Docker container -- How to do it... -- How it works... -- There's more... -- Working with emulators -- How to do it... -- How it works... -- There's more... -- Cross-compilation -- Getting ready -- How to do it... -- How it works... -- There's more... -- Connecting to the embedded system -- Getting ready -- How to do it... -- How it works... -- There's more... -- Debugging embedded applications -- Getting ready -- How to do it... -- How it works... -- There's more... -- Using gdbserver for remote debugging -- Getting ready -- How to do it... -- How it works... There's more... -- Using CMake as a build system -- Getting ready -- How to do it... -- How it works... -- There's more... -- Chapter 3: Working with Different Architectures -- Exploring fixed-width integer types -- How to do it... -- How it works... -- There's more... -- Working with the size_t type -- How to do it... -- How it works... -- There's more... -- Detecting the endianness of the platform -- How to do it... -- How it works... -- There's more... -- Converting the endianness -- How to do it... -- How it works... -- Working with data alignment -- How to do it... -- How it works... There's more... -- Working with packed structures -- How to do it... -- How it works... -- There's more... -- Aligning data with cache lines -- How to do it... -- How it works... -- There's more... -- Chapter 4: Handling Interrupts -- Data polling -- Interrupt service routines -- General considerations for ISRs -- 8051 microcontroller interrupts -- Implementing an interrupt service routine -- How to do it... -- How it works... -- Generating a 5 kHz square signal using 8-bit auto-reload mode -- How to do it... -- How it works... -- Using Timer 1 as an event counter to count a 1 Hz pulse |
ctrlnum | (OCoLC)1152057362 |
dewey-full | 006.2/2 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 006 - Special computer methods |
dewey-raw | 006.2/2 |
dewey-search | 006.2/2 |
dewey-sort | 16.2 12 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
format | Electronic eBook |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>05581cam a2200541Ma 4500</leader><controlfield tag="001">ZDB-4-EBA-on1152057362</controlfield><controlfield tag="003">OCoLC</controlfield><controlfield tag="005">20241004212047.0</controlfield><controlfield tag="006">m d </controlfield><controlfield tag="007">cr cnu---unuuu</controlfield><controlfield tag="008">200509s2020 xx o 000 0 eng d</controlfield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">EBLCP</subfield><subfield code="b">eng</subfield><subfield code="c">EBLCP</subfield><subfield code="d">N$T</subfield><subfield code="d">OCLCF</subfield><subfield code="d">OCLCO</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">OCLCO</subfield><subfield code="d">OCLCL</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">1838823204</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781838823207</subfield><subfield code="q">(electronic bk.)</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)1152057362</subfield></datafield><datafield tag="050" ind1=" " ind2="4"><subfield code="a">TK7895.E42</subfield></datafield><datafield tag="082" ind1="7" ind2=" "><subfield code="a">006.2/2</subfield><subfield code="2">23</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">MAIN</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Viarheichyk, Igor.</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Embedded Programming with Modern C++ Cookbook</subfield><subfield code="h">[electronic resource] :</subfield><subfield code="b">Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux.</subfield></datafield><datafield tag="260" ind1=" " ind2=" "><subfield code="a">Birmingham :</subfield><subfield code="b">Packt Publishing, Limited,</subfield><subfield code="c">2020.</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">1 online resource (399 p.)</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">Description based upon print version of record.</subfield></datafield><datafield tag="505" ind1="0" ind2=" "><subfield code="a">Cover -- Title Page -- Copyright and Credits -- Dedication -- About Packt -- Contributors -- Table of Contents -- Preface -- Chapter 1: Fundamentals of Embedded Systems -- Exploring embedded systems -- How are they different from desktop or web applications? -- Types of embedded systems -- Microcontrollers -- System on Chip -- Application-specific integrated circuits -- Field programmable gate arrays -- Working with limited resources -- Looking at performance implications -- Working with different architectures -- Endianness -- Alignment -- Fixed-width integer types</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Working with hardware errors -- Early versions of hardware -- Hardware is unreliable -- The influence of environmental conditions -- Using C++ for embedded development -- You don't pay for what you don't use -- Object-oriented programming to time the code complexity -- Resource acquisition is initialization -- Exceptions -- The powerful standard library -- Threads and a memory model as part of the language specification -- Deploying software remotely -- Running software remotely -- Logging and diagnostics -- Summary -- Chapter 2: Setting Up the Environment</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Setting up the build system in a Docker container -- How to do it... -- How it works... -- There's more... -- Working with emulators -- How to do it... -- How it works... -- There's more... -- Cross-compilation -- Getting ready -- How to do it... -- How it works... -- There's more... -- Connecting to the embedded system -- Getting ready -- How to do it... -- How it works... -- There's more... -- Debugging embedded applications -- Getting ready -- How to do it... -- How it works... -- There's more... -- Using gdbserver for remote debugging -- Getting ready -- How to do it... -- How it works...</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">There's more... -- Using CMake as a build system -- Getting ready -- How to do it... -- How it works... -- There's more... -- Chapter 3: Working with Different Architectures -- Exploring fixed-width integer types -- How to do it... -- How it works... -- There's more... -- Working with the size_t type -- How to do it... -- How it works... -- There's more... -- Detecting the endianness of the platform -- How to do it... -- How it works... -- There's more... -- Converting the endianness -- How to do it... -- How it works... -- Working with data alignment -- How to do it... -- How it works...</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">There's more... -- Working with packed structures -- How to do it... -- How it works... -- There's more... -- Aligning data with cache lines -- How to do it... -- How it works... -- There's more... -- Chapter 4: Handling Interrupts -- Data polling -- Interrupt service routines -- General considerations for ISRs -- 8051 microcontroller interrupts -- Implementing an interrupt service routine -- How to do it... -- How it works... -- Generating a 5 kHz square signal using 8-bit auto-reload mode -- How to do it... -- How it works... -- Using Timer 1 as an event counter to count a 1 Hz pulse</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">How to do it...</subfield></datafield><datafield tag="520" ind1=" " ind2=" "><subfield code="a">This book is a collection of practical examples for understanding how embedded development is different from other desktop application development. You'll learn to build an embedded application and use specialized memory and custom allocators. By the end of the book, you'll be able to build robust and secure embedded applications with C++20.</subfield></datafield><datafield tag="650" ind1=" " ind2="0"><subfield code="a">Embedded computer systems</subfield><subfield code="x">Programming.</subfield><subfield code="0">http://id.loc.gov/authorities/subjects/sh87006633</subfield></datafield><datafield tag="650" ind1=" " ind2="0"><subfield code="a">C++ (Computer program language)</subfield><subfield code="0">http://id.loc.gov/authorities/subjects/sh87007505</subfield></datafield><datafield tag="650" ind1=" " ind2="0"><subfield code="a">Robust control.</subfield><subfield code="0">http://id.loc.gov/authorities/subjects/sh99013330</subfield></datafield><datafield tag="650" ind1=" " ind2="0"><subfield code="a">Computer security</subfield><subfield code="v">Software.</subfield></datafield><datafield tag="650" ind1=" " ind2="6"><subfield code="a">C++ (Langage de programmation)</subfield></datafield><datafield tag="650" ind1=" " ind2="6"><subfield code="a">Commande robuste.</subfield></datafield><datafield tag="650" ind1=" " ind2="6"><subfield code="a">Sécurité informatique</subfield><subfield code="v">Logiciels.</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">C++ (Computer program language)</subfield><subfield code="2">fast</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Computer security</subfield><subfield code="2">fast</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Embedded computer systems</subfield><subfield code="x">Programming</subfield><subfield code="2">fast</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Robust control</subfield><subfield code="2">fast</subfield></datafield><datafield tag="655" ind1=" " ind2="7"><subfield code="a">Software</subfield><subfield code="2">fast</subfield></datafield><datafield tag="758" ind1=" " ind2=" "><subfield code="i">has work:</subfield><subfield code="a">Embedded programming with modern C++ cookbook (Text)</subfield><subfield code="1">https://id.oclc.org/worldcat/entity/E39PCGHKjj9VvmVYv49XdTxbMK</subfield><subfield code="4">https://id.oclc.org/worldcat/ontology/hasWork</subfield></datafield><datafield tag="776" ind1="0" ind2="8"><subfield code="i">Print version:</subfield><subfield code="a">Viarheichyk, Igor</subfield><subfield code="t">Embedded Programming with Modern C++ Cookbook : Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux</subfield><subfield code="d">Birmingham : Packt Publishing, Limited,c2020</subfield></datafield><datafield tag="856" ind1="4" ind2="0"><subfield code="l">FWS01</subfield><subfield code="p">ZDB-4-EBA</subfield><subfield code="q">FWS_PDA_EBA</subfield><subfield code="u">https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=2449070</subfield><subfield code="3">Volltext</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">ProQuest Ebook Central</subfield><subfield code="b">EBLB</subfield><subfield code="n">EBL6178516</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">EBSCOhost</subfield><subfield code="b">EBSC</subfield><subfield code="n">2449070</subfield></datafield><datafield tag="994" ind1=" " ind2=" "><subfield code="a">92</subfield><subfield code="b">GEBAY</subfield></datafield><datafield tag="912" ind1=" " ind2=" "><subfield code="a">ZDB-4-EBA</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-863</subfield></datafield></record></collection> |
genre | Software fast |
genre_facet | Software |
id | ZDB-4-EBA-on1152057362 |
illustrated | Not Illustrated |
indexdate | 2024-11-27T13:29:51Z |
institution | BVB |
isbn | 1838823204 9781838823207 |
language | English |
oclc_num | 1152057362 |
open_access_boolean | |
owner | MAIN DE-863 DE-BY-FWS |
owner_facet | MAIN DE-863 DE-BY-FWS |
physical | 1 online resource (399 p.) |
psigel | ZDB-4-EBA |
publishDate | 2020 |
publishDateSearch | 2020 |
publishDateSort | 2020 |
publisher | Packt Publishing, Limited, |
record_format | marc |
spelling | Viarheichyk, Igor. Embedded Programming with Modern C++ Cookbook [electronic resource] : Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux. Birmingham : Packt Publishing, Limited, 2020. 1 online resource (399 p.) Description based upon print version of record. Cover -- Title Page -- Copyright and Credits -- Dedication -- About Packt -- Contributors -- Table of Contents -- Preface -- Chapter 1: Fundamentals of Embedded Systems -- Exploring embedded systems -- How are they different from desktop or web applications? -- Types of embedded systems -- Microcontrollers -- System on Chip -- Application-specific integrated circuits -- Field programmable gate arrays -- Working with limited resources -- Looking at performance implications -- Working with different architectures -- Endianness -- Alignment -- Fixed-width integer types Working with hardware errors -- Early versions of hardware -- Hardware is unreliable -- The influence of environmental conditions -- Using C++ for embedded development -- You don't pay for what you don't use -- Object-oriented programming to time the code complexity -- Resource acquisition is initialization -- Exceptions -- The powerful standard library -- Threads and a memory model as part of the language specification -- Deploying software remotely -- Running software remotely -- Logging and diagnostics -- Summary -- Chapter 2: Setting Up the Environment Setting up the build system in a Docker container -- How to do it... -- How it works... -- There's more... -- Working with emulators -- How to do it... -- How it works... -- There's more... -- Cross-compilation -- Getting ready -- How to do it... -- How it works... -- There's more... -- Connecting to the embedded system -- Getting ready -- How to do it... -- How it works... -- There's more... -- Debugging embedded applications -- Getting ready -- How to do it... -- How it works... -- There's more... -- Using gdbserver for remote debugging -- Getting ready -- How to do it... -- How it works... There's more... -- Using CMake as a build system -- Getting ready -- How to do it... -- How it works... -- There's more... -- Chapter 3: Working with Different Architectures -- Exploring fixed-width integer types -- How to do it... -- How it works... -- There's more... -- Working with the size_t type -- How to do it... -- How it works... -- There's more... -- Detecting the endianness of the platform -- How to do it... -- How it works... -- There's more... -- Converting the endianness -- How to do it... -- How it works... -- Working with data alignment -- How to do it... -- How it works... There's more... -- Working with packed structures -- How to do it... -- How it works... -- There's more... -- Aligning data with cache lines -- How to do it... -- How it works... -- There's more... -- Chapter 4: Handling Interrupts -- Data polling -- Interrupt service routines -- General considerations for ISRs -- 8051 microcontroller interrupts -- Implementing an interrupt service routine -- How to do it... -- How it works... -- Generating a 5 kHz square signal using 8-bit auto-reload mode -- How to do it... -- How it works... -- Using Timer 1 as an event counter to count a 1 Hz pulse How to do it... This book is a collection of practical examples for understanding how embedded development is different from other desktop application development. You'll learn to build an embedded application and use specialized memory and custom allocators. By the end of the book, you'll be able to build robust and secure embedded applications with C++20. Embedded computer systems Programming. http://id.loc.gov/authorities/subjects/sh87006633 C++ (Computer program language) http://id.loc.gov/authorities/subjects/sh87007505 Robust control. http://id.loc.gov/authorities/subjects/sh99013330 Computer security Software. C++ (Langage de programmation) Commande robuste. Sécurité informatique Logiciels. C++ (Computer program language) fast Computer security fast Embedded computer systems Programming fast Robust control fast Software fast has work: Embedded programming with modern C++ cookbook (Text) https://id.oclc.org/worldcat/entity/E39PCGHKjj9VvmVYv49XdTxbMK https://id.oclc.org/worldcat/ontology/hasWork Print version: Viarheichyk, Igor Embedded Programming with Modern C++ Cookbook : Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux Birmingham : Packt Publishing, Limited,c2020 FWS01 ZDB-4-EBA FWS_PDA_EBA https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=2449070 Volltext |
spellingShingle | Viarheichyk, Igor Embedded Programming with Modern C++ Cookbook Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux. Cover -- Title Page -- Copyright and Credits -- Dedication -- About Packt -- Contributors -- Table of Contents -- Preface -- Chapter 1: Fundamentals of Embedded Systems -- Exploring embedded systems -- How are they different from desktop or web applications? -- Types of embedded systems -- Microcontrollers -- System on Chip -- Application-specific integrated circuits -- Field programmable gate arrays -- Working with limited resources -- Looking at performance implications -- Working with different architectures -- Endianness -- Alignment -- Fixed-width integer types Working with hardware errors -- Early versions of hardware -- Hardware is unreliable -- The influence of environmental conditions -- Using C++ for embedded development -- You don't pay for what you don't use -- Object-oriented programming to time the code complexity -- Resource acquisition is initialization -- Exceptions -- The powerful standard library -- Threads and a memory model as part of the language specification -- Deploying software remotely -- Running software remotely -- Logging and diagnostics -- Summary -- Chapter 2: Setting Up the Environment Setting up the build system in a Docker container -- How to do it... -- How it works... -- There's more... -- Working with emulators -- How to do it... -- How it works... -- There's more... -- Cross-compilation -- Getting ready -- How to do it... -- How it works... -- There's more... -- Connecting to the embedded system -- Getting ready -- How to do it... -- How it works... -- There's more... -- Debugging embedded applications -- Getting ready -- How to do it... -- How it works... -- There's more... -- Using gdbserver for remote debugging -- Getting ready -- How to do it... -- How it works... There's more... -- Using CMake as a build system -- Getting ready -- How to do it... -- How it works... -- There's more... -- Chapter 3: Working with Different Architectures -- Exploring fixed-width integer types -- How to do it... -- How it works... -- There's more... -- Working with the size_t type -- How to do it... -- How it works... -- There's more... -- Detecting the endianness of the platform -- How to do it... -- How it works... -- There's more... -- Converting the endianness -- How to do it... -- How it works... -- Working with data alignment -- How to do it... -- How it works... There's more... -- Working with packed structures -- How to do it... -- How it works... -- There's more... -- Aligning data with cache lines -- How to do it... -- How it works... -- There's more... -- Chapter 4: Handling Interrupts -- Data polling -- Interrupt service routines -- General considerations for ISRs -- 8051 microcontroller interrupts -- Implementing an interrupt service routine -- How to do it... -- How it works... -- Generating a 5 kHz square signal using 8-bit auto-reload mode -- How to do it... -- How it works... -- Using Timer 1 as an event counter to count a 1 Hz pulse Embedded computer systems Programming. http://id.loc.gov/authorities/subjects/sh87006633 C++ (Computer program language) http://id.loc.gov/authorities/subjects/sh87007505 Robust control. http://id.loc.gov/authorities/subjects/sh99013330 Computer security Software. C++ (Langage de programmation) Commande robuste. Sécurité informatique Logiciels. C++ (Computer program language) fast Computer security fast Embedded computer systems Programming fast Robust control fast |
subject_GND | http://id.loc.gov/authorities/subjects/sh87006633 http://id.loc.gov/authorities/subjects/sh87007505 http://id.loc.gov/authorities/subjects/sh99013330 |
title | Embedded Programming with Modern C++ Cookbook Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux. |
title_auth | Embedded Programming with Modern C++ Cookbook Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux. |
title_exact_search | Embedded Programming with Modern C++ Cookbook Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux. |
title_full | Embedded Programming with Modern C++ Cookbook [electronic resource] : Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux. |
title_fullStr | Embedded Programming with Modern C++ Cookbook [electronic resource] : Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux. |
title_full_unstemmed | Embedded Programming with Modern C++ Cookbook [electronic resource] : Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux. |
title_short | Embedded Programming with Modern C++ Cookbook |
title_sort | embedded programming with modern c cookbook practical recipes to help you build robust and secure embedded applications on linux |
title_sub | Practical Recipes to Help You Build Robust and Secure Embedded Applications on Linux. |
topic | Embedded computer systems Programming. http://id.loc.gov/authorities/subjects/sh87006633 C++ (Computer program language) http://id.loc.gov/authorities/subjects/sh87007505 Robust control. http://id.loc.gov/authorities/subjects/sh99013330 Computer security Software. C++ (Langage de programmation) Commande robuste. Sécurité informatique Logiciels. C++ (Computer program language) fast Computer security fast Embedded computer systems Programming fast Robust control fast |
topic_facet | Embedded computer systems Programming. C++ (Computer program language) Robust control. Computer security Software. C++ (Langage de programmation) Commande robuste. Sécurité informatique Logiciels. Computer security Embedded computer systems Programming Robust control Software |
url | https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=2449070 |
work_keys_str_mv | AT viarheichykigor embeddedprogrammingwithmodernccookbookpracticalrecipestohelpyoubuildrobustandsecureembeddedapplicationsonlinux |