This commit is contained in:
David Schirrmeister 2024-06-03 09:10:32 +02:00
parent 26b786300a
commit cc0ef991fc
4 changed files with 34 additions and 0 deletions

View File

@ -19,6 +19,7 @@
<toc-element topic="12_Virtualisierung.md"/> <toc-element topic="12_Virtualisierung.md"/>
<toc-element topic="13_Speicherverwaltung.md"/> <toc-element topic="13_Speicherverwaltung.md"/>
<toc-element topic="14_Speicherabstraktion.md"/> <toc-element topic="14_Speicherabstraktion.md"/>
<toc-element topic="15_Bibliotheken.md"/>
</toc-element> </toc-element>
<toc-element toc-title="OOAD"> <toc-element toc-title="OOAD">
<toc-element topic="IntroductionOOAD.md"/> <toc-element topic="IntroductionOOAD.md"/>
@ -45,6 +46,7 @@
<toc-element topic="Klassifikation.md"/> <toc-element topic="Klassifikation.md"/>
<toc-element topic="arm.md"> <toc-element topic="arm.md">
<toc-element topic="arm_toolchain.md"/> <toc-element topic="arm_toolchain.md"/>
<toc-element topic="arm_befehle.md"/>
</toc-element> </toc-element>
</toc-element> </toc-element>
<toc-element toc-title="EWI"> <toc-element toc-title="EWI">

View File

@ -0,0 +1,29 @@
# Bibliotheken
## Gemeinsame Bibliotheken
- In jedem modernen System vorhanden
- bspw. I/O-, Grafikbibliotheken
- Statt an jedes Programm statisch binden
- _shared libraries_
- Bsp.:
- normales Programm benutzt 20-50MB an Grafik- und Benutzungsschnittstellenfunktionen
- hunderte solcher Programme
- viel Speicher, RAM verschwendet
- BS hat keine Möglichkeit um zu schauen, ob eine gemeinsame Nutzung infrage käme
- Falls Programm mit gemeinsamen Bibliotheken verbunden
- **Binder (_Linker_)** schließt _Stub-Routine_ ein
- statt aktueller Funktionsaufrufe
- Gemeinsame Bibliotheken gleichzeitig wie Programm / beim ersten Aufruf ihrer Funktion laden
- abhängig vom System
- Falls durch anderes Programm bereits geladen
- Muss nicht nochmal! :)
- Wird nicht auf einmal in den Speicher eingelesen
- Bei Bedarf Seite für Seite
- Keine Funktionen im RAM, die nicht gebraucht werden
- Ausführbare Dateien bleiben klein
- Falls Fehler in Bibliothek
- Beheben
- Nicht alle Programme neu übersetzen

View File

@ -100,3 +100,4 @@
## [ARM Toolchain](arm_toolchain.md) ## [ARM Toolchain](arm_toolchain.md)
## [ARM Befehle](arm_befehle.md)

View File

@ -0,0 +1,2 @@
# ARM Befehle