diff options
| author | Holger Dengler <dengler@linutronix.de> | 2019-01-11 08:35:40 +0100 |
|---|---|---|
| committer | John Ogness <john.ogness@linutronix.de> | 2019-01-11 11:13:18 +0106 |
| commit | bf7bd4abcdd1e9ae1030c7a9dfae70c35791d771 (patch) | |
| tree | cde3083435586c781613658792ea775df75fb992 /linux-basics/api/pres_kernel-api.tex | |
| parent | 68fc3833945d898db96c58b54c74351ea4ee830b (diff) | |
linux-basic: Add Userspace-to-Kernel API slides
Signed-off-by: Holger Dengler <dengler@linutronix.de>
Diffstat (limited to 'linux-basics/api/pres_kernel-api.tex')
| -rw-r--r-- | linux-basics/api/pres_kernel-api.tex | 52 |
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} |
