linux笔记
iteye_8160
这个作者很懒,什么都没留下…
展开
-
80x86逻辑地址到线性地址的转换
先梳理一下概念: 逻辑地址是由16位的段选择符和32位的偏移量组成; 段选择符是有13为的index,1位TI,2位RPL组成; 段选择符存在CPU的段寄存器中; 段描述符放在全局描述符标GDT或者局部描述符LDT中; 段描述符是8字节64位,里面有Base字段是该段的首字节的线性地址; (notice)段描述符原始是存在GDT 或者 LDT中的,但是80x86...原创 2013-10-20 13:09:52 · 294 阅读 · 0 评论 -
linux的分段
linux 更倾向于使用分页方式,不怎么喜欢使用分段, 分段可以给美国进程分配不同的线性地址空间,分页可以把同一个线性地址隐射到不同的物理地址(这跟linlux的分页机制有关) 因为这样更容易跨平台,但是由于分段是硬件就支持的,linux还是使用了分段; 用户代码段 用户数据段 内核代码段 内核数据段 关注的Base字段都是0x00000000,G位为1,用户态的DPL为...原创 2013-10-20 14:41:04 · 91 阅读 · 0 评论 -
文件的suid ,sgid, sticky
suid(set User ID,set UID)的意思是进程执行一个文件时通常保持进程拥有者的UID。然而,如果设置了可执行文件的suid位,进程就获得了该文件拥有者的UID。 sgid(set Group ID,set GID)意思也是一样,只要把上面的进程拥有者改成进程组就好了。 如果一个文件被设置了suid或sgid位,会分别表现在所有者或同组用户的权限的可执行位上。 ...原创 2014-01-18 04:34:24 · 122 阅读 · 0 评论