From 3fe95ca9145193c9eb572f7975fc18e2d60b2c53 Mon Sep 17 00:00:00 2001 From: Holger Dengler 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 --- 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