#分段管理
这几天在学zend的内存管理,看着不是很懂,于是了解到计算机有两种内存管理,一种叫分段管理,一种叫分页管理
今晚上在这里看了分段管理,尽管自己也不是很懂,但是还是写下来吧,加深自己的学习记忆
学习自网址:https://www.jianshu.com/p/d094075d881d
####1.分段
进程地址空间,按照自己的逻辑关系分为若干个端,每一个段都有一个端名,可以理解为段号,每个段都是从0开始的
内存分配规则:以端为单位进行分配,每个端在内存中占据连续的空间,但是各个段可以不想理你。
一般来说一个
物理地址 = 段地址+偏移
分段系统的逻辑地址结构是段号和段内地址(段内偏移量构成)。
段号位数决定了一个进程最多分为多少段
段内地址决定了每个端的最大长度
如果说段号是16为那么最大表示是2的16次方也就是64k个段,段内的地址占16位,因此每个段的最大长度是2的16次方。
一个程序有好多段寄存器
比如说
cs 代码段寄存器
ds 数据段进村器
ss 堆栈寄存器
es 附加寄存器