• 约瑟夫问题的解法-良好接口的重要性

    本文用一个简单的例子来说明接口设计的重要性。使用的是Linux kernel中list_head,顺便说一句,如果你想使用复合模式组织你的对象,那么Linux kernel中的kobject结构是...

    放肆嘚寂寞只因爲你 2012-01-01 13:05:40阅读:3886
  • 转载- linux中$的用法

    我们先写一个简单的脚本,执行以后再解释各个变量的意义   # touch variable # vi variable   脚本内容如下:   #!/bin/sh echo "number:$#...

    爷捂着蛋嘲笑一切 2011-12-15 17:14:14阅读:447
  • oracle - table partitioning

    几个常用的oracle table partition用法: 1. table partitioning type: a) range partition b) hash partition...

    潇洒不放纵 2011-08-18 20:36:34阅读:702
  • linux2.6.36之后对工作队列的改进

    linux自从引入工作队列之后,越来越多的工作都交给了它,工作队列有什么优点?有进程上下文?可延迟?是的,这些都是它的优点,但是总不能因为它的这些有限的优势而将所有的工作都交给它来做吧,可是驱动或...

    花落_淚無聲 2011-01-05 17:03:00阅读:4566
  • 一个日志输出系统的设计

    本文介绍一个基于linux进程调度策略来调度的信息输出系统,多条信息可以显示多次,每次的显示时间也可以设置: 以下是头文件定义loglet.h: #include <pthread.h>...

    捂着心脏说疼 2010-12-11 20:58:00阅读:2557
  • 一个资源管理系统的设计--基于cgroup机制

    设计一个资源管理系统对于一个综合性的资源访问系统来说是十分必要的,而好的设计一定是不复杂的,甚至说是十分简单的,原因就是精简机构,消除冗余,或者说精兵简政在任何时候任何方面总是必要的,我们不希望管...

    青春的滋味 2010-11-03 20:38:00阅读:3465
  • LINQ Distinct without IEqualityComparer

    星期一, 17 八月 2009 22:11 by Richard Mason One annoying issue with the LINQ Distinct function is tha...

    农民范 2010-07-09 10:36:00阅读:499
  • 木马程序的信息存储位置

    将信息置于目前不使用的扩展字段或者在不和当前信息冲突的前提下将信息“挤”进当前字段,正如current->flags可以重用一样,比如,如果标准内核中已经定义个若干flag标志,比如run...

    小娘年少不无知 2010-02-09 22:31:00阅读:1881
  • linux底层内存管理--内核空间的伙伴系统

    linux内核的伙伴算法最大限度的减少了内存的碎片,其实应该说成是尽自己最大的努力减少了内存 的碎片。其思想就是将物理内存分成10个链表,每一个链表的元素代表一系列的连续页面,连续页面的数量随链表...

    浮生如斯 2010-02-09 22:28:00阅读:3230
  • kexec--快速重启linux

    linux几乎可以运行任何可以运行的东西,这好像是废话。其实这句话的意思是它可以将任何东西作为可以执行的映像来执行,内核既然也是一种elf映像,那么它当然是一种可执行的实体了。      l...

    咿呀咿呀 2010-02-09 22:19:00阅读:2609
  • busybox里的僵尸进程为何那么多

    busybox里面的僵尸进程很多是有目共睹的,为什么呢?这要从僵尸进程的概念说起,所谓僵尸进程实际上就是没有人回收的进程,什么也没有了,只剩下 task_struct这个空壳子了,task_st...

    酒醉三分醒 2010-02-09 22:13:00阅读:2824
  • linux内核网络协议栈实现中的几个问题

    1.关于sk_buff的链表组织 sk_buff 的next和prev指针用来将sk_buff连接成链表,但是具体哪些skb被连接在一起就要看当前的skb在哪一个层次了,并且skb中还有一个...

    牽強的扯著笑 2010-02-09 22:01:00阅读:3191
  • 页面的引用计数和get_user_pages

    (本文基于2.6.1代码,参考2.6.17代码)在linux内核中,懒惰的方式已经成了它的一种性格,几乎所有的资源都是用引用计数来管理的,只有到没有实体使用资源的时候也就是其引用计数为0的时候,...

    等你一生永不悔 2010-02-09 22:00:00阅读:4856
  • 2.6.29内核中对vmscan的一个改进

    主动释放本来就是不需要的,以往的限制自动扫描到end只是阻止了高端zone被过度扫描,然而阻止的不彻底,因为虽然kswap自动扫描不和主动扫描重合扫描高端zone了,但是如果有多个主动扫描内存的...

    只是一个笑话么 2010-02-09 21:57:00阅读:3786
  • TLB刷新的深入理解(续)

    有两点注意:1.有些体系结构上tlb不命中和tlb实效是两回事,不命中的意思是tlb表项的有效位为1,存在位为0,而tlb无效是有效位为0,存在位无意义,当tlb无效的时候,预取逻辑就要查页表,...

    零碎記忆 2010-02-09 21:52:00阅读:5071
  • kdump转储的内核实现

    前面一篇文章介绍了kexec和kdump的思想,本文着重讲它们的另一个方面,就是kdump到底是如何转储垮掉内核的内存映像的。首先定义一个链表,它很重要。 static LIST_HEAD(v...

    少年你是谁的英雄 2010-02-09 21:20:00阅读:4126
  • slab着色--一种必然认输的妥协

    在最新的linux2.6.28内核当中已经不见slab着色的踪迹了,记得研究2.6.9的时候,我还为理解slab着色大伤脑筋,而实际上我当时根本没有理解它的设计初衷以及最终的效果,只是把它当成了一...

    絢爛不完一夏 2010-02-09 21:13:00阅读:8175
  • linux2.6.28内核对bio完成通知的改进--集中走向分离的另一个例子

    本文介绍一个例子,linux软中断是谁触发谁执行,这有点各司其职的意思,可是到了触发软中断的时候往往已经丢失触发这个“触发软中断”事件的源头,因此这种各司其职不是那么完善,于是2.6.28在bi...

    財大氣粗 2010-02-09 21:11:00阅读:2967
  • 链表的设计--单链表逆序开始

    这个问题仅仅可以考察人们对c语言特别是指针的熟悉程度,在实际编程中没有任何的意义,单链表逆序无论如何都要花费大量的时间,如果非要这么做为何不用空间来换时间,比如用双链表,然而如果你使用了双链表的...

    粉色味蕾的悲伤 2010-02-09 20:42:00阅读:3454
  • linux内核的syslets补丁

    linux的系统调用及其丰富,但是却都是同步的,虽然2.6内核新增加了异步io,但是对于套接字等却以及非直接读写io却不可用,于是开发者就有了一 个想法,既然一些任务可以由内核的xxlet或者内...

    无地自容 2010-02-09 20:29:00阅读:1511
  • panic与BUG_ON

    内核在发生严重错误的时候要“X屏”一下,以windows为例就是蓝屏,而linux却是黑屏,windows仅仅提供一个出错码和对应地址,十分难以 理解,而linux却可能提供整个寄存器和堆栈,它...

    玛尼玛尼轰 2010-02-09 20:24:00阅读:5216
  • 关于linux内核调试的实现

    linux提供了很多调试工具,比如我喜欢用的Systemtap,用起来很方便,几乎不用大动干戈就可以洞察到内核的一些很重要的行为,这一切是怎么做到的呢?本文带你在内核调试接口的冰山下面走一遭。...

    何必_委屈求全 2010-02-09 20:16:00阅读:3556
  • 谈谈linux2.6内核的驱动框架

    linux支持的设备越来越多,种类越来越多,设备本身的功能也是越来越复杂,而操作系统内核必须有一种很有效的方式来管理这些设备,最起码的要控制它们的开启关闭,更进一步要控制它们进行协同工作,实际上...

    小好要活的傲而不娇 2010-02-09 20:15:00阅读:2131
  • linux内核分析--异步io(一)

    linux2.6的内核增加了异步io,这个改动可以体现内核架构的重要性,连同epoll的内核实现,提升了io性能。碰巧的是,这两个特性都源自于同 一个本源,那就是睡眠队列的唤醒函数中增加了回调函...

    心诚则零 2010-02-09 18:15:00阅读:3214
  • online游戏服务器架构—用户登录数据组织

    sprite_t类型的数据结构是核心数据结构,每一个登录用户对应一个,它的初始化在用户登录的时候,此后一直到用户退出或者离线一直保存在系统内存当中,在此过程中该sprite_t数据结构被保存在两...

    忆搁浅 2010-02-09 17:48:00阅读:1625
  • online游戏服务器架构--网络架构

    启动:父进程启动;子进程启动;网络架构。 每个父进程携带N个子进程,子进程负责处理业务逻辑和其它数据,而父进程只是将客户端的请求路由到各个子进程,路由的策略非常简单,父进程将请求包按照轮流的法...

    玛尼玛尼哄 2010-02-09 17:47:00阅读:2710
  • linux新旧电源管理

    2.4内核的电源管理: asmlinkage long sys_reboot(int magic1, int magic2, unsigned int cmd, void * arg)...

    彩妝_垂淚 2010-02-09 17:40:00阅读:1994
  • linux工作队列和异步io

    工作队列: 内核中所有的工作队列都是由helper_wq工作队列创建的,那么helper_wq是谁创建的呢?答案是直接执行的。看一下代码: static __init int help...

    默不作聲 2010-02-09 17:39:00阅读:2704
  • linux驱动杂谈1

    前段时间看了linux驱动框架,现在有个具体的scsi驱动分层结构,自然在理解了整个驱动大框架以后,这个曾经的庞然大物就变得很简单了,首先: static int __init init_s...

    放肆嘚寂寞只因爲你 2010-02-09 17:38:00阅读:2814
  • CFS调度器中新进程创建之后的事情---任何事情都是一种权衡(续)

    linux中的进程是个很重要的概念,这个就不必多说了,linux中进程创建的fork机制继承了unix的基因,是操作系统中最重要的东西,fork中的写时复制机制是fork的精髓,是进程机制的精髓...

    小娘年少不无知 2010-02-09 17:31:00阅读:3437
搜索
文章归档