-
Data: 2017-12-01 16:42:04
Temat: Re: Architektura aplikacji - powody wyłączania dll z exe
Od: fir <p...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu piątek, 1 grudnia 2017 13:21:13 UTC+1 użytkownik M.M. napisał:
> On Friday, December 1, 2017 at 1:23:11 AM UTC+1, AK wrote:
> > Użytkownik "M.M." <m...@g...com> napisał:
> >
> > > Pytasz dlatego, żeby wiedzieć, czy mam podstawy aby ustalić czego kompilator
> > > (bez względu na użyty algorytm) nie może (bez ryzyka) odrzucić? Nie mam takich
podstaw.
> >
> > Ok. No to po krótce.
> > Nie kompilator ale linker (kiedys byl to osobny program) m atu glownie "do
czynienia".
> > Akurat na DOS/Windows format *.lib-a to po prostu zbior *.obj-tow.
> > obj to kompilat powstajacy z np. (jednego lub wielu) *.c
> > Ten kompilat to po prostu bytecode, ale nie scalony - czyli skladajacy sie z
segmentow kodu
> > i danych i slownika symboli dla linkera (zmanglowane nazwy funkcji, zmiennych
itp)
> > W obj-cie nie ma podzialu na funkcje. sa tylko bloki kodu i danych. "Standardowo"
linker w ogole nie
> > wie
> > nic o funkcjach. On tylko laczy porzez symbole bloki kodu i danych w gotowy
*.com czy *.exe
> > To powoduje ze gdy ktos w takim *.c umiesci 80% funcji to nawet jesli uzyje w
kodzie docelowym
> > tylko jednej z nich (i to bez zaleznosci) to dolinkowany zostanie i tak caly kod
(segment CODE)
> > w ktorym znajduje sie ta funkcja. Dlatego dobrze jest (i tak sie robi) tworzyc
wiele obj-tow
> > nawet jesli funkcje z jednego sa od siebie neizalezne.
>
> Chodź szczegółów nie znam, to ogólnie tak to sobie wyobrażałem i
> coś podobnego dawno temu czytałem.
>
>
> > Tak bylo drzewiej (na DOS i WIndows).
> Czyli teraz się pozmieniało.
>
> > Dzis jest lepiej bo i obj juz dawno porzestal byc surowy/standardowy i mozna
wiele informacji do
> > niego
> > dowalic (chocby symbole dla debuggera, demangling itp) i linkowanie na poziomie
funkcji dzis ni4
> > jest nowina/
> > Ale i tak to bardzo compiler-specific i wciaz dobrze jest stosowac zasade wielu
neizaleznych
> > obj-tow.
> > Tyle ze kiedyc obj-ty mozna bylo linkowac teoretycznie dowlonym linkerem (dobze o
tym wiedza
> > Clipperowcy
> > gdy stosowalismy Borlandowskiego szybkiego i prostego tlinka zamiast
Clipperowskiego plinka), ale
> > dzisiaj
> > linkery staly sie juz wlasciwie czescia kompiltatora z w/w powodow.
>
> Rozumiem. Teraz niekoniecznie jest tak źle jak kiedyś, ale standardy
> poszły do kosza. Dziękuję za wyjaśnienia.
>
> Niepokoi mnie tylko jedno. W językach takich jak C, C++ , Pascal i w
> kilku innych, można zrobić:
>
> var = foo() // trudna do oszacowana wartość
> var(); // wywołanie funkcji
>
> Wiem że taka praktyka programistyczna jest bardzo zła, ale formalnie
> poprawna. Jak więc linkier / kompilator może ustalić, że pewne funkcje
> z libów można pominąć?
>
> Pozdrawiam
o ile pamietam (bo nigdy jakos sam nie generowalem libow) lib to archiwum (zestaw)
plikow o/obj
kazdy taki plik o ma swoje importy i exporty w postaci dwu tabel wiec
linker wie ktorych potrzebuje (bo wie ktore symbole potrzebuje importowac) a ktore sa
mu dio niczego nie potrzebne - tymsamym
to nie funkcje sie odrzuca tylko
odrzuca sie na poziomie tych wewnetrznych plikow obj
trzebby oczywioscie doczytac bo to dosyc wazne (ale jak to zwykle troche nie mam
sily)
Następne wpisy z tego wątku
- 01.12.17 20:14 Roman Tyczka
- 02.12.17 00:11 M.M.
- 02.12.17 02:02 fir
- 02.12.17 08:59 AK
- 02.12.17 09:15 AK
- 02.12.17 09:24 AK
- 02.12.17 12:15 fir
- 02.12.17 12:43 fir
- 02.12.17 16:12 AK
- 02.12.17 16:15 AK
- 02.12.17 16:26 fir
- 12.09.18 19:55 s...@g...com
Najnowsze wątki z tej grupy
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-08-06 Gdynia => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-08-06 Białystok => Inżynier oprogramowania .Net <=
- 2025-08-06 "[...] sejmowe wystąpienie posłanki Klaudii Jachiry, która zakończyła je słowami ,,Sława Ukrainie"."
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Panuje się 181 159,42 zł./mies. na posła w 2026r.
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Czy cos fi przechodzi przez trafo separujące?
- 2025-08-05 kajaki i promile
- 2025-08-05 Re: Tesla jest bezpieczna, wczoraj spaliła się doszczętnie na Ursynowie i nikomu się nic nie stało
- 2025-08-05 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-08-05 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-05 B2B i książka przychodów i rozchodów
- 2025-08-04 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML