summaryrefslogtreecommitdiff
path: root/linux-basics/api/pres_kernel-api.tex
diff options
context:
space:
mode:
Diffstat (limited to 'linux-basics/api/pres_kernel-api.tex')
-rw-r--r--linux-basics/api/pres_kernel-api.tex52
1 files changed, 52 insertions, 0 deletions
diff --git a/linux-basics/api/pres_kernel-api.tex b/linux-basics/api/pres_kernel-api.tex
new file mode 100644
index 0000000..bda7055
--- /dev/null
+++ b/linux-basics/api/pres_kernel-api.tex
@@ -0,0 +1,52 @@
+\input{configpres}
+
+\subsection{Linux Kernel-API}
+\title{Linux Kernel-API}
+
+% ----------------------------
+\maketitle
+
+% ----------------------------
+\begin{frame}
+\frametitle{Overview}
+\tableofcontents
+\end{frame}
+
+% ----------------------------
+\begin{frame}
+\frametitle{Basics}
+\begin{itemize}
+\item Application: Userspace, unprivileged
+\item Driver: Kernel, privileged
+\item Userspace-to-Kernel API
+ \begin{itemize}
+ \item Syscalls
+ \item Device Nodes
+ \item Pseudo Filesystems
+ \item Netlink Sockets
+ \end{itemize}
+\end{itemize}
+\end{frame}
+% Most CPUs has two operation modes, an privileged and an unprivileged.
+% Linux supports this HW feature by separating the Userspace (Applications,
+% Libraries) from the Kernel (scheduling, memory-management, drivers). The
+% Linux Userspace API is the interfacebetween the Userspace and the Kernel.
+% The main interface are the syscalls. The file systemcalls and the devide
+% nodes allows specific HW access, without creating new syscalls. The pseudo
+% filesystems also extends the Userspace API, by externalize structured
+% information about the system to applications. The netlink sockets are
+% mainly for managing and controling Kernel subsystems, like network.
+
+\subsection{Devices}
+% ----------------------------
+\input{linux-basics/api/frm_devicenodes.tex}
+
+\subsection{Pseudo FS}
+% ----------------------------
+\input{linux-basics/api/frm_proc.tex}
+
+% ----------------------------
+\input{linux-basics/api/frm_sysfs.tex}
+
+\subsection*{}
+\input{tailpres}