Qual è la differenza tra il collegamento dinamico carico-tempo e il collegamento dinamico run-time?Differenza tra tempo di caricamento e collegamento dinamico in fase di esecuzione
risposta
Hai dimenticato il tag "compiti".
Il collegamento in fase di caricamento indica che la DLL a cui si sta collegando viene caricata all'avvio dell'applicazione, indipendentemente dal fatto che si utilizzi effettivamente la funzionalità in tale DLL. Collegamento dinamico significa che la funzionalità della DLL viene caricata solo quando è effettivamente necessaria.
carico-tempo collegamento dinamico
Quando un eseguibile è collegato a una DLL al momento della compilazione del linker non inserirà il codice oggetto, ma si inserisce un stub che dice fondamentalmente una funzione di questo il nome si trova in questa DLL.
Ora, quando viene lanciato l'eseguibile, bit dell'eseguibile mancheranno (cioè i mozzi funzione) quindi prima che il programma è consentita l'esecuzione del caricatore di programma fissa queste funzioni mancanti sostituendole con punti di ingresso nel File DLL
Solo dopo che tutti gli stub sono stati sostituiti (ovvero risolto) l'eseguibile potrà essere eseguito.
Questo è il collegamento dinamico del tempo di caricamento.
di run-time dinamica Linking
In questo caso l'eseguibile non è stato collegato a qualsiasi file di libreria DLL, in modo da non contenere alcun stub nella DLL e come tale il caricatore di programma non ha alcun problema in esecuzione il eseguibile.
Ma il compito di ottenere l'accesso alla funzione da dentro la DLL è lasciato all'eseguibile e può essere eseguito utilizzando l'API di Windows GetProcAddress.
Questo è il collegamento dinamico in fase di esecuzione.
Il collegamento dinamico del tempo di caricamento viene eseguito dal sistema operativo quando viene caricata un'applicazione. Il sistema operativo utilizza il linker di informazioni inserito nel file per individuare i nomi della DLL e quindi cerca quelle DLL e, se non riesce a individuare la DLL, termina semplicemente e restituisce un messaggio di errore, altrimenti il sistema operativo esegue il mapping della DLL nel spazio di indirizzamento virtuale del processo e aumenta il numero di riferimenti DLL.
- 1. Differenza tra collegamento dinamico in fase di caricamento e collegamento dinamico in fase di esecuzione
- 2. Caricamento giare in fase di esecuzione
- 3. Qual è la differenza tra linker dinamico e caricatore dinamico?
- 4. Caricamento di DLL in fase di esecuzione in C#
- 5. Tempo autore vs tempo di esecuzione in JavaScript
- 6. Qual è la differenza tra "tempo di compilazione" e "tempo di esecuzione"?
- 7. Caricamento di 2 versioni di assembly in fase di esecuzione
- 8. knockout.js caricamento dei modelli in fase di esecuzione
- 9. Caricamento dinamico di una DLL
- 10. UI tempesta: Differenza tra latenze di esecuzione e di processo
- 11. Differenza tra la fase libgdx e Screen
- 12. Posso distinguere tra istanze di typeclass in fase di esecuzione?
- 13. Caricamento dinamico in Golang?
- 14. Tempo di risposta del sito web: Differenza tra "caricamento" e "fine",
- 15. Compilazione sass/scss di ASP.NET in fase di esecuzione e in fase di compilazione?
- 16. JContainer dinamico (JSON.NET) e Iterate su proprietà in fase di esecuzione
- 17. Compilazione del codice dinamico in fase di esecuzione utilizzando T4 e C#
- 18. cambiamento e applicare tema in fase di esecuzione in Android
- 19. javafx cambia css in fase di esecuzione
- 20. Caricamento dinamico di controller e ng-include
- 21. commutazione tra storyboard localizzato a tempo di esecuzione
- 22. Amplificazione delle librerie di libs - differenza tra le opzioni di collegamento e collegamento di runtime
- 23. Caricamento XAML in fase di runtime?
- 24. Dimensione di un oggetto in fase di esecuzione
- 25. Modifica implementazione/classe in fase di esecuzione
- 26. Come posso creare una proprietà di classe statica PHP in fase di esecuzione (in modo dinamico)?
- 27. Differenza tra moduli e librerie condivise?
- 28. doppio moltiplicazione diverso tra fase di compilazione e di esecuzione a 32 bit piattaforma
- 29. Differenza tra MySQL e MariaDB Piano di esecuzione delle query
- 30. Enorme differenza di tempo tra l'ordinamento di un set e l'ordinamento di un elenco in Python
Si prega di dare un'occhiata a: http://stackoverflow.com/questions/2055840/difference-between-load-time-dynamic-linking-and-run-time-dynamic-linking – smwikipedia