易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : linux

Linux设备模型之input子系统详解

出处:http://ericxiao.cublog.cn/
一:前言
在键盘驱动代码分析的笔记中,接触到了input子系统.键盘驱动,键盘驱动将检测到的所有按键都上报给了input子系统。Input子系统是所有I/O设备驱动的中间层,为上层提供了一个统一的界面。例如,在终端系统中,我们不需要去管有多少个键盘,多少个鼠标。它只要从input子系统中去取对应的事件(按键,鼠标移位等)就可以了。今天就对input子系统做一个详尽的分析.
下面的代码是基于linux kernel 2.6.25.分析的代码主要位于kernel2.6.25/drivers/input下面.
二:使用input子系统的例子
在内核自带的文档Documentation/input/input-programming.txt中。有一个使用input子系统的例子,并附带相应的说明。以此为例分析如下:
#include <linux/input.h>
#include <linux/module.h>
#include <linux/init.h>
 
#include <asm/irq.h>
#include <asm/io.h>
 
static void button_interrupt(int irq, void *dummy, struct pt_regs *fp)
{
        input_report_key(&button_dev, BTN_1, inb(BUTTON_PORT) & 1);
    &nb ......

如何实现Linux文本模式下自动挂载光驱

如何实现Linux文本模式下自动挂载光驱
http://blog.csdn.net/yzlworld/archive/2009/06/29/4307476.aspx
mount是用来挂载文件系统的,可以在启动的时候挂载也可以在启动后挂载。在启动后挂载可以使用mount命令实现,要实现启动时自动挂载设备则需启动autofs服务就提供这种功能。该功能就像windows中的光驱自动打开功能,能够及时挂载动态加载的文件系统。免去我们手动挂在麻烦。要实现光驱,软盘等的动态自动挂载,需要进行相关的配置。具体配置方法如下:
1、修改/etc/auto.master,设置挂载点
格式:挂载集群点   配置文件
具体设置: /mnt       /etc/auto.misc
注:/etc/auto.misc中配置挂载项挂载在/mnt下。
2、配置文件的设置
       格式:
       相对挂载点        挂载参数     文件系统位置
       具体设置:
       cdrom      -fstype=iso9660, iocharset=cp936,ro :/dev/cdrom
 &nbs ......

如何实现Linux文本模式下自动挂载光驱

mount是用来挂载文件系统的,可以在启动的时候挂载也可以在启动后挂载。在启动后挂载可以使用mount命令实现,要实现启动时自动挂载设备则需启动autofs服务就提供这种功能。该功能就像windows中的光驱自动打开功能,能够及时挂载动态加载的文件系统。免去我们手动挂在麻烦。要实现光驱,软盘等的动态自动挂载,需要进行相关的配置。具体配置方法如下:
1、修改/etc/auto.master,设置挂载点
格式:挂载集群点   配置文件
具体设置: /mnt       /etc/auto.misc 
注:/etc/auto.misc中配置挂载项挂载在/mnt下。
2、配置文件的设置
       格式:
       相对挂载点        挂载参数     文件系统位置
       具体设置:
       cdrom      -fstype=iso9660, iocharset=cp936,ro :/dev/cdrom
       说明:上述设置的结果是将/dev/cdrom设备挂载到/mnt/cdrom上。
3、 ......

函数指针&回调函数&linux中的signal函数


1.
int (*func)();函数指针,指向的函数为空参数,返回整型;
2.
回调函数是一个程序员不能显式调用的函数;通过将回调函数的地址传给被调用者从而实现调用。
回调函数是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。
    void f();// 函数原型
上面的语句声明了一个函数,没有输入参数并返回void。那么函数指针的声明方法如下:
void (*) ();
    让我们来分析一下,左边圆括弧中的星号是函数指针声明的关键。另外两个元素是函数的返回类型(void)和由边圆括弧中的入口参数(本例中参数是空)。注意本例中还没有创建指针变量-只是声明了变量类型。目前可以用这个变量类型来创建类型定义名及用sizeof表达式获得函数指针的大小:
// 获得函数指针的大小
unsigned psize = sizeof (void (*) ());
// 为函数指针声明类型定义
typedef void (*pfv) ();
pfv是一个函数指针,它指向的函数没有输入参数,返回类行为void。使用这个类型定义名可以隐藏复杂的函数指针语法。
指针变量应该有一个变量名:
void (*p) (); //p是指向 ......

Linux上的虚拟化技术


虚拟化技术的方法, 架构和实现概览
级别: 中级
M. Tim Jones [mtj@mtjones.com], 顾问工程师, Emulex
原文: Virtual Linux
译: 赵珂 cn.zhaoke.com
http://blog.zhaoke.com/45.html
2006年12月29日
虚拟化技术的应用十分广泛. 当前虚拟化技术主要关注于服务器的虚拟化, 或在单个主机上寄存多个独立的操作系统. 本文首先介绍虚拟化技术的原理, 然后讨论多个虚拟化技术的实现方法. 另外介绍了一些其它的虚拟化技术, 比如Linux上操作系统级的虚拟化技术.
虚拟化把事物从一种形式改变为另一种形式. 计算机的虚拟化使单个计算机看起来像多个计算机或完全不同的计算机.
虚拟化技术也可以使多台计算机看起来像一台计算机. 这叫做服务器聚合(server aggregation)或网格计算(grid computing).
首先我们回顾一下虚拟化技术的历史.
虚拟化技术的历史
虚拟化技术不是一个新的主题; 实际上, 它已有40年的历史. 最早使用虚拟化技术的是IBM 7044计算机,
它是基于MIT(麻省理工学院)为IBM704计算机开发的分时系统CTSS(Compatible Time Sharing System),
和曼彻斯特大学的Atlas项目(世界最早的超级计算机之一), 首次使用了请求调页和系统管理程序调用.
硬件虚拟化
IBM早在1960 ......

ZZ: When Linux Runs Out of Memory (OOM killer)


When Linux Runs Out of Memory
http://linuxdevcenter.com/pub/a/linux/2006/11/30/linux-out-of-memory.html?page=1
Perhaps you rarely face it, but once you do, you surely know what's
wrong: lack of free memory, or Out of Memory (OOM). The results are
typical: you can no longer allocate more memory and the kernel kills a
task (usually the current running one). Heavy swapping usually
accompanies this situation, so both screen and disk activity reflect
this.
At the bottom of this problem lie other questions: how much memory
do you want to allocate? How much does the operating system (OS)
allocate for you? The basic reason of OOM is simple: you've asked for
more than the available virtual memory space. I say "virtual" because
RAM isn't the only place counted as free memory; any swap areas apply.
Exploring OOM ......
总记录数:5772; 总页数:962; 每页6 条; 首页 上一页 [705] [706] [707] [708] 709 [710] [711] [712] [713] [714]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号