Klaus Elk
Embedded Software for the IoT
Klaus Elk
Embedded Software for the IoT
- Broschiertes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
With a mixture of theory, examples, and well-integrated figures, Embedded Software for the IoT helps the reader understand the details in the technologies behind the devices used in the Internet of Things. It provides an overview of IoT, parameters of designing an embedded system, and good practice concerning code, version control and defect-tracking needed to build and maintain a connected embedded system.
After presenting a discussion on the history of the internet and the word wide web the book introduces modern CPUs and operating systems. The author then delves into an in-depth view of…mehr
Andere Kunden interessierten sich auch für
- Suraj GauravPower BI Data Analysis and Visualization46,99 €
- Alasdair GilchristIoT Security Issues36,99 €
- Mark BecknerQuick Start Guide to Azure Data Factory, Azure Data Lake Server, and Azure Data Warehouse27,99 €
- Sven SalzwedelEntwurf und Implementierung eines Bootloader-Konzepts zur Programmierung eines Embedded Systems auf Basis der Texas Instruments MSP430 Mikrocontroller Familie39,99 €
- Scott DonaldsonUnderstanding Security Issues25,99 €
- Tobias ZepfBlockchain. Technologien, Innovationen und Anwendungen26,99 €
- Jill LeporeIf Then14,99 €
-
-
-
With a mixture of theory, examples, and well-integrated figures, Embedded Software for the IoT helps the reader understand the details in the technologies behind the devices used in the Internet of Things. It provides an overview of IoT, parameters of designing an embedded system, and good practice concerning code, version control and defect-tracking needed to build and maintain a connected embedded system.
After presenting a discussion on the history of the internet and the word wide web the book introduces modern CPUs and operating systems. The author then delves into an in-depth view of core IoT domains including:
Wired and wireless networking
Digital filters
Security in embedded and networked systems
Statistical Process Control for Industry 4.0
This book will benefit software developers moving into the embedded realm as well as developers already working with embedded systems.
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
After presenting a discussion on the history of the internet and the word wide web the book introduces modern CPUs and operating systems. The author then delves into an in-depth view of core IoT domains including:
Wired and wireless networking
Digital filters
Security in embedded and networked systems
Statistical Process Control for Industry 4.0
This book will benefit software developers moving into the embedded realm as well as developers already working with embedded systems.
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Produktdetails
- Produktdetails
- Verlag: De Gruyter
- Seitenzahl: 294
- Erscheinungstermin: 3. Dezember 2018
- Englisch
- Abmessung: 240mm x 170mm x 17mm
- Gewicht: 503g
- ISBN-13: 9781547417155
- ISBN-10: 1547417153
- Artikelnr.: 53185821
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
- Verlag: De Gruyter
- Seitenzahl: 294
- Erscheinungstermin: 3. Dezember 2018
- Englisch
- Abmessung: 240mm x 170mm x 17mm
- Gewicht: 503g
- ISBN-13: 9781547417155
- ISBN-10: 1547417153
- Artikelnr.: 53185821
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
Klaus Elk graduated as Master of Science (Electronics) in 1984, with a thesis on "Time-Delay Spectrometry"¿a Digital Signal Project. Two years later he graduated with a Bachelor of Economics (Marketing). He has since then worked mainly with telecommunications, medical electronics and sound and vibration in private industry. In parallel with this work, he taught courses at the Danish Technical University including courses in object oriented programming and the internet protocol stack. Recently he earned a "Mini MBA," and in the following year took a "Board-Member Masterclass." Today Elk works at Brüel & Kjær Sound & Vibration as R&D Manager of Instrumentation.
Introduction
1.1 The Tale of the Internet
1.2 The Cloud
1.3 Internet of Things
1.4 IoT related terms
I The Basic System
2 How to select an OS?
2.1 No OS and strictly polling
2.2 Co-routines
2.3 Interrupts
2.4 A small real-time kernel
2.5 A non-preemptive Operating System
2.6 Full OS
2.7 Open Source, GNU licensing and Linux
2.8 OS constructs
2.9 Further Reading
3 Which CPU to use?
3.1 Overview
3.2 CPU Core
3.3 CPU Architecture
3.4 Word-Size
3.5 MMU - Memory Managed Unit
3.6 RAM
3.7 Cache
3.8 EEPROM and Flash
3.9 FPU - Floating Point Unit
3.10 DSP
3.11 Crypto-Engine
3.12 Upgrade Path
3.13 Second Sources
3.14 Price
3.15 Export Control
3.16 RoHS-Compliance
3.17 Evaluation Boards
3.18 Tool-chain
3.19 Benchmarking
3.20 Power-Consumption
3.21 JTAG Debugger
3.22 Peripherals
3.23 Make or Buy
3.24 Further Reading
4 Software Architecture
4.1 Design for Performance
4.2 The fear of the white paper
4.3 Layers
4.4 Not just API's - more files
4.5 Object Model (Containment Hierarchy)
4.6 Case: CANOpen
4.7 Message Passing
4.8 Middleware
4.9 Case: Architectural Reuse in LAN-XI
4.10 Understanding C
4.11 Further Reading
5 Debug Tools
5.1 Simulator
5.2 ICE - In-Circuit-Emulator
5.3 Background or JTAG debugger
5.4 Target Stand-In
5.5 Debugger
5.6 strace
5.7 Debugging without special tools
5.8 Monitoring Messages
5.9 Test Traffic
6 Code Maintenance
6.1 Poor Man's Backup
6.2 Version Control - and git
6.3 Build and Virtualization
6.4 Static Code Analysis
6.5 Inspections
6.6 Tracking Defects & Features
6.7 Whiteboard
6.8 Documentation
6.9 Yocto
6.10 OpenWRT
6.11 Further Reading
III IoT Technologies
7 Networks
7.1 Introduction
7.2 Cerf & Kahn - internet as net of nets
7.3 Life of a packet
7.4 Life before the packet
7.5 Getting an IP address
7.6 DHCP
7.7 Network Masks, CIDR and Special Ranges
7.8 Reserved IP-Ranges
7.9 DNS
7.10 Introducing HTTP
7.11 REST
7.12 TCP sockets on IPv4 under Windows
7.13 IP Fragmentation
7.14 Introducing IPv6 addresses
7.15 TCP sockets on IPv6 under Linux
7.16 Data Transmission
7.17 UDP Sockets
7.18 A case of UDP on IPv6
7.19 Application Layer Protocols
7.20 Alternatives to the socket API
7.21 Ethernet Cabling
7.22 Physical Layer Problems
7.23 Further Reading
8 Network Tools
8.1 The Switch as a Tool
8.1.1 Mirroring
8.1.2 Statistics
8.1.3 Simulating lost frames
8.1.4 Pause frames
8.2 Tap
8.3 DHCP Server
8.4 IP scanner
8.5 SNMP
8.6 Wireshark
8.7 Network Commands
8.8 Further Reading
9 Wireless Networks
9.1 Introduction
9.2 Wi-Fi Basics
9.3 The Access Point as a Repeater
9.4 How is speed calculated?
9.5 Case: Wi-Fi Data-transmission
9.6 Case: Beacons
9.7 Why so hesitant?
9.8 Aggregated Frames
9.9 Channel Assessment
9.10 Bluetooth Low Energy
9.11 Certification
9.12 Further Reading
10 Security
10.1 Introduction
10.2 The goals of a Hacker
10.3 Network Security Concepts
10.4 Hash-function
10.5 Symmetric Key Encryption
10.6 Case Story: Enigma
10.7 Asymmetric Key Encryption
10.8 Digital Signature
10.9 Certificates
10.10 Message Authentication Code
10.11 Nonce
10.12 Secure Socket Communication
10.13 Case Story: Heartbleed
10.14 Case Story: WiFi Security
10.15 Software Crypto Libraries
10.16 Trusted Platform Module
10.17 Embedded Systems
10.18 Vulnerabilities in Embedded Systems
10.19 Export Control
10.20 Further Reading
11 Digital Filters
11.1 Why Digital?
11.2 Why Filters?
11.3 Basic Signal Analysis
11.3.1 About the Sample Frequency
11.3.2 Time and Frequency Domains and their Duality
11.3.3 Analog and Digital
11.3.4 More Duality
11.3.5 A Well-behaving System
11.4 IIR filter Basics
11.5 Implementing IIR
11.6 FIR Filter basics
11.7 Implementing FIR
11.8 Integers
11.9 Fixed Point Arithmetic
11.10 Q-Notation and Multiplication
11.11 Division
11.12 BCD
11.13 Further Reading
12 Statistical Process Control
12.1 Introduction
12.2 Important terms
12.3 Control Charts
12.4 Finding the Control Limits
12.5 Subgroups
12.6 Case: Insulation Plates
12.7 EWMA Control Charts
12.8 Process Capability Index
12.9 Further Reading
Epilogue
1.1 The Tale of the Internet
1.2 The Cloud
1.3 Internet of Things
1.4 IoT related terms
I The Basic System
2 How to select an OS?
2.1 No OS and strictly polling
2.2 Co-routines
2.3 Interrupts
2.4 A small real-time kernel
2.5 A non-preemptive Operating System
2.6 Full OS
2.7 Open Source, GNU licensing and Linux
2.8 OS constructs
2.9 Further Reading
3 Which CPU to use?
3.1 Overview
3.2 CPU Core
3.3 CPU Architecture
3.4 Word-Size
3.5 MMU - Memory Managed Unit
3.6 RAM
3.7 Cache
3.8 EEPROM and Flash
3.9 FPU - Floating Point Unit
3.10 DSP
3.11 Crypto-Engine
3.12 Upgrade Path
3.13 Second Sources
3.14 Price
3.15 Export Control
3.16 RoHS-Compliance
3.17 Evaluation Boards
3.18 Tool-chain
3.19 Benchmarking
3.20 Power-Consumption
3.21 JTAG Debugger
3.22 Peripherals
3.23 Make or Buy
3.24 Further Reading
4 Software Architecture
4.1 Design for Performance
4.2 The fear of the white paper
4.3 Layers
4.4 Not just API's - more files
4.5 Object Model (Containment Hierarchy)
4.6 Case: CANOpen
4.7 Message Passing
4.8 Middleware
4.9 Case: Architectural Reuse in LAN-XI
4.10 Understanding C
4.11 Further Reading
5 Debug Tools
5.1 Simulator
5.2 ICE - In-Circuit-Emulator
5.3 Background or JTAG debugger
5.4 Target Stand-In
5.5 Debugger
5.6 strace
5.7 Debugging without special tools
5.8 Monitoring Messages
5.9 Test Traffic
6 Code Maintenance
6.1 Poor Man's Backup
6.2 Version Control - and git
6.3 Build and Virtualization
6.4 Static Code Analysis
6.5 Inspections
6.6 Tracking Defects & Features
6.7 Whiteboard
6.8 Documentation
6.9 Yocto
6.10 OpenWRT
6.11 Further Reading
III IoT Technologies
7 Networks
7.1 Introduction
7.2 Cerf & Kahn - internet as net of nets
7.3 Life of a packet
7.4 Life before the packet
7.5 Getting an IP address
7.6 DHCP
7.7 Network Masks, CIDR and Special Ranges
7.8 Reserved IP-Ranges
7.9 DNS
7.10 Introducing HTTP
7.11 REST
7.12 TCP sockets on IPv4 under Windows
7.13 IP Fragmentation
7.14 Introducing IPv6 addresses
7.15 TCP sockets on IPv6 under Linux
7.16 Data Transmission
7.17 UDP Sockets
7.18 A case of UDP on IPv6
7.19 Application Layer Protocols
7.20 Alternatives to the socket API
7.21 Ethernet Cabling
7.22 Physical Layer Problems
7.23 Further Reading
8 Network Tools
8.1 The Switch as a Tool
8.1.1 Mirroring
8.1.2 Statistics
8.1.3 Simulating lost frames
8.1.4 Pause frames
8.2 Tap
8.3 DHCP Server
8.4 IP scanner
8.5 SNMP
8.6 Wireshark
8.7 Network Commands
8.8 Further Reading
9 Wireless Networks
9.1 Introduction
9.2 Wi-Fi Basics
9.3 The Access Point as a Repeater
9.4 How is speed calculated?
9.5 Case: Wi-Fi Data-transmission
9.6 Case: Beacons
9.7 Why so hesitant?
9.8 Aggregated Frames
9.9 Channel Assessment
9.10 Bluetooth Low Energy
9.11 Certification
9.12 Further Reading
10 Security
10.1 Introduction
10.2 The goals of a Hacker
10.3 Network Security Concepts
10.4 Hash-function
10.5 Symmetric Key Encryption
10.6 Case Story: Enigma
10.7 Asymmetric Key Encryption
10.8 Digital Signature
10.9 Certificates
10.10 Message Authentication Code
10.11 Nonce
10.12 Secure Socket Communication
10.13 Case Story: Heartbleed
10.14 Case Story: WiFi Security
10.15 Software Crypto Libraries
10.16 Trusted Platform Module
10.17 Embedded Systems
10.18 Vulnerabilities in Embedded Systems
10.19 Export Control
10.20 Further Reading
11 Digital Filters
11.1 Why Digital?
11.2 Why Filters?
11.3 Basic Signal Analysis
11.3.1 About the Sample Frequency
11.3.2 Time and Frequency Domains and their Duality
11.3.3 Analog and Digital
11.3.4 More Duality
11.3.5 A Well-behaving System
11.4 IIR filter Basics
11.5 Implementing IIR
11.6 FIR Filter basics
11.7 Implementing FIR
11.8 Integers
11.9 Fixed Point Arithmetic
11.10 Q-Notation and Multiplication
11.11 Division
11.12 BCD
11.13 Further Reading
12 Statistical Process Control
12.1 Introduction
12.2 Important terms
12.3 Control Charts
12.4 Finding the Control Limits
12.5 Subgroups
12.6 Case: Insulation Plates
12.7 EWMA Control Charts
12.8 Process Capability Index
12.9 Further Reading
Epilogue
Introduction
1.1 The Tale of the Internet
1.2 The Cloud
1.3 Internet of Things
1.4 IoT related terms
I The Basic System
2 How to select an OS?
2.1 No OS and strictly polling
2.2 Co-routines
2.3 Interrupts
2.4 A small real-time kernel
2.5 A non-preemptive Operating System
2.6 Full OS
2.7 Open Source, GNU licensing and Linux
2.8 OS constructs
2.9 Further Reading
3 Which CPU to use?
3.1 Overview
3.2 CPU Core
3.3 CPU Architecture
3.4 Word-Size
3.5 MMU - Memory Managed Unit
3.6 RAM
3.7 Cache
3.8 EEPROM and Flash
3.9 FPU - Floating Point Unit
3.10 DSP
3.11 Crypto-Engine
3.12 Upgrade Path
3.13 Second Sources
3.14 Price
3.15 Export Control
3.16 RoHS-Compliance
3.17 Evaluation Boards
3.18 Tool-chain
3.19 Benchmarking
3.20 Power-Consumption
3.21 JTAG Debugger
3.22 Peripherals
3.23 Make or Buy
3.24 Further Reading
4 Software Architecture
4.1 Design for Performance
4.2 The fear of the white paper
4.3 Layers
4.4 Not just API's - more files
4.5 Object Model (Containment Hierarchy)
4.6 Case: CANOpen
4.7 Message Passing
4.8 Middleware
4.9 Case: Architectural Reuse in LAN-XI
4.10 Understanding C
4.11 Further Reading
5 Debug Tools
5.1 Simulator
5.2 ICE - In-Circuit-Emulator
5.3 Background or JTAG debugger
5.4 Target Stand-In
5.5 Debugger
5.6 strace
5.7 Debugging without special tools
5.8 Monitoring Messages
5.9 Test Traffic
6 Code Maintenance
6.1 Poor Man's Backup
6.2 Version Control - and git
6.3 Build and Virtualization
6.4 Static Code Analysis
6.5 Inspections
6.6 Tracking Defects & Features
6.7 Whiteboard
6.8 Documentation
6.9 Yocto
6.10 OpenWRT
6.11 Further Reading
III IoT Technologies
7 Networks
7.1 Introduction
7.2 Cerf & Kahn - internet as net of nets
7.3 Life of a packet
7.4 Life before the packet
7.5 Getting an IP address
7.6 DHCP
7.7 Network Masks, CIDR and Special Ranges
7.8 Reserved IP-Ranges
7.9 DNS
7.10 Introducing HTTP
7.11 REST
7.12 TCP sockets on IPv4 under Windows
7.13 IP Fragmentation
7.14 Introducing IPv6 addresses
7.15 TCP sockets on IPv6 under Linux
7.16 Data Transmission
7.17 UDP Sockets
7.18 A case of UDP on IPv6
7.19 Application Layer Protocols
7.20 Alternatives to the socket API
7.21 Ethernet Cabling
7.22 Physical Layer Problems
7.23 Further Reading
8 Network Tools
8.1 The Switch as a Tool
8.1.1 Mirroring
8.1.2 Statistics
8.1.3 Simulating lost frames
8.1.4 Pause frames
8.2 Tap
8.3 DHCP Server
8.4 IP scanner
8.5 SNMP
8.6 Wireshark
8.7 Network Commands
8.8 Further Reading
9 Wireless Networks
9.1 Introduction
9.2 Wi-Fi Basics
9.3 The Access Point as a Repeater
9.4 How is speed calculated?
9.5 Case: Wi-Fi Data-transmission
9.6 Case: Beacons
9.7 Why so hesitant?
9.8 Aggregated Frames
9.9 Channel Assessment
9.10 Bluetooth Low Energy
9.11 Certification
9.12 Further Reading
10 Security
10.1 Introduction
10.2 The goals of a Hacker
10.3 Network Security Concepts
10.4 Hash-function
10.5 Symmetric Key Encryption
10.6 Case Story: Enigma
10.7 Asymmetric Key Encryption
10.8 Digital Signature
10.9 Certificates
10.10 Message Authentication Code
10.11 Nonce
10.12 Secure Socket Communication
10.13 Case Story: Heartbleed
10.14 Case Story: WiFi Security
10.15 Software Crypto Libraries
10.16 Trusted Platform Module
10.17 Embedded Systems
10.18 Vulnerabilities in Embedded Systems
10.19 Export Control
10.20 Further Reading
11 Digital Filters
11.1 Why Digital?
11.2 Why Filters?
11.3 Basic Signal Analysis
11.3.1 About the Sample Frequency
11.3.2 Time and Frequency Domains and their Duality
11.3.3 Analog and Digital
11.3.4 More Duality
11.3.5 A Well-behaving System
11.4 IIR filter Basics
11.5 Implementing IIR
11.6 FIR Filter basics
11.7 Implementing FIR
11.8 Integers
11.9 Fixed Point Arithmetic
11.10 Q-Notation and Multiplication
11.11 Division
11.12 BCD
11.13 Further Reading
12 Statistical Process Control
12.1 Introduction
12.2 Important terms
12.3 Control Charts
12.4 Finding the Control Limits
12.5 Subgroups
12.6 Case: Insulation Plates
12.7 EWMA Control Charts
12.8 Process Capability Index
12.9 Further Reading
Epilogue
1.1 The Tale of the Internet
1.2 The Cloud
1.3 Internet of Things
1.4 IoT related terms
I The Basic System
2 How to select an OS?
2.1 No OS and strictly polling
2.2 Co-routines
2.3 Interrupts
2.4 A small real-time kernel
2.5 A non-preemptive Operating System
2.6 Full OS
2.7 Open Source, GNU licensing and Linux
2.8 OS constructs
2.9 Further Reading
3 Which CPU to use?
3.1 Overview
3.2 CPU Core
3.3 CPU Architecture
3.4 Word-Size
3.5 MMU - Memory Managed Unit
3.6 RAM
3.7 Cache
3.8 EEPROM and Flash
3.9 FPU - Floating Point Unit
3.10 DSP
3.11 Crypto-Engine
3.12 Upgrade Path
3.13 Second Sources
3.14 Price
3.15 Export Control
3.16 RoHS-Compliance
3.17 Evaluation Boards
3.18 Tool-chain
3.19 Benchmarking
3.20 Power-Consumption
3.21 JTAG Debugger
3.22 Peripherals
3.23 Make or Buy
3.24 Further Reading
4 Software Architecture
4.1 Design for Performance
4.2 The fear of the white paper
4.3 Layers
4.4 Not just API's - more files
4.5 Object Model (Containment Hierarchy)
4.6 Case: CANOpen
4.7 Message Passing
4.8 Middleware
4.9 Case: Architectural Reuse in LAN-XI
4.10 Understanding C
4.11 Further Reading
5 Debug Tools
5.1 Simulator
5.2 ICE - In-Circuit-Emulator
5.3 Background or JTAG debugger
5.4 Target Stand-In
5.5 Debugger
5.6 strace
5.7 Debugging without special tools
5.8 Monitoring Messages
5.9 Test Traffic
6 Code Maintenance
6.1 Poor Man's Backup
6.2 Version Control - and git
6.3 Build and Virtualization
6.4 Static Code Analysis
6.5 Inspections
6.6 Tracking Defects & Features
6.7 Whiteboard
6.8 Documentation
6.9 Yocto
6.10 OpenWRT
6.11 Further Reading
III IoT Technologies
7 Networks
7.1 Introduction
7.2 Cerf & Kahn - internet as net of nets
7.3 Life of a packet
7.4 Life before the packet
7.5 Getting an IP address
7.6 DHCP
7.7 Network Masks, CIDR and Special Ranges
7.8 Reserved IP-Ranges
7.9 DNS
7.10 Introducing HTTP
7.11 REST
7.12 TCP sockets on IPv4 under Windows
7.13 IP Fragmentation
7.14 Introducing IPv6 addresses
7.15 TCP sockets on IPv6 under Linux
7.16 Data Transmission
7.17 UDP Sockets
7.18 A case of UDP on IPv6
7.19 Application Layer Protocols
7.20 Alternatives to the socket API
7.21 Ethernet Cabling
7.22 Physical Layer Problems
7.23 Further Reading
8 Network Tools
8.1 The Switch as a Tool
8.1.1 Mirroring
8.1.2 Statistics
8.1.3 Simulating lost frames
8.1.4 Pause frames
8.2 Tap
8.3 DHCP Server
8.4 IP scanner
8.5 SNMP
8.6 Wireshark
8.7 Network Commands
8.8 Further Reading
9 Wireless Networks
9.1 Introduction
9.2 Wi-Fi Basics
9.3 The Access Point as a Repeater
9.4 How is speed calculated?
9.5 Case: Wi-Fi Data-transmission
9.6 Case: Beacons
9.7 Why so hesitant?
9.8 Aggregated Frames
9.9 Channel Assessment
9.10 Bluetooth Low Energy
9.11 Certification
9.12 Further Reading
10 Security
10.1 Introduction
10.2 The goals of a Hacker
10.3 Network Security Concepts
10.4 Hash-function
10.5 Symmetric Key Encryption
10.6 Case Story: Enigma
10.7 Asymmetric Key Encryption
10.8 Digital Signature
10.9 Certificates
10.10 Message Authentication Code
10.11 Nonce
10.12 Secure Socket Communication
10.13 Case Story: Heartbleed
10.14 Case Story: WiFi Security
10.15 Software Crypto Libraries
10.16 Trusted Platform Module
10.17 Embedded Systems
10.18 Vulnerabilities in Embedded Systems
10.19 Export Control
10.20 Further Reading
11 Digital Filters
11.1 Why Digital?
11.2 Why Filters?
11.3 Basic Signal Analysis
11.3.1 About the Sample Frequency
11.3.2 Time and Frequency Domains and their Duality
11.3.3 Analog and Digital
11.3.4 More Duality
11.3.5 A Well-behaving System
11.4 IIR filter Basics
11.5 Implementing IIR
11.6 FIR Filter basics
11.7 Implementing FIR
11.8 Integers
11.9 Fixed Point Arithmetic
11.10 Q-Notation and Multiplication
11.11 Division
11.12 BCD
11.13 Further Reading
12 Statistical Process Control
12.1 Introduction
12.2 Important terms
12.3 Control Charts
12.4 Finding the Control Limits
12.5 Subgroups
12.6 Case: Insulation Plates
12.7 EWMA Control Charts
12.8 Process Capability Index
12.9 Further Reading
Epilogue