全部学习汇总: https:///GreyZhang/little_bits_of_linux
今天做下面这段代码的分析:

这些主要是一些信息定义,更多能够看到的是汇编代码的使用。
27行,其实可以类比C语言定义一些全局变量,但是这些其实都是段定义。
18~34行,其实可以理解为一个段的切换。应该是让编译器知道,分析到了这个地方的时候,接下来的信息存放到当前指定的分段。
这样,begtext段存储到.text区、begdata段存储到.data区、begbss段存储到.text区。
关于36行到41行的解释,我直接在代码中增加了说明,这样更有针对性。

接下来的43~45,按照资料说法是说明系统跟文件系统与引导程序使用同样的设备、交换区与引导程序使用同样的设备。不过,单纯从这里似乎看不到是如何说明的。而这部分,在代码中还有另一处引用。

这里似乎是定义了两个word类型的量,同时分配到两个指定的段。具体的使用方式,这个后面或许可以再深入学习下。这一次分析,暂且不去深入了。

这部分略微简单一点了,其实是跟工具有关的了,这里其实指定了程序的入口。很多嵌入式也有类似的技术点,一般嵌入式中的main函数就是从这里进入的。
















