随笔分类 - 后端开发
摘要:在main函数执行之前,要先初始化进程执行环境。比如堆栈分配初始化(malloc, free)、线程子系统等。 C++的全局对象的构造函数在main之前被执行,C++全局对象的析构函数在main之后被执行。 Linux系统库:Glibc。当我们的程序与Glibc库链接在一起形成最终可执行文件以后,这
阅读全文
摘要:1. 空间与地址分配 1.1 按序叠加 将输入的目标文件按照次序叠加起来。 1.2 相似段合并 将相同性质的段合并到一起 两步链接法:第一步,空间与地址分配,第二步,符号解析与重定位 1.3 符号地址的确定 bss段不占用文件的空间,但是它在装载时占用地址空间。 2. 符号解析与重定位 在完成空间和
阅读全文
摘要:程序从源码编译为目标代码的时候,这个目标文件的格式是怎么样的? ELF目标文件有代码段,数据段和BSS段。 ELF目标文件的头文件,段表,重定位表,字符串表,符号表,调试表。 无论是可执行文件,目标文件或库,它们实际上都是一样基于段的文件或是基于这种文件的集合。 程序的源代码经过编译后,按照代码和数
阅读全文
摘要:主要用到了 PHP 的 date() 函数和 mktime() 函数。 date() 函数的 format 参数用到了选项 t,它表示某个月总共有多少天,数值范围为28-31。 mktime() 函数主要用来创建时间戳,这里只用了4个参数,从左到右分别表示时,分,秒,月份。这样就可以创建某个月份的时
阅读全文
摘要:1. 合并分支 比如,我在某个分支A下面执行 git merge B,那么将拉取分支 B 的代码到分支 A。 2. 切换分支
阅读全文

浙公网安备 33010602011771号