-
X-Received: by 10.31.168.133 with SMTP id r127mr402401vke.8.1510910957424; Fri, 17
Nov 2017 01:29:17 -0800 (PST)
X-Received: by 10.31.168.133 with SMTP id r127mr402401vke.8.1510910957424; Fri, 17
Nov 2017 01:29:17 -0800 (PST)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
0.net!peer02.am4!peer.am4.highwinds-media.com!peer02.iad!feed-me.highwinds-medi
a.com!news.highwinds-media.com!m31no155159qtf.0!news-out.google.com!v14ni329qtc
.0!nntp.google.com!m31no155155qtf.0!postnews.google.com!glegroupsg2000goo.googl
egroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Fri, 17 Nov 2017 01:29:17 -0800 (PST)
In-Reply-To: <oukn36$l7m$1@node2.news.atman.pl>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=194.9.244.38;
posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
NNTP-Posting-Host: 194.9.244.38
References: <0...@g...com>
<oukn36$l7m$1@node2.news.atman.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <4...@g...com>
Subject: Re: Architektura aplikacji - powody wyłączania dll z exe
From: Maciej Sobczak <s...@g...com>
Injection-Date: Fri, 17 Nov 2017 09:29:17 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Body-CRC: 1017505073
X-Received-Bytes: 3096
Xref: news-archive.icm.edu.pl pl.comp.programming:211668
[ ukryj nagłówki ]> Aby nie ładować wszystkiego na raz do pamięci. Przeciętna poważna
> aplikacja może mieć sumę zajmowanego kodu w dll w granicach kilku GB.
A ile ta przeciętna poważna aplikacja zajmowałaby gdyby była zlinkowana statycznie?
Przykład obrazkowy (nierealny, ale łatwy): jest biblioteka funkcji, nich będzie, że
matematycznych. Jest tam 1000 funkcji i biblioteka w postaci DLL ma 1000MB, czyli
średnio 1MB/funkcję. Program korzysta tylko z jednej funkcji i powiedzmy, że jest ona
niezależna od innych. Taki program wciąga 1GB DLL dynamicznie (i korzysta tylko z 1
promila tego) albo jest tylko o 1MB grubszy statycznie.
To nie jest taki całkiem nierealny przykład, zwłaszcza jeśli mówimy o bibliotekach
masowego rażenia, np. GUI albo innych 3rd-party. Przeciętny program używa tylko
ułamka takich bibliotek i jeśli jest linkowany statycznie, to jego ciężar może być
znacznie mniejszy, niż suma wszystkich bezpośrednio i pośrednio wciąganych DLLek.
Czas startu takiego programu też będzie mniejszy, nie tylko z powodu mniejszego
rozmiaru (czyli mniejszej ilości danych do wczytania), ale też z powodu braku
konieczności patchowania symboli z dynamicznie wczytanych bibliotek (jeśli taki
mechanizm w danym systemie występuje).
Ponawiam pytanie: ile przeciętna poważna aplikacja (taka na kilka GB) zajmuje po
statycznym linkowaniu? I jak to wpływa na jej czas uruchamiania?
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 17.11.17 15:23 s...@g...com
- 17.11.17 17:28 Sebastian Biały
- 17.11.17 17:35 Sebastian Biały
- 17.11.17 18:11 s...@g...com
- 17.11.17 18:29 Sebastian Biały
- 18.11.17 11:38 M.M.
- 19.11.17 13:21 fir
- 19.11.17 14:02 fir
- 19.11.17 14:11 fir
- 19.11.17 18:26 m...@k...org
- 19.11.17 18:28 m...@k...org
- 20.11.17 08:08 M.M.
- 20.11.17 12:57 Maciej Sobczak
- 20.11.17 13:42 Maciej Sobczak
- 20.11.17 17:26 fir
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=