Skip to content

Commit

Permalink
tools_and_varia: add os_concepts
Browse files Browse the repository at this point in the history
  • Loading branch information
langchr86 committed Feb 7, 2024
1 parent c5783d2 commit 8e378e7
Show file tree
Hide file tree
Showing 3 changed files with 62 additions and 0 deletions.
1 change: 1 addition & 0 deletions topics/tools_and_varia/images/process_threads.drawio
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<mxfile host="Electron" modified="2023-10-26T09:52:04.846Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/19.0.3 Chrome/102.0.5005.63 Electron/19.0.3 Safari/537.36" etag="CIOz6wc48wPf6-Zt8fZs" version="19.0.3" type="device"><diagram id="2sJpjqJBISgElCoQoxTR" name="Page-1">7VnbctsgEP0aPaaju+XH2Ena6bTTzDjTTvuG0UpigoUH4evXF2SQrIsTp7XTZpwnw2FZxO7Zg5Atbzxbf+Ronn1lMVDLteO15d1YruvYXiR/FLLZIWE03AEpJ7E2qoEJ2YKZqdEFiaFoGArGqCDzJohZngMWDQxxzlZNs4TR5qpzlEIHmGBEu+gPEotsh0aBXeOfgKSZWdmx9cgMGWMNFBmK2WoP8m4tb8wZE7vWbD0GqoJn4rKbd3dgtHowDrk4ZsIP//HhIQyXP+/S7+IzdtfbX7dX2ssS0YXesOWGVPobTblspar1baI3IDYmKpwt8hiUY0carDIiYDJHWI2uJA8klokZ1cMJoXTMKOPlXC+JMGAs8UJw9gh7I9Mo8GVg5WTGyZblAikXCkhkR3PDCU1fP45agqIp0HtWEEFYLjEsYwLS62gJXBCZzS8tgxmJYzV7hChJe2dc6wHB1HZ0mOQYrA/G36myKssB2AwE30iTqhY0EXQlRLq7qmlVmWR7lHI9DSJN5bRyXWdbNnTCX5B894jkd5F7zjAUxROcsF/OiQTCfk7Eg+HUtl8jxU+Szu+Q7gSECJuEGPYQwu0hhOOfixBeDyFaWZYqNlfNhML6WumrDAzksW7eYIqKguBmspvMkNZGScuwyr6JsquIo8dcv48miXuAJuE0DEJDkxHCj2m5qjHJWQ5VGUPc0fxnc7aXlKAnJwbjQJEgy6b7vjzpFe4ZkQtXlKhqfdPKv3FRsAXHoGfti33Lkec/40ggnoLoOCppU237z5nkd5j0kHFAcYdPKhdl5TYp82zNVtXNoSBbNC39KXrN1ZbKTQYjK7g5khI9hazfKLTr+hzfJ8vhKjpY9fYHv5EZo8J/yZwrf9Dr1nhgSVLAWVIdvIvGfyYa4alEo+3ozKIRXrBoBJclGoO3LxpvTRZc+0Sy0HF0ZlmILlgWBpclC8MeWXi/kf6zG6nrH3klbb8onOxGaj4Dvh8Ur3hQDE51ULQdnfmgcLpfMy/npHDsfg69vaNCduuv4jvz+r8F7/Y3</diagram></mxfile>
59 changes: 59 additions & 0 deletions topics/tools_and_varia/slides/os_concepts.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
Betriebssystem-Konzepte
=======================


Unterschiede: Tasks, Threads und Prozesse
-----------------------------------------

* Prozesse und Threads sind *OS-Features*
* Tasks werden durch das *SW-Framework* definiert
* Threads und Prozesse bedeuten *Overhead*: Stack, Context-Switch, Synchronisierung

\centering
![process_threads](images/process_threads.pdf)


Zugriffsrechte Arbeitsspeicher
------------------------------

* Alle Threads können auf gesamten *Prozess-Speicher* zugreifen
* Prozesse können untereinander *nicht auf Speicher* zugreifen.


Was ist ein Real-Time-OS (RTOS)?
--------------------------------

\colBegin{0.5}

Time-Sharing OS
\vspace{0.2cm}

* *Mehrere Prozesse* mit virtuellem Memory (MMU)
* *Präemptives Scheduling* für Prozesse und Threads
* *Dynamisches* zeitliches Verhalten des Schedulers

\colNext{0.5}

Bare Metal
\vspace{0.2cm}

* Nur *ein Prozess*
* Meist nur *kooperatives Scheduling* für Tasks (Event-Loop)
* *Direkte Verwendung* von Timer-Interrupts für die Einhaltung von Echtzeitverhalten

\colEnd

\vspace{0.6cm}
\colBegin{0.25}
\colNext{0.5}

Real-Time OS
\vspace{0.2cm}

* Nur *ein Prozess* aber mit Threads
* *Präemptives Scheduling* für Threads/Tasks
* *Scheduler* kümmert sich um die Einhaltung von Echtzeitverhalten

\colNext{0.25}
\colEnd

2 changes: 2 additions & 0 deletions topics/tools_and_varia/tools_and_varia_slides.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ Inhalt
* Best Practice
* Aufgaben lösen
* Concurrency vs. Parallelism
* Betriebssystem-Konzepte
* Tools
* *Praxis Block 2*
* Weiterführendes
Expand All @@ -28,6 +29,7 @@ Inhalt
<#include slides/best_practice.md>
<#include slides/problem_solving.md>
<#include slides/concurrency_vs_parallelism.md>
<#include slides/os_concepts.md>
<#include slides/tools.md>
<#include slides/practice_2.md>
<#include slides/links.md>

0 comments on commit 8e378e7

Please sign in to comment.