[bootlin/training-materials updates] master: Progress on the French translation of the graphics agenda (a450e1a0)
Michael Opdenacker
michael.opdenacker at bootlin.com
Wed May 20 10:55:08 CEST 2020
Repository : https://github.com/bootlin/training-materials
On branch : master
Link : https://github.com/bootlin/training-materials/commit/a450e1a0c501f40789b1d18d39781c546ad1f5ed
>---------------------------------------------------------------
commit a450e1a0c501f40789b1d18d39781c546ad1f5ed
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date: Wed May 20 10:55:08 2020 +0200
Progress on the French translation of the graphics agenda
Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>
>---------------------------------------------------------------
a450e1a0c501f40789b1d18d39781c546ad1f5ed
agenda/graphics-agenda.tex | 4 +-
agenda/graphics-fr-agenda.tex | 2 +-
agenda/graphics-online-agenda.tex | 2 +-
agenda/graphics-online-fr-agenda.tex | 358 +++++++++++++++++++++++++++++++++++
4 files changed, 362 insertions(+), 4 deletions(-)
diff --git a/agenda/graphics-agenda.tex b/agenda/graphics-agenda.tex
index 57122ce4..6b9640ab 100644
--- a/agenda/graphics-agenda.tex
+++ b/agenda/graphics-agenda.tex
@@ -75,7 +75,7 @@ Training - Displaying and rendering graphics with Linux\\
\hline
{\bf Prerequisites} &
- {\bf C programmig language, basic knowledge of concepts related to low-level
+ {\bf C programming language, basic knowledge of concepts related to low-level
hardware interaction (e.g. registers, interrupts),
kernel-level system management (e.g. virtual memory mappings) and
userspace syscalls (e.g. ioctl, mmap).
@@ -122,7 +122,7 @@ Training - Displaying and rendering graphics with Linux\\
{Lecture - Pixel Drawing}
{
\begin{itemize}
- \item Accessing and itegrating over pixel data
+ \item Accessing and iterating over pixel data
\item Concepts about rasterization
\item Rectangle drawing
\item Linear gradient drawing
diff --git a/agenda/graphics-fr-agenda.tex b/agenda/graphics-fr-agenda.tex
index 57122ce4..95fb0692 100644
--- a/agenda/graphics-fr-agenda.tex
+++ b/agenda/graphics-fr-agenda.tex
@@ -75,7 +75,7 @@ Training - Displaying and rendering graphics with Linux\\
\hline
{\bf Prerequisites} &
- {\bf C programmig language, basic knowledge of concepts related to low-level
+ {\bf C programming language, basic knowledge of concepts related to low-level
hardware interaction (e.g. registers, interrupts),
kernel-level system management (e.g. virtual memory mappings) and
userspace syscalls (e.g. ioctl, mmap).
diff --git a/agenda/graphics-online-agenda.tex b/agenda/graphics-online-agenda.tex
index 5359dd05..cbb90504 100644
--- a/agenda/graphics-online-agenda.tex
+++ b/agenda/graphics-online-agenda.tex
@@ -72,7 +72,7 @@ On-line seminar
\hline
{\bf Prerequisites} &
- {\bf C programmig language, basic knowledge of concepts related to low-level
+ {\bf C programming language, basic knowledge of concepts related to low-level
hardware interaction (e.g. registers, interrupts),
kernel-level system management (e.g. virtual memory mappings) and
userspace syscalls (e.g. ioctl, mmap).
diff --git a/agenda/graphics-online-fr-agenda.tex b/agenda/graphics-online-fr-agenda.tex
new file mode 100644
index 00000000..ee83f7d8
--- /dev/null
+++ b/agenda/graphics-online-fr-agenda.tex
@@ -0,0 +1,358 @@
+\documentclass[a4paper,12pt,obeyspaces,spaces,hyphens]{article}
+
+\usepackage{agenda}
+\usepackage{colortbl}
+\usepackage{xcolor}
+\usepackage{calc}
+
+\hypersetup{pdftitle={Formation - Affichage et rendu graphique sous Linux},
+ pdfauthor={Bootlin}}
+
+\renewcommand{\arraystretch}{2.0}
+
+\begin{document}
+
+\thispagestyle{fancy}
+
+\setlength{\arrayrulewidth}{0.8pt}
+
+\begin{center}
+\LARGE
+Formation - Affichage et rendu graphique sous Linux\\
+\large
+Séminaire de formation en ligne
+\end{center}
+\vspace{1cm}
+\small
+\newcolumntype{g}{>{\columncolor{fedarkblue}}m{4cm}}
+\newcolumntype{h}{>{\columncolor{felightblue}}X}
+
+\arrayrulecolor{lightgray} {
+ \setlist[1]{itemsep=-5pt}
+ \begin{tabularx}{\textwidth}{|g|h|}
+ {\bf Title} & {\bf Formation - Affichage et rendu graphique sous Linux} \\
+ \hline
+
+ {\bf Overview} &
+ Réprésentation des images et des couleurs \par
+ Dessin de pixels \par
+ Opérations sur les pixels \par
+ Vue d'ensemble des composants du pipeline et généralités \par
+ Spécificités du matériel d'affichage \par
+ Spécificités du matériel de rendu \par
+ Intégration système, mémoire et performance \par
+ Vue d'ensemble du flux d'affichage \par
+ Aspects TTY dans le noyau \par
+ Périphériques framebuffer dans le noyau \par
+ Aspects DRM dans le noyau \par
+ Aspects DRM en espace utilisateur \par
+ Aspects X Window en espace utilisateur \par
+ Wayland en espace utilisateur \par
+ Mesa 3D en espace utilisateur\\
+ \hline
+ {\bf Supports} &
+ Vérifiez que le contenu de la formation correspond à vos besoins :
+ \newline \url{https://bootlin.com/doc/training/graphics}. \\
+ \hline
+
+ {\bf Durée} & {\bf Quatre} demi-journées - 16 h (4 h par demi-journée)
+ \newline 80\% de présentations et 20\% de démonstrations. \\
+ \hline
+
+ {\bf Formateur} & Un des ingénieurs mentionnés sur :
+ \newline \url{https://bootlin.com/training/trainers/}\\
+ \hline
+
+ {\bf Langue} & Présentations : Français
+ \newline Supports : Anglais\\
+ \hline
+
+ {\bf Public visé} & Développeurs de systèmes multimedia utilisant le
+ noyau Linux\\
+ \hline
+
+ {\bf Pré-requis} &
+ {\bf Connaissance du langage C, connaissances de base en mécanismes
+ d'interaction avec le matériel (registres, interruptions...),
+ en gestion du système au niveau du noyau (comme les mappins en mémoire
+ virtuelle) et en appels systèmes depuis l'espace utilisateur (ioctl,
+ mmap...).
+ Connaissances de bases sur les interfaces matérielles (bus,
+ horloges...)}\\
+ \hline
+
+ \end{tabularx}
+
+ \begin{tabularx}{\textwidth}{|g|h|}
+ {\bf Équipement nécessaire} &
+ \begin{itemize}
+ \item Ordinateur avec le système d'exploitation de votre choix, équipé du
+ navigateur Google Chrome ou Chromium pour la conférence vidéo.
+ \item Une webcam et un micro (de préférence un casque avec micro)
+ \item Une connexion à Internet à haut débit
+ \end{itemize}\\
+ \hline
+
+ {\bf Supports} & Version électronique des présentations.\\
+ \hline
+
+\end{tabularx}}
+\normalsize
+
+\section{Half day 1}
+
+\feagendatwocolumn
+{Présentation - Représentation des images et des couleurs}
+{
+ \begin{itemize}
+ \item Lumière, pixels et images
+ \item Échantillonage, domaine de fréquence, aliasing
+ \item Quantification et représentation des couleurs
+ \item Espaces colorimétriques et canaux, canal alpha
+ \item Sous-échantillonage YUV et chroma
+ \item Plans de données de pixels, ordre d'analyse
+ \item Formats de pixels, codes FourCC codes, modificateurs
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Introduction aux notions de base utilisées pour représenter les images en couleur.}
+}
+{Présentation - Dessin des pixels}
+{
+ \begin{itemize}
+ \item Accès aux données de pixels et intération
+ \item Concepts autour de la pixellisation
+ \item Dessin de rectangles
+ \item Dessin de gradients linéaires
+ \item Dessin de disques
+ \item Dessin de graduits circulaires
+ \item Dessin de lignes
+ \item Aliasing de lignes et de formes, dessin sub-pixel
+ \item Cercles et coordonnées polaires
+ \item Courbes paramétriques
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Comment accéder aux données de pixels en mémoire et dessiner des formes simples.}
+}
+\\
+\feagendatwocolumn
+{Présentation - Opérations sur les pixels}
+{
+ \begin{itemize}
+ \item Copie de région
+ \item Alpha blending
+ \item Keying de couleur
+ \item Mise à l'échelle et interpolation
+ \item Filtrage linéaire et convolution
+ \item Filtres de floutage
+ \item Dithering
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Notions de base autour du filtrage, avec des examples d'utilisation très courants.}
+}
+{Démo - Dessin et opérations}
+{
+ \begin{itemize}
+ \item Exemples de dessin de divers types de formes et de régions
+ \item Exemples d'opérations de base sur les pixels
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Illustration des concepts présentés au fur et à mesure.}
+}
+
+\section{Half day 2}
+
+\feagendatwocolumn
+{Lecture - Pipeline Components Overview and Generalities}
+{
+ \begin{itemize}
+ \item Types of graphics hardware implementations
+ \item Graphics memory and buffers
+ \item Graphics pipelines
+ \item Display, render and video hardware overview
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Presenting the hardware involved in graphics pipelines.}
+}
+{Lecture - Display hardware}
+{
+ \begin{itemize}
+ \item Visual display technologies: CRT, plasma, LCD, OLED, EPD
+ \item Display timings, modes and EDID
+ \item DIsplay interfaces: VGA, DVI, HDMI, DP, LVDS, DSI, DP
+ \item Bridges and transcoders
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Presenting the inner workings of display hardware.}
+}
+\\
+
+\feagendatwocolumn
+{Lecture - Rendering Hardware Specifics}
+{
+ \begin{itemize}
+ \item Digital Signal Processors (DSPs)
+ \item Dedicated hardware accelerators
+ \item Graphics Processing Unit (GPUs)
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Describing the architecture of processing and rendering hardware.}
+}
+{Lecture - System Integration, Memory and Performance}
+{
+ \begin{itemize}
+ \item Graphics integration and memory
+ \item Shared graphics memory access
+ \item Graphics memory constraints and performance
+ \item Offloading graphics to hardware
+ \item Graphics performance tips
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Topics related to graphics integration, memory management and performance aspects.}
+}
+
+\section{Half day 3}
+
+\feagendatwocolumn
+{Lecture - Display Stack Overview}
+{
+ \begin{itemize}
+ \item System-agnostic overview: kernel, display and render userspace
+ \item Linux kernel overview
+ \item Linux-compatible low-level userspace overview
+ \item X Window and Wayland overview
+ \item High-level graphics libraries and desktop environments overview
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Presenting what software components are required for modern computer graphics and how they are divided between kernel and userspace.}
+}
+{Lecture - TTY Kernel Aspects, Framebuffer Device Kernel Aspects}
+{
+ \begin{itemize}
+ \item Linux TTY subsystem introduction
+ \item Virtual terminals and graphics
+ \item Virtual terminals switching and graphics
+ \end{itemize}
+ \vspace{0.5em}
+ \begin{itemize}
+ \item Fbdev overview
+ \item Fbdev basic operations
+ \item Fbdev limitations
+ \end{itemize}
+ \vspace{0.5em}
+ {\em How TTYs interact with graphics in Linux along with a short presentation of fbdev and why it's deprecated.}
+}
+\\
+
+\feagendatwocolumn
+{Lecture - DRM Kernel Aspects}
+{
+ \begin{itemize}
+ \item DRM devices
+ \item DRM driver identification and capabilities
+ \item DRM master, magic and authentication
+ \item DRM memory management
+ \item DRM KMS dumb buffer API
+ \item DRM FourCCs and modifiers
+ \item DRM KMS resources probing
+ \item DRM KMS modes
+ \item DRM KMS framebuffer management
+ \item DRM KMS legacy configuration and page flipping
+ \item DRM event notification
+ \item DRM KMS object properties
+ \item DRM KMS atomic
+ \item DRM render
+ \item DRM Prime zero-copy memory sharing (dma-buf)
+ \item DRM sync object fencing
+ \item DRM debug and documentation
+ \end{itemize}
+ \vspace{0.5em}
+ {\em An exaustive presentation of the DRM interface.}
+}
+{Demo - Kernel Aspects}
+{
+ \begin{itemize}
+ \item Linux TTY and virtual terminals
+ \item DRM KMS mode-setting
+ \item DRM KMS driver walkthrough
+ \item DRM render driver walkthrough
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Illustrating how kernel aspects work.}
+}
+
+\section{Half day 4}
+
+\feagendatwocolumn
+{Lecture - X Window Userspace Aspects}
+{
+ \begin{itemize}
+ \item X11 protocol and architecture
+ \item X11 protocol extensions
+ \item Xorg architecture and acceleration
+ \item Xorg drivers overview
+ \item X11 and OpenGL acceleration: GLX and DRI2
+ \item Xorg usage, integration and configuration
+ \item Major issues with X11
+ \item Xorg debug and documentation
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Presenting all things related to X11 and Xorg.}
+}
+{Lecture - Wayland Userspace Aspects}
+{
+ \begin{itemize}
+ \item Wayland overview and paradigm
+ \item Wayland protocol and architecture
+ \item Wayland core protocol detail
+ \item Wayland extra protocols
+ \item Wayland asynchronous interface
+ \item Wayland OpenGL integration
+ \item Wayland status and adoption
+ \item Wayland debug and documentation
+ \end{itemize}
+ \vspace{0.5em}
+ {\em An in-depth presentation of Wayland.}
+}\\
+
+\feagendatwocolumn
+{Lecture - Mesa 3D Userspace Aspects}
+{
+ \begin{itemize}
+ \item Standardized 3D rendering APIs: OpenGL, OpenGL ES, EGL and Vulkan
+ \item Mesa 3D overview
+ \item Mesa 3D implementation highlights
+ \item Mesa 3D internals: Gallium 3D
+ \item Mesa 3D internals: intermediate representations
+ \item Mesa 3D Generic Buffer Management (GBM)
+ \item Mesa 3D hardware support status
+ \item Mesa 3D versus proprietary implementations
+ \item Mesa 3D hardware support: debug and documentation
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Presenting 3D APIs and the Mesa 3D implementation.}
+}
+{Demo - Userspace Aspects}
+{
+ \begin{itemize}
+ \item Xorg code walkthrough
+ \item Wayland compositor core walkthrough
+ \item Wayland client examples
+ \item Mesa code walk-through
+ \item OpenGL and EGL examples
+ \end{itemize}
+ \vspace{0.5em}
+ {\em Illustrating userspace aspects, client and server implementations.}
+}
+
+\feagendaonecolumn
+{Questions and Answers}
+{
+ \begin{itemize}
+ \item Questions and answers with the audience about the course topics
+ \item Extra presentations if time is left, according what most
+ participants are interested in.
+ \end{itemize}
+}
+
+\end{document}
+
More information about the training-materials-updates
mailing list