La pizzeria di Christian
105 subscribers
1.41K photos
3 videos
22 files
496 links
Canale pubblico dove scrivo come perdo tempo
@sigma_hub
Download Telegram
ok forse ho capito il giro
come fa la stampante hp di 20 anni fa a funzionare PERFETTAMENTE e quella che presi 10 anni fa NO
Non penso che nella fine del 2025 potessi sentirmi ispirato da una AI, sono davvero caduto in basso ma mi ha dato dei suggerimenti super specifici della madonna che non avrei potuto chiedere a nessuno
e cosi si stanno chiudendo le famose domande di Arves 14enne che si domandava cos'era una IAT e come faceva Themida a distruggerla
incredibile come le cose funzionino a cerchio
qui bisogna tornare indietro
l'Old new thing ha dei blog tecnici che parlano dei PE,specificamente di come il loader di ntoskrnl risolve il caricamenti di una DLL, direi che è molto importate per definire come Windows legge la .idata (la tabella degli import) che è a quanto pare più complessa di quel che pensavo (si parlano di certi hinting che ancora non so)
chiaramente potrei chiedere una AI di riassumere tutto in maniera veloce, ma non capirò mai come funziona sta roba BENE in questo modo, e l'unica cosa che conta in questo canale è perdere quanto più tempo possibile in conoscenze di dominio super specifiche e non vendibili in nessun tipo di l*voro
🔥1
ora anche qui la fantomatica domanda è, come hanno fatto quelli dell'LLVM senza super insight da Microsoft/GNU a implementarsi il linker? Qui si parla di conoscenze speciali trovabili solo con le query giuste a devblogs.microsoft.com/oldnewthing/
The 8086 instruction set also has special instructions which treat the DX:AX pair as a single 32-bit value, so that was the obvious choice to be the register pair used to return 32-bit values.
> The classic (pre-prototype) C language allowed you to call functions without telling the compiler what parameters the function requested, and it was common practice to pass the wrong number of parameters to a function if you “knew” that the called function wouldn’t mind. (See “open” for a classic example of this. The third parameter is optional if the second parameter does not specify that a file should be created.)

😭 SI OK non avevo mai ragionato che questo fosse il motivo per cdecl
You may notice that all of the RISC calling conventions are basically the same. Once again, evidence that the 8086/x86 is the weirdo. A wildly popular weirdo, mind you.
he Itanium has 128 integer registers, 32 of which (r0 through r31) are global and do not participate in function calls. The function declares to the processor how many registers of the remaining 96 it wants to use for purely local use (“local region”), the first few of which are used for parameter passing, and how many are used to pass parameters to other functions (“output registers”).

ecco a che servono gli ordinal
ok tra poco torna mirmir, quindi qui posto un po' i thread che ho trovato su oldnewthing per ora riguardante il tema di loader e di DLL, magari a qualcuno possono risultare utili

queste risorse riguardano generalmente come WIndows 16/32 leggono gli import ed export, come mai sono state fatte certe scelte e cosi via

Cosa molto stupida (scontata per chi ha fatto un po' di DLL) riguardante __dllexport
- https://devblogs.microsoft.com/oldnewthing/20040112-00/?p=41083
Perchè ci sono cosi tante calling convention???
- https://devblogs.microsoft.com/oldnewthing/20040102-00/?p=41213
- https://devblogs.microsoft.com/oldnewthing/20040107-00/?p=41183
- https://devblogs.microsoft.com/oldnewthing/20040108-00/?p=41163
- https://devblogs.microsoft.com/oldnewthing/20040108-00/?p=41163
- https://devblogs.microsoft.com/oldnewthing/20040113-00/?p=41073
- https://devblogs.microsoft.com/oldnewthing/20040114-00/?p=41053
Index riguardante DLL import e DLL export:
- https://devblogs.microsoft.com/oldnewthing/20060727-04/?p=30333
Comando per controllare i linkermember:
- https://www.geoffchappell.com/studies/msvc/link/dump/options/linkermember.htm
Ottimizzazioni di come Windows carica una DLL:
- https://devblogs.microsoft.com/oldnewthing/20100317-00/?p=14573
- https://devblogs.microsoft.com/oldnewthing/20100318-00/?p=14563
- https://devblogs.microsoft.com/oldnewthing/20231129-00/?p=109077
- https://devblogs.microsoft.com/oldnewthing/20231130-00/?p=109084
Diciamo che gli ordinal sono un legacy usato quasi solo per ottimizzare
Intel 486sx ma ne sa