Unterschiede statisch vs. dynamisch gelinked: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 17: Zeile 17:
 
==Nachteile==
 
==Nachteile==
 
*Ein Angreifer kann durch austauschen der Bibliothek das Verhalten des Programmes verändern.
 
*Ein Angreifer kann durch austauschen der Bibliothek das Verhalten des Programmes verändern.
{{#drawio:static}}
 
  
 
=Statisch gelinkte Programme=
 
=Statisch gelinkte Programme=

Version vom 17. Januar 2023, 09:01 Uhr

Unterschiede

  • Ein Programm ist statisch gelinked wenn es ohne Bibliotheken lauffähig ist.
  • Das Binarie muss alle Funktionen die es nutzt selbst enthalten.
  • Bei Kompilieren des Programms wird festgelegt ob es statisch oder dynamisch gelinked wird.
  • In der Regel sind die Programme dynamisch gelinkt.
  • Daraus folgt das ein Programm dynamisch gelinkt ist, wenn Funktionen ausgelagert wurden.
  • Es kann also Funktionen aus Bibliotheken nutzen.

Dynamisch gelinkte Programme

mmap

memory map

Vorteile

  • Sie sind kleiner
  • Sie verbrauchen weniger Arbeitsspeicher
  • Man nutzt mit anderen Programmen gemeinsam die Bibliothek

Nachteile

  • Ein Angreifer kann durch austauschen der Bibliothek das Verhalten des Programmes verändern.

Statisch gelinkte Programme

Nachteile

  • Sie sind grösser
  • Sie verbrauchen mehr Arbeitsspeicher

Vorteile

  • Sie sind weniger angreifbar