linux内核设计与实现的读书笔记_第1页
linux内核设计与实现的读书笔记_第2页
linux内核设计与实现的读书笔记_第3页
linux内核设计与实现的读书笔记_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

linux内核设计与实现的念书笔录进度的调动程序是保证进度能有效工作的一个内核子系统。调度程序负责决定将哪个进度投入运转,何时运转以及运转多少时间。简单的来说,调动程序就是在给一堆就绪的进度分派办理器的时间,调动程序是多任务操作系统的基础。调动程序的原则就是最大限度的使用cpu的资源,也就是说,当系统中只需有可运转的进度,就不可以让cpu处于安闲的状态,假如系统中没有就绪的进度时,则cpu会运转一个idle进度。多任务多任务操作系统就是能够同时并发的交互履行多个进度的操作系统,需要注意这里是并发,而不是并行。假如你的计算机有两个或者两个以上的cpu那么,你的计算机就能够真实同时、并行的履行多个任务。多任务操作系统能够分为两类:抢占式多任务和非抢占式多任务。抢占式多任务中,由调动程序来决定什么时候停止一个进度的履行,这类由调动程序强行停止一个进度履行的动作称为抢占(preemption)。进度在被抢占以前运转的时间是固定的,并且有一个特意的名字,叫做时间片(timeslice)。时间片其实是分派给每个进度的办理器时间段。而非抢占式多任务是由进度自己做出退步,在履行了一段时间以后,主动地让出cpu。进度主动挂起自己的操作称为退步(yielding),假如某个进度悬挂起来并且拒不作出退步的话,可能会致使操作系统崩溃。所以总述上边的两种状况,抢占式多任务就像“法律”,只需时间到了,就把你撤下来。而非抢占式却像“道德”同样,你假如有道德,履行了一会以后,你就自己撤下来,假如有的“人”占着茅坑不拉屎,那其余进度除了用“道德”斥责它,也没有其余的方法了。2.linux进度调动linux最先的进度调动程序是特别原始的,很难适应一些众多的可运转进度和多办理器环境。以后从linux2.5开始,对linux的进度调动程序做了大的调整,使用了称为O(1)的调动算法,这个算法惹起算法行为而得名。O(1)调动算法固然在数以十计的多办理器上能表现出近乎完满的特征和可扩展性,可是因为这个算法在调动交互进度的时候并无表现出很理想的成效。所以在linux2.6的开发初期,提出了CFS算法,即完整公正调动算法。策略(1)IO耗费型进度和办理器耗费型进度IO耗费型进度指的是进度的大多半时间是用来等候IO的操作,比如图形用户界面(GUI)程序就属于IO耗费型程序,这个程序需要不断的监听用户的输入。这样的进度常常处于可运转的状态,可是每次运转的时间都很短。办理器耗费型进度是指进度的大多半时间用在履行代码上,比如大型的计算程序MATLAB就属于办理器耗费型进度。还有一些应用程序固然区分为IO耗费型进度,可是也有办理器耗费型进度的特点。比如,字办理程序,在大多半时间可能等候用户的输入,可是在某段时间该程序又可能粘住办理器疯狂的进行语法和拼写错误的检查。调动程序需要在两个矛盾目标中找寻均衡————进度的快速响应和高吞吐量。unix和linux为了获取优秀的用户响应,所以都偏向于调动IO耗费型进度。进度优先级调动算法中最基本的一种就是鉴于进度优先级的调动,这是一种依据进度的价值和其对办理器的时间需求来对进度分级的一种想法。往常的做法是优先级高的进度先履行,低的后运转,同样优先级的进度按轮转方式进行调动(一个接一个,重复进行)。在某些操作系统中,优先级高的进度的使用的时间片也长一些。调动程序老是选择优先级高的,并且时间片还没有用尽的进度。linux系统采纳了两种不一样类其余优先级,第一种是使用nice值,范围是从-20到+19,值越大表示优先级越低。这个优先级合用于一般的进度。此外,linux对及时进度采纳及时优先级,值从0-99,值越大代表优先级越高。及时进度的优先级都高于一般进度,所以这两个进度优先级是处于两个互不订交的范围内。时间片时间片是一个数值,他表示进度在被抢占前能够连续运转的时间。时间片过长会致使系统对交互的响应表现欠佳,时间片太短,却又显然增大进度切换带来的办理器时间耗费。所以IO耗费型进度和办理器耗费型进度的矛盾在这里又再次展现出来,IO耗费型进度不需要长的时间片,而办理器耗费型进度则希望时间片越长越好。长时间片将致使系统的交互性表现欠佳,好多的操作系统都很重视这一点,所以将时间片设置的很短,如10ms。可是linux的CFS调动算法并无直接分派时间片到进度,它是将办理器的使用比分给了进度,这样进度获取的办理器的时间是和系统负载亲密有关的。这个比率还会遇到nice值的影响,nice值作为权重将调整进度使用办理器时间的使用比。拥有更高nice值(低优先级)的进度将被给予低权重,进而丧失一小部分办理器的使用比,而拥有低nice值(高优先级)的进度江北给予高权重,进而获取更多的办理器使用比。在多半的抢占式操作系统中,一个新就绪的进度可否立刻履行(即抢占本来的进度),完

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论