当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: Linux2.6版本中的进程调度作了不小的改变。
 

 

    摘要:问题: asp/php等动态建站,往往出现访问量较大后出现网站访问故障问题,问题在哪呢? 通常网站有新闻栏目,假设一个网站新闻栏目建立在/news/目录下 ,通常都有一个显示某条纪录的item.asp?id=1234,用户访问某个连接时候,往往调用这个动态脚本文件,进行打开数据库连接、查找纪录。。。等一系列动作。并发10个人没问题,100个、1000个问题就来了,导致服务器压力增大。 但实际上,由......
 ·汇编教程2 by sssa2000    »显示摘要«
    摘要:汇编教程2 by sssa2000 和女朋友有矛盾了,还是电脑好,可以让我静心。 让我们开始把。上次用一个例子给大家一个模糊的概念,可能你并不是完全明白那个例子的来龙去脉,这没有关系,有个认识就可以了, 我觉得学习汇编最大的障碍是 书上的教法不适合初学者,即使是有基础的人学起来也有点迷糊,既然是编成当然要从实际入手,这次开始我们来一个例子热身,和上次那个差不多 ==================......


[初探linux2.6内核-进程调度][04.07.08]

“基础”域的“范围”将构成域层次结构的第一级.在smt情况下,将跨度所有的物理cpu,而每个组将有一个虚拟cpu. 【推荐阅读:XML Server与XML-enabl

linux2.6版本中的进程调度作了不小的改变.1.引入调度域概念每一个cpu都有一个“基本”的调度域(struct sched_domain).函数cpu_sched_domain(i)与宏this_sched_domain()用来表示可以使用的cpu域.域的层次结构均是通过->parent指针所指向的基础域而构建的.->parent指针要保证以null结束,而且应当为每个cpu分配域结构以便于cpu的增加.在每一个调度域的范围内都拥有几个cpu(存于->span中).调度域的范围意思是:“在各cpu之间达到负载的平衡”.一个域的范围必须不小于它的子域范围,而且cpu i的基础域范围至少为i.位于域层次结构最顶层的域的范围将覆盖系统中的所有cpu.每一个调度域都必须有一个或多个cpu组(struct sched_group),用->groups指针链接成一个环形.而这些组的cpumask在域范围内都必须是相同的.任意的两个组的cpumask交集必须为空集(即不相同).->groups指针所指向的组必须包含这个域所拥有的cpu.而当某些组被建立后,它们可能因为包含一些只读数据而被cpu所分享.在组之间会发生调度域的平衡操作.这个时候,每一个组将被当成一个整体.组的负载将被定义为其每一个cpu的负载总与.所以当组与组的负载不平衡时,将发生调度域的平衡操作,在组与组之间进行平衡.在kernel/sched.c中,rebalance_tick在每一个cpu上周期性的运行.这个函数在cpu的基础调度域内检查是否重新达到了平衡.如果是, 则将在那个域内运行load_balance.而rebalance_tick将接着检查父调度域(如果有的话),进而是父调度域的父调度域,如此下去.

linux 2.6内核为多程序提供了一种不同的途径,即numa(non uniform memory access).这种方法中,内存与处理器是相互连接的,但对于每一个处理器,某些内存是“关闭”的,而某些内存则“更远”.
...   下一页

 ·汇编教程4--学会解决问题    »显示摘要«
    摘要:汇编教程4--学会解决问题 最近真的有点忙,又是c#,又是java,robocode,又是win32asm,忙得不可开交了,不过教程不能耽误了,毕竟第一次写,有大家给我鼓励,很知足了。 不知道上一片你们看得怎么样?看不懂也没关系,慢慢体会,我最开始的时候就看的是一大堆的寄存器,标志位,什么都不懂,如们还花了很多时间的。 正题。 一、循环结构: 1 循环指令。 格式:loop 指令标号 功能:将寄存......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE