百度云会员 百度云会员账号 百度网盘会员账号 百度云会员分享  vip谷

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz

linux学习视频网盘

2019-2-24 10:50| 发布者: yunpanvip| 查看: 483| 评论: 0

摘要:   linux学习视频网盘 现实中的文件系统 对于大多数用户和常规系统管理任务而言,“文件和目录是一个有序的类树结构”是可以接受的。然而,对于电脑而言,它是不会理解什么是树,或者什么是树结构。 每个分区都有它 ...

  linux学习视频网盘 现实中的文件系统 对于大多数用户和常规系统管理任务而言,“文件和目录是一个有序的类树结构”是可以接受的。然而,对于电脑而言,它是不会理解什么是树,或者什么是树结构。 每个分区都有它自己的文件系统。想象一下,如果把那些文件系统想成一个整体,我们可以构思一个关于整个系统的树结构,不过这并没有这么简单。在文件系统中,一个文件代表着一个inode(索引节点),这是一种包含着构建文件的实际数据信息的序列号:这些数据表示文件是属于谁的,还有它在硬盘中的位置。 每个分区都有一套属于他们自己的inode,在一个系统的不同分区中,可以存在有相同inode的文件。 每个inode都表示着一种在硬盘上的数据结构,保存着文件的属性,包括文件数据的物理地址。当硬盘被格式化并用来存储数据时(通常发生在初始系统安装过程,或者是在一个已经存在的系统中添加额外的硬盘),每个分区都会创建固定数量的inode。这个值表示这个分区能够同时存储各类文件的数量。我们通常用一个inode去映射2-8k的数据块。当一个新的文件生成后,它就会获得一个空闲的inode。 线上linux培训

  这里总结linux调度系统的特征,从调度器、调度策略、调度器类等方面来介绍,让大家对Linux调度系统能有个初步的认识。

  因此当前linux的调度程序由两个调度器组成:主调度器,周期性调度器,两者又统称为通用调度器(generic scheduler)或核心调度器(core scheduler),并且每个调度器包括两个内容:调度框架(其实质就是两个函数框架)及调度器类。

  linux内核目前实现了6中调度策略(即调度算法),用于对不同类型的进程进行调度,或者支持某些特殊的功能。比如SCHED_NORMAL和SCHED_BATCH调度普通的非实时进程,SCHED_FIFO和SCHED_RR和SCHED_DEADLINE则采用不同的调度策略调度实时进程,SCHED_IDLE则在系统空闲时调用idle进程。

  linux学习视频网盘 Linux的文件类型 大多数文件仅仅是普通文件,他们被称为regular文件;他们包含普通数据,比如,文本、可执行文件、或者程序、程序的输入或输出等等 虽然你可以认为“在Linux中,一切你看到的皆为文件”这个观点相当,但这里仍有着一些例外。 目录:由其他文件组成的文件 特殊文件:用于输入和输出的途径。大多数特殊文件都储存在/dev中,我们将会在后面讨论这个问题。 链接文件:让文件或者目录出现在系统文件树结构上多个地方的机制。我们将详细地讨论这个链接文件。 (域)套接字:特殊的文件类型,和TCP/IP协议中的套接字有点像,提供进程间网络通讯,并受文件系统的访问控制机制保护。 命名管道 : 或多或少有点像sockets(套接字),提供一个进程间的通信机制,而不用网络套接字协议。 线上网上linux培训

  idle进程优先级为MAX_PRIO,即优先级。早先版本中,idle是参与调度的,所以将其优先级设为,当没有其他进程可以运行时,才会调度执行idle。而目前的版本中idle并不在运行队列中参与调度,而是在cpu全局运行队列rq中含idle指针,指向idle进程,在调度器发现运行队列为空的时候运行,调入运行。

  linux内核实现的6种调度策略,前面三种策略使用的是cfs调度器类,后面两种使用rt调度器类,后一个使用DL调度器类。而依据其调度策略的不同实现了5个调度器类,一个调度器类可以用一种或者多种调度策略调度某一类进程,也可以用于特殊情况或者调度特殊功能的进程。

  linux学习视频网盘 在选中将要运行的进程之后,必须执行底层的任务切换。 这需要与CPU的紧密交互,每个进程刚好属于某一调度类,各个调度类负责管理所属的进程。通用调度器自身不涉及进程管理,其工作都委托给调度器类。 线上linux培训

  调度器不限于调度进程,还可以调度更大的实体,比如实现组调度:可用的CPUI时间首先在一半的进程组(比如,所有进程按照所有者分组)之间分配,接下来分配的时间再在组内进行二次分配。

  这种一般性要求调度器不直接操作进程,而是处理可调度实体,因此需要一个通用的数据结构描述这个调度实体,即seched_entity结构,其实际上就代表了一个调度对象,可以为一个进程,也可以为一个进程组。

  linux中针对当前可调度的实时和非实时进程,定义了类型为seched_entity的3个调度实体。

  另外,对于调度框架及调度器类,它们都有自己管理的运行队列,调度框架只识别rq(其实它也不能算是运行队列),而对于cfs调度器类它的运行队列则是cfs_rq(内部使用红黑树组织调度实体),实时rt的运行队列则为rt_rq(内部使用优先级bitmap+双向链表组织调度实体),此外内核对新增的dl实时调度策略也提供了运行队列dl_rq。

  linux学习视频网盘调度器用于判断接下来运行哪个进程。 内核支持不同的调度策略(完全公平调度,实时调度,在无事可做的时候调度空闲进程,即0号进程也叫swapper进程,idle进程),调度类使得能够以模块化的方法实现这些策略,即一个类的代码不需要与其他类的代码交互,当调度器被调用时,他会查询调度器类,得知接下来运行哪个进程。 线上linux网上

  1. 本网凡注明“稿件来源:本网原创”的所有作品。转载请必须同时注明本网名称及链接。

  2. 本页面为商业广告,内容为用户自行上传,本网不对该页面内容(包括但不限于文字、图片、视频)真实性和知识产权负责,如您认为该页面内容侵犯您的权益,请及时联系进行处理,不收取任何费用。

  3. 本网部分内容转载自其他媒体,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性。不承担此类作品侵权行为的直接责任及连带责任。


鲜花

握手

雷人

路过

鸡蛋

Archiver|手机版| 百度云会员 百度云会员账号 百度网盘会员账号 百度云会员分享  

GMT+8, 2024-9-20 10:54 , Processed in 0.061992 second(s), 16 queries .

返回顶部