-
Data: 2010-12-28 11:54:56
Temat: Re: [win][asm] przestrzen procesu
Od: "Bogdan (bogdro)" <b...@p...gazeta.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 28.12.2010 09:46, slamazar pisze:
> bawilem sie wczoraj jeszcze troche wspominanym OllyDebug
> i zaobserwowalem co nastepuje (o ile nie myli mnie pamiec co do
> szczegolow adresow bo nie robilem notatek):
>
> modul mojej aplikacji exe zostala wgrany pod adres 0x40000000
> (albo 0x40001000 w kazdym razie tutaj byl punkt startowy)
> - to sie zgadza z tym co czytalem ze domyslnie pod ten adres mapowane
> sa exeki;
>
> chyba od razu za tym (o ile pamietam) byla duza sekcja danych (glownie zera
> wiec chyba tam byly zaalokowane malokiem i statycznie tablice)
Albo dopełnienie w celu wyrównania adresu kolejnej sekcji do granicy
4096 bajtów.
> pod adresami 0x7xxxxxxx w przestrzeni procesu znajdowalo sie
> kilkanascie dllelek glownie systemowych jak kernel32.dll
> (swoich wlasnych aplikacja nie uzywa) i pare tez mi nie znanych
> ale chyba okolosystemowych, plus jedna ("hook.dll" o ile
> pamietam ) pochodzaca z mojego slownika polsko angielskiego
> firmy techland - ten slownik zaklada takie hooki bo ma opcje
> kontekstowych tlumaczen tekstow odrazu z aplikacji
>
> ciakawa wogole sprawa; jak to jest ze te dllki sa mapowane w
> prywatnej przestrzeni procesu? zdawalo mi sie ze powinny byc one
> w wyzszej polowce adresow systemowych;
Może tam są, tylko w procesie wyglądają na zmapowane pod niższe
adresy. Ale może to być kwestia tego, że program jest uruchomiony pod
debugerem - on też korzysta z wywołań systemowych, może więc
"przechwytuje" je dla programu: wstawia swoje zaślepki pod adresami
0x7xxxxxxx (aby na przykład można było podejrzeć parametry
uruchamianych funkcji), po czym odwołuje się do tych właściwych już
pod innymi, "bardziej standardowymi" adresami.
> drugie pytanie czy da sie
> wypatrzec wiecej ciekawego info jak powyzsze, debuggerem w przestzreni
> prywatnej procesu?
Zależy, co Cię interesuje. Sekcje kodu i danych na pewno można
zobaczyć, pewnie też sekcję zasobów (.res, czy jakoś podobnie,
zawierającą m.in. identyfikatory elementów interfejsu graficznego).
Sekcja .bss to dane niezainicjalizowane (program mówi, ile potrzebuje,
a system mu daje w chwili uruchamiania). Gdzieś też (raczej pod
wyższymi adresami) powinien być stos.
> jak dokladnie z pol PE mozna orzec gdzie zostana
> zmapowane sekcje
Tego nie wiem. W zasadzie nie wiem nawet, czy w ogóle się da. Może
program ładujący ma w sobie zapisane te adresy. Ostatnie wynalazki w
stylu losowanie adresu przestrzeni danych mogłyby świadczyć, że w
nagłówku nie ma tych informacji (albo program ładujący je ignoruje).
Ale może poczekajmy, aż wypowie się ktoś bardziej kompetentny w
temacie formatu PE.
> i kore sekcje są 'minimalne'; czy da się zrobic
> funkcjonalny program PE wylacznie z sekcja .text (plus ewentualnei
> tablice importow i exportow) czy raczej jeszce jakies powinny byc?
Jeśli nie używasz żadnych zmiennych, to możliwe, że te wystarczą. Ale
głowy nie dam.
> borland 55 ktorego uzywam kompiluje o ile dobrze pamietam az osiem
> sekcji z ktorego jednanazywa sie .tls - co to moze byc?
Thread-local storage.
--
Pozdrawiam/Regards - Bogdan (GNU/Linux & FreeDOS)
Kurs asemblera x86 (DOS, GNU/Linux):http://rudy.mif.pg.gda.pl/~bogdro
Grupy dyskusyjne o asm: pl.comp.lang.asm alt.pl.asm alt.pl.asm.win32
www.Xiph.org www.TorProject.org Soft (EN): miniurl.pl/bogdro-soft
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- Rosjanie chwalą się prototypem komputera kwantowego. "Najważniejszy projekt naukowy Rosji"
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- 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!!!
Najnowsze wątki
- 2026-01-03 Warszawa => Account Manager - Sprzedaż Usług Rekrutacyjnych <=
- 2026-01-03 "Obywatelskie zatrzymanie"
- 2026-01-03 ograniczanie sztucznej inteligencji
- 2026-01-02 Szalejąca dyskryminacja obywateli USA w Maili i Burkina Faso. Czy to legalne?
- 2026-01-02 Miało być zniesienie abonamentu RTV, a jest podwyżka!!!
- 2026-01-02 Miało być zniesienie abonamentu RTV, a jest podwyżka!!!
- 2026-01-02 Kogo KE opierdoli za nieskuteczną cenzurę? [Rząd tuski doniósł]
- 2026-01-02 Gdańsk => Konsultant Microsoft Dynamics AX/365 SCM Consultant - Servi
- 2026-01-02 Gdańsk => Solution Architect (Workday) - Legal Systems <=
- 2026-01-02 Gdańsk => Microsoft Dynamics 365 Finance Consultant <=
- 2026-01-02 Microsoft, C/C++ na Rust - news
- 2026-01-01 szyby macie całe?
- 2026-01-01 Najbogatsi ludzie na świecie są jeszcze bogatsi. Bezprecedensowa skala zysków
- 2026-01-01 Najbogatsi ludzie na świecie są jeszcze bogatsi. Bezprecedensowa skala zysków
- 2026-01-01 Wszystkiego najlepszego




5 Najlepszych Programów do Księgowości w Chmurze - Ranking i Porównanie [2025]