ps:其实很早就整理了,但是最近一直很忙,也没来得及发出来,也该给自己的博客拔拔草了,嘿嘿~闲话少说,切入正题:
布吉岛为什么不能换方向。。。这个图画的丑了点、简略了点,不过道理还是在的。我们理一下整个图的思路流程:
- 当我们写完一段C代码后,程序在哪?
答:磁盘。 - 程序被编译会经历什么?
答:程序会产生一块独立的虚拟地址空间,从底地址到高地址依次是:[隔离区]、text、data、bss、堆、[共享库的存储器的映射区域]、栈、命令行参数和环境变量。 - 程序什么时候才会加载到内存?
答:第一次被调度的时候。当进程满足条件可以运行时并得到了调度,OS会首先为其创建一个task_struct结构体(其中的具体内容定义见下幅图),其中很重要的就是一个*mm,是个什么东东,见后续博客喽。