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

linux 2.6源代码情景分析笔记之进程5

等待队列在内核中很多用途,尤其用在中断处理、进程同步及定时。等待队列实现了在事件上的条件等待:希望等待特定事件的进程把自己放进合适的等待队列,并放弃控制权。因此,等待队列表示一组睡眠的进程,当某一条件变为真时,由内核唤醒它们。
等待队列由双向链表实现,其元素包括指向进程描述符的指针。每个队列都有一个等待队列头,等待队列头是一个类型为wait_queue_head_t的数据结构。
struct __wait_queue_head {
        spinlock_t lock;
        struct list_head task_list;
};
typedef struct __wait_queue_head wait_queue_head_t;
等待队列由中断处理程序和主要内核函数修改。同步是通过等待队列头中的lock自旋锁达到的,task_list字段是等待进程链表的头。
等待队列链表中的元素类型为wait_queue_t:
struct __wait_queue {
        unsigned int flags;
#define WQ_FLAG_EXCLUSIVE       0x01
        struct task_struct * task;
        wait_queue_func_t func;
        struct list_head task_list;
};
每个元素代表一个睡眠进程,该进程等待某一事件的发生,它的描述符地址放在task字段中。task_list字段中包含的是指针,由这个指针把一个元素连接到等待相同时间的进程链表中。
有两种睡眠:互斥进程(等待队列元素的flags字段为1)由内核有选择地唤醒,而非互斥进程(flags数值为1)总是由内核在事件发生时唤醒。
#define __WAIT_QUEUE_HEAD_INITIALIZER(name) {                           \
        .lock           = SPIN_LOCK_UNLOCKED,                           \
        .task_list      = { &(name)


相关文档:

实战Linux Bluetooth编程(六) L2CAP编程实例

例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
 如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......

Linux Find 命令精通指南

作者:Sheryl Calish
简单介绍这一无处不在的命令的强大的方面以及混乱的方面。
2008 年 7 月发布
Linux find
命令是所有 Linux 命令中最有用的一个,同时也是最混乱的一个。它很难,因为它的语法与其他 Linux 命令的标准语法不同。但是,它很强大,因为它允许您按文件名、文件类型、用户甚至是时间戳查找文件。使用 ......

linux修改屏幕刷新率

1、先备份好:
  sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
  2、打开xorg.conf:
  sudo gedit /etc/X11/xorg.conf
  3、请找到以下一段在这改:
  Section "Monitor"
  Identifier "Generic Monitor"
  Option "DPMS"
  HorizSync 28-70
  VertRefr ......

linux目录架构

linux目录架构
/   根目录
/bin    常用的命令 binary file 的目錄
/boot   存放系统启动时必须读取的档案,包括核心 (kernel) 在内
     /boot/grub/menu.lst   GRUB设置
     /boot/vmlinuz   内核
 & ......

Linux中用rdate实现时间自动同步

 
                          Linux
中用
rdate
实现时间自动同步
原文地址:http://liuxh6.itpub.net/post/528/451628
在各种
linux
中都有
rdate
命令,只是一般很少有人 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号