- Extreme C
- Kamran Amini
- 275字
- 2021-03-26 16:15:41
Summary
This chapter mainly talked about various types of object files, as products of a C/C++ project after building. As part of this chapter, we covered the following points:
- We discussed the API and ABI, along with their differences.
- We went through various object file formats and looked at a brief history of them. They all share the same ancestor, but they have changed in their specific paths to become what they are today.
- We talked about relocatable object files and their internal structure regarding ELF relocatable object files.
- We discussed executable object files and the differences between them and relocatable object files. We also took a look at an ELF executable object file.
- We showed static and dynamic symbol tables and how their content can be read using some command-line tools.
- We discussed static linking and dynamic linking and how various symbol tables are looked up in order to produce the final binary or execute a program.
- We discussed static library files and the fact that they are just archive files that contain a number of relocatable object files.
- Shared object files (dynamic libraries) were discussed and we demonstrated how they can be made out of a number of relocatable object files.
- We explained what position-independent code is and why the relocatable object files participating in the creation of a shared library must be position-independent.
In the following chapter, we will go through the memory structure of a process; another key topic in C/C++ programming. The various memory segments will be described as part of the next chapter and we'll see how we can write code that has no memory issues in it.
推薦閱讀
- 極簡(jiǎn)算法史:從數(shù)學(xué)到機(jī)器的故事
- Facebook Application Development with Graph API Cookbook
- R語(yǔ)言數(shù)據(jù)可視化之美:專業(yè)圖表繪制指南
- C和C++安全編碼(原書第2版)
- Instant QlikView 11 Application Development
- 編程菜鳥學(xué)Python數(shù)據(jù)分析
- Mastering openFrameworks:Creative Coding Demystified
- Python數(shù)據(jù)可視化之美:專業(yè)圖表繪制指南(全彩)
- 零基礎(chǔ)學(xué)HTML+CSS
- Fastdata Processing with Spark
- Advanced Python Programming
- TypeScript圖形渲染實(shí)戰(zhàn):2D架構(gòu)設(shè)計(jì)與實(shí)現(xiàn)
- 金融商業(yè)數(shù)據(jù)分析:基于Python和SAS
- INSTANT Premium Drupal Themes
- WCF編程(第2版)