易截截图软件、单文件、免安装、纯绿色、仅160KB

Mr. Process的一生-Linux内核的社会视角 (1)调度

Written by manio (http://blog.csdn.net/manio)
Linux内核是一个无比复杂的系统,要想看清大致的脉络也非易事。其实,可以把运行中的Linux想像成一个人类的社会,当中的进程就是社会中的人。人有生老病死,进程有创建、异常、终止。人有各种各样的财产,进程有对应的地址空间、设备等等。人被各种各样的东西限制着,被人管着,进程也是。内核无比巨大,从哪着手?我想,从进程的视角来看是个好办法。并且,在学习Linux内核的同时,类比人类社会来看,会有更深刻的印象,理解得更透彻。
本来也应该从进程的创建开始写的,但是最近在看调度的相关论文,就又把Linux调度的东西看了一下。所以,就先写调度相关的东西吧。
首先介绍与进程所在环境对应的人类场景:
这是一个公司,公司里有很多人(进程),每个人都有其对应的职称(优先级)。这个公司很奇怪,只有一张办公桌(CPU),在任意时刻,只能有一个人在工作(TASK_RUNNING正在运行状态)。其他人呢,要么在休息室时短暂地休息(对应TASK_RUNNING就绪状态),要么就在寝室Sleep(对应TASK_INTERRUPTABLE或TASK_UNINTERRUPTABLE),要么就是死人了,在停尸间(TASK_ZOMBIE)。是的,这是真的,这个公司就是个血汗工厂,干活累死了,就直接丢进停尸间,惨绝人寰!
以下是此公司的平面图:
图解:“推门”是单向的:比如连接工作室和太平间的是推门,职员只能从工作室走到太平间,不能从太平间走到工作室(这太吓人了)。“凹槽门”是双向的:比如连接工作室和休息室的门是凹槽门,职员可以走来走去。
时间片(time slice):这个公司的工资特别高,按工作的小时数计算。工作者得钱,不工作者不得钱。所以,所有的人都特想去办公桌那里工作,争着抢着要去。为了让大家都有机会去工作(避免有的人没钱拿,饿死,i.e. starve to death),所以公司出了条规定,每个人每次工作的时间不能超过公司分给自己的时间片(time slice)。时间片的大小由此人的职称决定。
职称(也就是内核中的priority):职称有两种,一种是静态职称(static priority),一种是动态职称(dynamic priority)。静态职称是先天的,由此人的老爸决定(富二代有先天优势!)。动态优先级是看在公司里的工作表现的。职称是很重要的东西,职称越高,你到办公桌上赚钱的机会越大。
默认时间片长点好还是短点好?
自然是不长不短好(世界上的事情都是这样)。如果太短了,比如说某职员时间片是1分钟(对应的Li


相关文档:

实战Linux Bluetooth编程 (七) SDP协议

Service Discovery Protocol(SDP)提供一种能力,让应用程序有方法发现哪种服务可用以及这种服务的特性。
服务发现协议(SDP或Bluetooth SDP)在蓝牙协议栈中对蓝牙环境中的应用程序有特殊的含意,发现哪个服务是可用的和确定这些可用服务的特征。SDP定义了bluetooth client发现可用bluetooth server服务和它们的特征的方法。 ......

Linux下的神奇指令——netcat


netcat
 就像 cat 
指令一樣,只是將簡單的 
cat 
功能完全「網路化」,好用與靈活的程度可說是很驚人,而在 
Top 100 Network Security Tools
 排行榜中還排行第四名呢!
netcat 除了 ......

linux下面定时


alarm
       如果不要求很精确的话,用 alarm() 和 signal() 就够了 
       unsigned int alarm(unsigned int seconds)      
       示例:
    &nbs ......

Linux下安装jdk&tomcat

1.下载jdk-6u2-linux-i586-rpm.bin
2. 在当前目录输入
sh jdk-6u2-linux-i586-rpm.bin
3.看到 安装程序在询问您是否尊守许可协议页面 ,回车,空格都可以,看完协议.
出现一行字:Do you aggree to the above license terms? [yes or no]
安装程序在问您是否愿意遵守刚才看过的许可协议。当然要同意了,输入"y" 或 " ......

Linux vi命令手册

vi是所有UNIX系统都会提供的屏幕编辑器,它提供了一个视窗设备,通过它可以编辑文件。当然,对UNIX系统略有所知的人,或多或少都觉得vi超级难用,但vi是最基本的编辑器,所以希望读者能好好把它学起来,以后在UNIX世界里必将畅行无阻、游刃有余,因为其他几种文本处理器并非UNIX标准配备。说不定别人的Linux机器没安装joe或 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号