These links are amazing. I would have never found these. I've been looking for good introductory resources for the past few days now. So glad to see this pop up in my news reader.
Credits: This guide was originally created by Adam Ferrari many years ago,
and since updated by Alan Batson, Mike Lack, and Anita Jones. It was revised for 216 Spring 2006 by David Evans.
In a similar vein, on the quest of understanding yet another abstraction layer deeper, I've been trying to get to grips with how linking/loading works by writing some ELFs by hand.
Dynamic linking is giving me some problems though---I can't seem to get ld.so to do relocs for me. This is almost certainly due to some fundamental misunderstanding of mine, but I don't have the debugging tools to easily correct this.
So far I've just been using readelf and LD_DEBUG to perform basic sanity checking, but now my only idea is to walk through ld.so using gdb.
Hello, sorry I don't have your solution but I'm in your situation with not quite understanding linking. I have a lot of issues with linking/calling C++ and C libraries from each other or other low level languages. My background is in web stuff.
Could you please point me to the resources you used to get to your present level? Thanks :)
Nice to see those mathematical instructions in a simple list. I spent a while recently writing a "math compiler", and it started out using integer multiplication, division, etc.
Now I do it properly with floating-point instructions:
[+] [-] CalChris|7 years ago|reply
https://software.intel.com/sites/default/files/m/d/4/1/d/8/I...
https://cs.brown.edu/courses/cs033/docs/guides/x64_cheatshee...
https://web.stanford.edu/class/archive/cs/cs107/cs107.1194/g...
[+] [-] npo_|7 years ago|reply
Thank you!
[+] [-] warmwaffles|7 years ago|reply
[+] [-] moggi|7 years ago|reply
[+] [-] Arelius|7 years ago|reply
Any chance you, or anyone else has documentation on x86_64 Windows calling conventions? That's where I've been getting stuck.
[+] [-] W-Stool|7 years ago|reply
[+] [-] dzdt|7 years ago|reply
Credits: This guide was originally created by Adam Ferrari many years ago, and since updated by Alan Batson, Mike Lack, and Anita Jones. It was revised for 216 Spring 2006 by David Evans.
[+] [-] xelxebar|7 years ago|reply
Dynamic linking is giving me some problems though---I can't seem to get ld.so to do relocs for me. This is almost certainly due to some fundamental misunderstanding of mine, but I don't have the debugging tools to easily correct this.
So far I've just been using readelf and LD_DEBUG to perform basic sanity checking, but now my only idea is to walk through ld.so using gdb.
I'd be much obliged for any suggestions. Cheers!
[+] [-] urbanslug|7 years ago|reply
Could you please point me to the resources you used to get to your present level? Thanks :)
[+] [-] andreygrehov|7 years ago|reply
[+] [-] stevekemp|7 years ago|reply
Now I do it properly with floating-point instructions:
http://github.com/skx/math-compiler/
[+] [-] ke2g|7 years ago|reply
[+] [-] unknown|7 years ago|reply
[deleted]
[+] [-] unknown|7 years ago|reply
[deleted]