- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * Smp的前提和注意点,照读 * 启动时只有一个进程,或者说上下文。 * 照读 照读 * * 结合后面叙述,来讲述此图 * BP先完成自身初始化,进入保护模式并开启页式存储管理机制,再完成系统特别是内存初始化 * 自旋——无限循环 * MTRR是一个存储类型及范围寄存器 MTRR并不是非用不可的,它的使用只是使管理更加精细而已,所以是否采用MTRR是个编译选择项. 以CPU号为下标的数组,用于逻辑号物理号的转换 * 调用do_boot_cpu()时除去BP * 1.前面讲过,每个CPU在运行中必须有自己的上下文即进程,否则就不会对整个系统的运行做出贡献,反而倒会造成损害.所以,必须为每个CPU都准备一个初始进程(线程).哪怕这个初始进程本身实际上并没有什么事要做,也得要有这么一个进程才能启动这个CPU.而CPU一旦开始了初始进程的运行,以后就可以通过进程调度从系统中挑选其他进程运行了. 3.Idle从就绪队列和杂凑队列被删除,只能根据CPU号来找到,不能用进程号来找,这个线程即为“空转”进程,进程号0。 * 讲解为何要这么做,分初级阶段,和高级阶段,实模式进入保护模式 (1)次CPU的初始化涉及内部寄存器的操作,因而只能由它自己完成,主CPU无法包办代替. (2)当主CPU启动一个次CPU的时候,这个次CPU一开始还处于实地址模式,根本就不能正确地执行start_secondary()的代码. 执行start_secondary()前提:次CPU完成本身的初始化,进入保护模式,并开启了页式存储管理 注意:次CPU需要跳板而主CPU并不需要:因为主CPU在进入startup_32之前已经在引导辅助程序中进行了这些准备. * 为什么要把此这段代码复制到trampoline_base字符数组中? 当主CPU通过APIC启动次CPU运行时,要把一个启动地址发送给次CPU.可是,由于APIC的内部结构,实际上能发送的只是一个8位的物理页面号,称为向量.这样,就给启动地址加上了限制:首先,必须与页面边界对齐;其次,必须在1MB以下.这里的trampoline_data()是不满足这两个条件的,所以要另行在1MB以下分配一个物理页面,把trampoline_data的代码复制到这个页面中,这就是trampoline_base. * Init_deasserted相当于加锁。是和AP同步所需 这个地址是物理地址,在写入寄存器前先右移了12位,因为启动地址一定是与页面边界对齐的,其低12位一定是0.另一方面,启动地址一定在1MB以下,其最高12位也一定是0,所以右移以后真正要发送出去的是8位. 在startup_32()中,由于次CPU的寄存器%ebx中的内容为1,就可以和主CPU区分开来,因为有些操作是共同的,而又有些则只由主CPU完成. * 不会从initialize_secondary( )返回了 * start_secondary( )主要是两步cpu_init( )和smp_callin( ) * TSC64位,十年不重复 * 这些目录项是为CPU由段式映射向页式映射过渡而设置的. 对于单CPU的系统,一旦CPU转入了页式映射,这些目录项就可以清除了.可是在SMP结构的系统中,则要到所有的CPU都转入页式映射以后才能清除.而现在是时候了. 表面上cpu_idle()是个函数调用,但是实际上永远不会从那里返回了,因为cpu_idle()的主体是个无限循环,只要系统中有就绪进程在等待执行,就调度其运行,否则就使CPU进入硬件睡眠状态,直到有中断发生时才恢复运行. * * Linux内核分析多处理器SMP系统结构 黄晶晶 1134444 蒋乾悦 1131843 魏浩洋 1131841 SMP简介 SMP简介 SMP系统的引导 SMP结构中的互斥 SMP结构中的高速缓存与内存的一致性 SMP结构中的中断机制 SMP结构中的进程调度 SMP简介 在给定的时间内,CPU的最高速度是有限的,提高计算速度方法之一 就是使用多个CPU 多处理器系统(Multi-Processor Systems,MPS) 整个硬件系统由统一的操作系统控制, 在处理器和程序之间实现作业、任务、 程序等的全面并行 内存 CPU CPU CPU CPU 并行计算机分类 根据指令流和数据流的不同,通常把计算机系统分为: 单指令流单数据流(SISD) 单指令流多数据流(SIMD) 多指令流单数据流(MISD) 多指令流多数据流(MIMD) 并行计算机系统绝大部分为MIMD系统(5类),包括 并行向量机(PVP,Parallel Vector Processor); 对称多处理机(SMP , Symmetric Multi Processor); 大规模
您可能关注的文档
最近下载
- 2023年11月深圳市福田区公开选用机关事业单位辅助人员和社区专职工作者笔试历年(2016-2023年)真题荟萃带答案解析.pdf VIP
- 2024秋(人教版)英语七年级上册:单词表 汇总表.pdf
- 2022年通信工程师中级传输与接入(无线)真题及答案.pdf
- 第二章一元二次函数、方程和不等式教学设计(全章).docx
- 国家开放大学《电子商务概论》1-9章 形考任务阶段测验1、2答案(无错版本)82295 .pdf VIP
- 江苏省普通高校“专转本”选拔考试管理专业大类专业综合操作技能考试大纲.docx
- 银行开展减费让利宣传活动的总结范文(30篇).docx VIP
- 美育——美即生活-期末复习-题库-试卷.docx
- 预定动作时间标准法(PTS).doc VIP
- 中国饮食文化(教案) (中职教育).docx
文档评论(0)