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

Linux中等待队列机制分析

 Linux中等待队列机制分析
 
什么是等待队列?
       在软件开发中任务经常由于某种条件没有得到满足而不得不进入睡眠状态,然后等待条件得到满足的时候再继续运行,进入运行状态。这种需求需要等待队列机制的支持。Linux中提供了等待队列的机制,该机制在内核中应用很广泛。
 
       在Linux内核中使用等待队列的过程很简单,首先定义一个wait_queue_head,然后如果一个task想等待某种事件,那么调用wait_event(等待队列,事件)就可以了。
 
Linux中等待队列的实现
       等待队列应用广泛,但是内核实现却十分简单。其涉及到两个比较重要的数据结构:
<!--[if !supportLists]-->1)        <!--[endif]-->__wait_queue_head,该结构描述了等待队列的链头,其包含一个链表和一个原子锁,结构定义如下:
struct __wait_queue_head {
              spinlock_t lock;                    /* 保护等待队列的原子锁 */
              struct list_head task_list;              /* 等待队列 */
};
<!--[if !supportLists]-->2)        <!--[endif]-->__wait_queue,该结构是对一个等待任务的抽象。每个等待任务都会抽象成一个wait_queue,并且挂载到wait_queue_head上。该结构定义如下:
struct __wait_queue {
       unsigned int flags;
       void *private;                       /* 通常指向当前任务控制块 */
       /* 任务唤醒操作方法,该方法在内核中提供,通常为autoremove_wake_function */
       wait_queue_func_t func;   &nb


相关文档:

linux系统裁剪

 说到裁减Linux,无非是为了减小磁盘占用或者是为了某些特定场合的应用(如嵌入式系统)。以RedHat 7.3为例,其最小安装仍然达到了300M,这不得不让人对一直号称小而全的Linux系统感到疑惑。
作为自己手中课题的一个铺垫,不久前我尝试了对Linux进行裁减,虽然没有达到预期的一张软盘大小,但结果也相当有吸引力。下 ......

[整理]Linux命令 复制文件和目录

复制文件和目录命令 cp
格式: cp [参数] 源文件或目录 目标文件或目录
说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。
常用的参数:
- a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。
- d 拷贝时保留链接。
- f 删除已经存在的目标 ......

linux 分段、分页机制

1.分段机制
80386的两种工作模式
  80386的工作模式包括实地址模式和虚地址模式(保护模式)。Linux主要工作在保护模式下。
分段机制
  在保护模式下,80386虚地址空间可达16K个段,每段大小可变,最大达4GB。
  从逻辑地址到线性地址的转换由80386分段机制管理。段寄存器CS、DS、ES、SS、FS或GS标识一个段 ......

linux 上电执行的第一条代码是在内存里吗?

摘自oldlinux:
上电执行的第一条代码是在内存里吗?
“访问的F000h : FFF0h是内存的地址还是存放bios的rom地址 ” 
  这个是由北桥内的一个寄存器设置的(具体的资料你可以去找一些芯片组的资料)。当北桥收到CPU外部的地址总线上的信号时,会根据这个寄存器内的值来决定是从内存里取内容还是把这个地 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号