摘要:
进程:程序执行的一个实例,充分描述程序已经执行到何种程度的数据结构的集合.目的:担当资源分配的实体.每个线程是进程的一个执行流,可以由内核独立调度.标示一个进程 进程和进程描述符一一对应.并且一个线程组公用一个PID.进程描述符处理: Linux吧内核态的进程堆栈和紧挨进程描述符的小数据结构thread_info,紧凑地存放在一个单独为进程分配的存储区内.其Size=8K.即两个页框.且为了效率,第一个页框的起始地址=2(13)倍.其中,thread_info的size=52B.位于存储区的开始处.堆栈起始于末端,并朝内存区开始的方向增长.用户态刚切换到内核态时,栈为空.esp寄存器指向栈顶. 阅读全文
摘要:
进程:程序执行的一个实例,充分描述程序已经执行到何种程度的数据结构的集合.目的:担当资源分配的实体.每个线程是进程的一个执行流,可以由内核独立调度. 标示一个进程 进程和进程描述符一一对应.并且一个线程组公用一个PID. 进程描述符处理: Linux吧内核态的进程堆栈和紧挨进程描述符的小数据结构thread_info,紧凑地存放在一个单独为进程... 阅读全文
摘要:
操作系統基本概念 操作系统的基本概念 OS要完成的两个目标:1)与硬件部分交互;2)为应用程序提供执行环境 OS将PC物理组织的低层细节对用户隐藏.该特性依靠特殊的硬件特性来禁止用户APP直接与低层硬件进行交互,或者禁止直接访问任意的物理地址 硬件为CPU引入了两种执行模式:特权模式(内核态)/非特权(用户态) 多用户系统: 1)并发(concurrently):... 阅读全文
摘要:
内存地址 三种内存地址:1)逻辑地址(机器指令中操作数或指令的地址) 分段单元 2)线性地址(虚拟地址)分页单元 3)物理地址(用于内存芯片级内存单元寻址多CPU时,共享同一内存,RAM芯片由独立的CPU并发访问; 由内存仲裁器保证RAM的读写的串行执行 Linux中的分段 80X86才使用分段(把程序划分为逻辑相关的实体),Linux更喜欢使用分页(当所有进程使用相同的段Register值时,它们共享同样的一组线性地址,这样内存管理简单; RISC对分段的支持有限.).两者都划分进程的物理地址空间:分段可以给每一个进程分配不同的线性地址空间,而分页可以把同一线性地址空间映... 阅读全文