From 3fe95ca9145193c9eb572f7975fc18e2d60b2c53 Mon Sep 17 00:00:00 2001
From: Holger Dengler <dengler@linutronix.de>
Date: Wed, 23 May 2018 08:17:40 +0200
Subject: misc: Update Slides

- Update Concepts (redundant, rescue)
- Update Processing (swupdate)
- Deployment (Hawkbit)

Signed-off-by: Holger Dengler <dengler@linutronix.de>
---
 misc/frm_update_concepts.tex | 147 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 147 insertions(+)
 create mode 100644 misc/frm_update_concepts.tex

(limited to 'misc/frm_update_concepts.tex')

diff --git a/misc/frm_update_concepts.tex b/misc/frm_update_concepts.tex
new file mode 100644
index 0000000..28aaca9
--- /dev/null
+++ b/misc/frm_update_concepts.tex
@@ -0,0 +1,147 @@
+% ----------------------------
+\section{Update Concepts}
+\subsection{Introduction}
+
+% ----------------------------
+\begin{frame}{General}
+\begin{itemize}
+\item Why are updates necessary?
+ \begin{itemize}
+ \item Functionality (new features)
+ \item Up-to-date (problem fixes, configuration)
+ \item Root-of-trust (Certificates et.al.)
+ \end{itemize}
+\item Common Issues with Updates:
+ \begin{itemize}
+ \item Reduced Resources
+ \item Unreliable Communication
+ \item Failed or Incomplete Updates
+ \item Integrity of Updates
+ \item No "One-size-fits-all"-Solution
+ \end{itemize}
+\item Update concepts are mandatory for Embedded Systems!
+\end{itemize}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{General Requirements}
+\begin{itemize}
+\item Security
+ \begin{itemize}
+ \item Ensure Update Integrity
+ \item Prevent Malicious Code Injection
+ \item Usage of Encryption Standards
+ \end{itemize}
+\item Reliability
+ \begin{itemize}
+ \item Handle failed or incomplete Updates
+ \end{itemize}
+\item Flexibility
+ \begin{itemize}
+ \item Adaptable to changing Needs
+ \item Adaptable to Target Requirements
+ \item Adaptable to System Environment
+ \end{itemize}
+\item Scalability
+ \begin{itemize}
+ \item Number of Targets
+ \item Target Size
+ \item Target Connectivity
+ \end{itemize}
+\end{itemize}
+\end{frame}
+
+% ----------------------------
+\subsection{Redundant System}
+
+% ----------------------------
+\begin{frame}{Overview}
+\begin{center}
+\includegraphics[height=0.7\textheight]{images/update_redundant_overview.png}
+\end{center}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{Process Update}
+\begin{center}
+\includegraphics[width=5cm]{images/update_redundant_upd_process.png}
+\end{center}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{Confirm Update}
+\begin{center}
+\includegraphics[width=5cm]{images/update_redundant_upd_confirm.png}
+\end{center}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{Features}
+\begin{itemize}
+\item Always working (and updateable) System
+\item Single Root-Filesystem Layout
+\item Single Reboot per Update
+\item Pros:
+ \begin{itemize}
+ \item Fallback: Production Environment
+ \item only one Reboot per Update required
+ \item better Integration with Application
+ \end{itemize}
+\item Cons:
+ \begin{itemize}
+ \item Space Requirements
+ \end{itemize}
+\end{itemize}
+\end{frame}
+
+% ----------------------------
+\subsection{Rescue System}
+
+% ----------------------------
+\begin{frame}{Overview}
+\begin{center}
+\includegraphics[height=0.7\textheight]{images/update_rescue_overview.png}
+\end{center}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{Prepare Update}
+\begin{center}
+\includegraphics[width=5cm]{images/update_rescue_upd_prepare.png}
+\end{center}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{Process Update}
+\begin{center}
+\includegraphics[width=5cm]{images/update_rescue_upd_process.png}
+\end{center}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{Confirm Update}
+\begin{center}
+\includegraphics[width=5cm]{images/update_rescue_upd_confirm.png}
+\end{center}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{Features}
+\begin{itemize}
+\item Always updateable System
+\item Separate Root-Filesystem Layout
+\item Full Linux functionality (NAND, USB, WiFi, etc) for Rescue
+\item Pros:
+ \begin{itemize}
+ \item Space Requirements
+ \item Restricted HW Access in (connected) Production System
+ \item Full HW Access in (disconnected) Rescue System
+ \end{itemize}
+\item Cons.:
+ \begin{itemize}
+ \item two Reboots per Update
+ \item no/reduced Application Support during Update
+ \item no Fallback to working System
+ \end{itemize}
+\end{itemize}
+\end{frame}
-- 
cgit v1.2.3

