程序的链接、装载和库——《程序员的自我修养》笔记
来源:互联网 发布:现代诗歌 知乎 编辑:程序博客网 时间:2024/06/05 18:10
一.计算机软件系统体系结构
计算机系统软件体系结构采用一种层的结构,有人说过一句名言:
计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决。
这句话几乎概括了计算机系统软件体系结构的设计要点,整个体系结构从上到下都是按照严格的层次结构设计的,不仅是计算机系统软件整个体系是这样的,体系里面的每个组件比如操作系统本书,很多应用程序、软件系统甚至很多硬件结构都是按照这种层次的结构组织和设计的,系统软件体系结构中,各种软件的位置如下图所示。
二.程序从源代码到运行起来的整个流程
1. 预编译(源代码-源代码)
2.编译(源代码——汇编文件)
编译有分为很多步骤:扫描,语法分析,语义分析,源代码优化,代码生成和目标代码优化.最终产生的是汇编文件.
3.汇编(汇编文件——机器命令(目标文件)),属于汇编语言的知识
4.链接(目标文件+库——可执行文件)
有两种链接:静态链接和动态链接
5.装载(可执行文件的装载)
覆盖
页映射
6.运行
程序运行,肯定要首先把程序装载到内存中去,然后才是物理地址和逻辑地址等等,也就是说涉及三层映射,具体可以看一看《详解LMA(装载内存地址)与VMA(虚拟内存地址)》这个文档。
可执行文件映射到虚拟地址,虚拟地址映射到物理地址。
7.运行库
8.windows api和系统调用
0 0
- 程序的链接、装载和库——《程序员的自我修养》笔记
- 《程序员的自我修养——链接、装载与库》
- 《程序员的自我修养——链接、装载与库》
- 《程序员的自我修养—链接、装载与库》
- 程序员的自我修养--链接,装载,库
- <程序员的自我修养-链接,装载与库> 阅读笔记
- 程序员的自我修养-链接装载与库笔记
- 《程序员的自我修养——链接、装载与库》第一章笔记
- 《程序员的自我修养-链接、装载和库》序
- 程序员的自我修养---链接,装载和库
- 《程序员的自我修养--链接、装载与库》笔记--第二章 编译和链接
- 《程序员的自我修养——链接、装载与库》勘误
- 专访《程序员的自我修养——链接、装载与库》作者俞甲子
- 推荐:《程序员的自我修养——链接、装载与库》 读书笔记
- 《程序员的自我修养——链接、装载与库》 读书总结
- 程序员的自我修养——链接,装载与库(第1,2部分)
- 程序员的自我修养——链接,装载与库(第3,4部分)
- 读书笔记之《程序员的自我修养——链接、装载与库》
- 对称、非对称加密技术初探
- POJ 1836 Alignment (动态规划LIS)
- 各种有关时间的插件
- android虚拟机详解(5%原创)
- 英尺转换成米
- 程序的链接、装载和库——《程序员的自我修养》笔记
- Unity之android推送
- MyBatis 实践 -配置
- 【极简版GH60】【GH60剖析】【二】原理图的分析
- 去掉dedecms友情链接中的LI标签
- Spring中HttpInvoker远程方法例子
- 【极简版GH60】【GH60剖析】【三】组件的选购
- android内存泄露分析工具MAT详解
- 007_Http之常用编码